Цитата ul9:
Редактировать только тут… »
|
Да.
Цитата ul9:
А можно выводить не пути, а названия в кнопках(Красный, Зелёный и т.д.)? »
|
Для данного алгоритма — нет. Тут название фактически является командной строкой для исполнения. Но можно сменить алгоритм.
Цитата ul9:
А ещё лучше не названия, а просто пустые цветные кнопки (#00FF00, #FFFFFF...) »
|
Пробуйте другой алгоритм:
читать дальше »
Код:
![Выделить весь код](images/misc/selectcode.png)
<html id="appSampleScriptRunner">
<head>
<meta charset="windows-1251">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
<title>Sample Script Runner</title>
<hta:Application
Id = "appSampleScriptRunner"
Icon = "%SystemRoot%\System32\wscript.exe"
ApplicationName = "Sample Script Runner"
Border = "normal"
BorderStyle = "normal"
Caption = "yes"
ContextMenu = "no"
InnerBorder = "yes"
MaximizeButton = "yes"
MinimizeButton = "yes"
Navigable = "no"
Scroll = "auto"
ScrollFlat = "no"
Selection = "no"
ShowInTaskbar = "yes"
SingleInstance = "yes"
SysMenu = "yes"
Version = "1.1"
WindowState = "normal"
/>
<style type="text/css">
body {
font: x-small Verdana, Arial, sans-serif;
color: WindowText;
background-color: ButtonFace;
}
</style>
<script language="VBScript">
Option Explicit
Dim objDictionary
'==========================================================================
Sub Window_OnLoad
Dim strKey
Dim objHTMLElement
For Each strKey In objDictionary.Keys
Set objHTMLElement = document.createElement("div")
With objHTMLElement
.id = strKey
.title = Replace(objDictionary.Item(strKey), " /", vbCrLf & " /")
With .style
.textAlign = "left"
.borderWidth = "thick"
.borderStyle = "outset"
.margin = "0.5em"
.padding = "0.5em"
.backgroundColor = strKey
End With
.onclick = GetRef("OnClickButtonRunScript")
.onMouseOut = GetRef("OnMouseOut")
.onMouseOver = GetRef("OnMouseOver")
End With
document.body.appendChild objHTMLElement
objHTMLElement.appendChild document.createTextNode(objDictionary.Item(strKey))
Next
With window
.resizeTo tagBody.scrollWidth + 25, tagBody.scrollHeight + 32
.moveTo (.screen.availWidth - tagBody.offsetWidth) \ 2, (.screen.availHeight - tagBody.offsetHeight) \ 2
End With
End Sub
'==========================================================================
'==========================================================================
Sub OnClickButtonRunScript()
With CreateObject("WScript.Shell")
MsgBox objDictionary.Item(window.event.srcElement.id)
'.Run objDictionary.Item(window.event.srcElement.id)
End With
End Sub
'==========================================================================
'==========================================================================
Sub OnMouseOut()
With window.event.srcElement
.style.color = "WindowText"
End With
End Sub
'==========================================================================
'==========================================================================
Sub OnMouseOver()
With window.event.srcElement
.style.color = "Yellow"
End With
End Sub
'==========================================================================
Set objDictionary = CreateObject("Scripting.Dictionary")
With objDictionary
.Add "Red", "cscript.exe //nologo ""c:\My Scripts\Script.vbs"" /FolderForScan:""E:\Песочница\0001"" /FileExtension:""htm"" /FileWhatFind:""E:\Песочница\01\Найти это.txt"" /FileReplaceBy:""E:\Песочница\01\заменить этим.txt"""
.Add "Green", "cscript.exe //nologo ""c:\My Scripts\Script.vbs"" /FolderForScan:""E:\Песочница\0002"" /FileExtension:""htm"" /FileWhatFind:""E:\Песочница\02\Найти это.txt"" /FileReplaceBy:""E:\Песочница\02\заменить этим.txt"""
.Add "Blue", "cscript.exe //nologo ""c:\My Scripts\Script.vbs"" /FolderForScan:""E:\Песочница\0003"" /FileExtension:""htm"" /FileWhatFind:""E:\Песочница\03\Найти это.txt"" /FileReplaceBy:""E:\Песочница\03\заменить этим.txt"""
.Add "SpringGreen", "cscript.exe //nologo ""c:\My Scripts\Script.vbs"" /FolderForScan:""E:\Песочница\0003"" /FileExtension:""htm"" /FileWhatFind:""E:\Песочница\03\Найти это.txt"" /FileReplaceBy:""E:\Песочница\03\заменить этим.txt"""
.Add "DarkSlateBlue", "cscript.exe //nologo ""c:\My Scripts\Script.vbs"" /FolderForScan:""E:\Песочница\0003"" /FileExtension:""htm"" /FileWhatFind:""E:\Песочница\03\Найти это.txt"" /FileReplaceBy:""E:\Песочница\03\заменить этим.txt"""
.Add "#CFCFF0", "cscript.exe //nologo ""c:\My Scripts\Script.vbs"" /FolderForScan:""E:\Песочница\0003"" /FileExtension:""htm"" /FileWhatFind:""E:\Песочница\03\Найти это.txt"" /FileReplaceBy:""E:\Песочница\03\заменить этим.txt"""
End With
</script>
</head>
<body id="tagBody" scroll="auto">
</body>
</html>
Как и в предыдущем, для исполнения — закомментировать «MsgBox»:
Код:
![Выделить весь код](images/misc/selectcode.png)
MsgBox objDictionary.Item(window.event.srcElement.id)
и раскомментировать «.Run»:
Код:
![Выделить весь код](images/misc/selectcode.png)
'.Run objDictionary.Item(window.event.srcElement.id)