ну может я чета пропустил, эту таблицу я сам написькал
» Программирование "удобняшек" на VBScript
Цитата:
1048576 - арабское окно еще для слева направо
А симитские окна то зачем?
Добавлено:
Цитата:
ну может я чета пропустил, эту таблицу я сам написькал
до тебя ее мелкософт отписюнявил в одном из своих доков
для полноты информации. вот чета так и не нашел как справку обрабатывать. не наешь?
Цитата:
не наешь?
эээээ, ты это мне? если меня, то поясни
Цитата:
вот чета так и не нашел как справку обрабатывать.
ну как в вбс скрипте обрабатывать событие - нажатие кнопки справка
Цитата:
ну как в вбс скрипте обрабатывать событие - нажатие кнопки справка
если просто событие, то Click (да это ты и сам знаешь) или чего? нажав пимпу должна справка вызываться?
ну чтоб при нажатии кнопки справка справка открывалась
Цитата:
ну чтоб при нажатии кнопки справка справка открывалась
На скидку как-то так:
Код: Set objShell = CreateObject("WScript.Shell")
strHelp="%systemroot%\Help\ntcmds.chm"
<кнопка>.Click = objShell.Run strHelp, 0, False
Сказать по-правде, интересно было разрулить на vbs'ках тему открытия файлов. С другой стороны это более напоминает извращение в стиле "а я умею вот так". Но на всяк товар есть свой купец (или чего там можно подобрать в рифму?) Итак, вот как я решил задачку открытия файла (необходимое подправлять самому):
Код: 'Объявляем константы диалогового окна
Const wshYes = 6
Const wshNo = 7
Const wshYesNoDialog = 4
Const wshQuestionMark = 32
'Создаем экземпляры объектов, которыми будем
'оперировать
Set objShell = CreateObject("WScript.Shell")
Set objDialog = CreateObject("UserAccounts.CommonDialog")
'Настраиваем диалоговые окна на вкус и цвет
intResult = objShell.Popup("Открыть файл справки или чего?", _
10, "Жду приказаний", wshYesNoDialog + wshQuestionMark)
objDialog.Filter = "Скомпилированный HTML-файл правки|*.chm"
objDialog.InitialDir = "%systemroot%\Help"
intOpen = objDialog.ShowOpen
'Вешаем обработчики на пимпы основного...
If intResult = wshYes Then
'и дочернего окна(окно открытия файла справки)
If intOpen = 1 Then
'Если оперейшн прошел куцо, значит все ОК
WScript.Echo objDialog.FileName
Else
'иначе захлопываем дочернее окно
WScript.Quit
End If
Else
WScript.Quit
End If
Код: 'Объявляем константы диалогового окна
Const wshYes = 6
Const wshNo = 7
Const wshYesNoDialog = 4
Const wshQuestionMark = 32
'Создаем экземпляры объектов, которыми будем
'оперировать
Set objShell = CreateObject("WScript.Shell")
Set objDialog = CreateObject("UserAccounts.CommonDialog")
'Настраиваем диалоговые окна на вкус и цвет
intResult = objShell.Popup("Открыть файл справки или чего?", _
10, "Жду приказаний", wshYesNoDialog + wshQuestionMark)
objDialog.Filter = "Скомпилированный HTML-файл правки|*.chm"
objDialog.InitialDir = "%systemroot%\Help"
intOpen = objDialog.ShowOpen
'Вешаем обработчики на пимпы основного...
If intResult = wshYes Then
'и дочернего окна(окно открытия файла справки)
If intOpen = 1 Then
'Если оперейшн прошел куцо, значит все ОК
WScript.Echo objDialog.FileName
Else
'иначе захлопываем дочернее окно
WScript.Quit
End If
Else
WScript.Quit
End If
ADGJMPTW009
Код: strFldr = WScript.Arguments.Item(0)
intDays = Int(WScript.Arguments.Item(1))
Set fso = CreateObject("Scripting.FileSystemObject")
DelOld strFldr, intDays
Function DelOld(sFldr, iDays)
Dim dir, fls, sbf, itm
Set dir = fso.GetFolder(sFldr)
Set fls = dir.Files
Set sbf = dir.SubFolders
For Each itm In fls
If DateDiff("d", itm.DateLastModified, Now) > iDays Then
WScript.Echo itm.Path
itm.Attributes = 0
itm.Delete
End If
Next
For Each itm In sbf
DelOld itm.Path, iDays
If itm.Size = 0 Then
itm.Attributes = 0
itm.Delete
End If
Next
End Function
Код: strFldr = WScript.Arguments.Item(0)
intDays = Int(WScript.Arguments.Item(1))
Set fso = CreateObject("Scripting.FileSystemObject")
DelOld strFldr, intDays
Function DelOld(sFldr, iDays)
Dim dir, fls, sbf, itm
Set dir = fso.GetFolder(sFldr)
Set fls = dir.Files
Set sbf = dir.SubFolders
For Each itm In fls
If DateDiff("d", itm.DateLastModified, Now) > iDays Then
WScript.Echo itm.Path
itm.Attributes = 0
itm.Delete
End If
Next
For Each itm In sbf
DelOld itm.Path, iDays
If itm.Size = 0 Then
itm.Attributes = 0
itm.Delete
End If
Next
End Function
Подсобите с циклом на вбс
необходимо оптимизировать скрипт (телнетилка)
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "cmd"
WScript.Sleep 100
WshShell.AppActivate "C:\Windows\system32\cmd.exe"
WScript.Sleep 100
WshShell.SendKeys "telnet 192.168.1.1{ENTER}" (тут заместо ИП нужна переменная)
WScript.Sleep 4200
WshShell.SendKeys "exit{ENTER}"
необходимо чтоб скрипт в цикле обходил нужные ИП (заданные руками в массиве) 192.168.1.1, 192.168.1.2,192.168.1.3, итд
необходимо оптимизировать скрипт (телнетилка)
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "cmd"
WScript.Sleep 100
WshShell.AppActivate "C:\Windows\system32\cmd.exe"
WScript.Sleep 100
WshShell.SendKeys "telnet 192.168.1.1{ENTER}" (тут заместо ИП нужна переменная)
WScript.Sleep 4200
WshShell.SendKeys "exit{ENTER}"
необходимо чтоб скрипт в цикле обходил нужные ИП (заданные руками в массиве) 192.168.1.1, 192.168.1.2,192.168.1.3, итд
AMuHb
Код: [no]
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "cmd"
WScript.Sleep 100
WshShell.AppActivate "C:\Windows\system32\cmd.exe"
WScript.Sleep 100
ips=Array("192.168.1.1", "192.168.1.2")
for each ip in ips
WshShell.SendKeys "telnet " & ip & "{ENTER}"
WScript.Sleep 4200
WshShell.SendKeys "exit{ENTER}"
WScript.Sleep 1000
next
[/no]
Код: [no]
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "cmd"
WScript.Sleep 100
WshShell.AppActivate "C:\Windows\system32\cmd.exe"
WScript.Sleep 100
ips=Array("192.168.1.1", "192.168.1.2")
for each ip in ips
WshShell.SendKeys "telnet " & ip & "{ENTER}"
WScript.Sleep 4200
WshShell.SendKeys "exit{ENTER}"
WScript.Sleep 1000
next
[/no]
2 smirnvlad Благодарю!
Добрый день. кто бы смог написать скрип который при удачном пинге выполнял бы определенную команду, как только комп перестает быть доступен(выключается) выполняется другая программа. В сети два комп, главный и ноут. На главном периодически запускается торрент который отъедает весь канал. В наличии есть скрипт который следит за определенный процессом( в данном случае это опера) и как только этот процесс найдет выполняется команда для снижения скорости. Как только выключается опера выполняется другая команда для восстановления. Можно ли в этот скрипт дописать строки чтоб кроме как слежения за процессом было слежением и за доступностью сетевого комп. Вот содержимое скрипта.
Код: 'Версия 1.5 (Final)
'Настройки'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Const InstallPath = "C:\Program Files\uTorrent\" ' - путь к папке, где лежит "utspeed.exe" [Str]
Public Const MonitorProcess = "opera.exe" ' - название отслеживаемого процесса [Str]
Public Const Mode = 0 ' - режимы: 0 - лимиты, 1 - расписание, 2 - ipfilter [0/1/2]
Public Const FileNameOn = "UT Limiter [on].vbs" ' - имя файла при включенном скрипте [Str]
Public Const FileNameOff = "UT Limiter [off].vbs" ' - имя файла при выключенном скрипте [Str]
Public Const DownloadDefault = 60 ' - нормальная скорость скачки [кб/c]
Public Const UploadDefault = 60 ' - нормальная скорость отдачи [кб/c]
Public Const DownloadLimit = 5 ' - ограничение скорости скачки при обнаруж. процесса [кб/c]
Public Const UploadLimit = 20 ' - ограничение скорости отдачи при обнаруж. процесса [кб/c]
Public Const IdleTime = 15 ' - время простоя до частичного восстановл. скорости [сек.]
Public Const IdleDownSpeed = 50 ' - скорость скачки во время простоя [кб/c]
Public Const IdleUpSpeed = 50 ' - скорость отдачи во время простоя [кб/c]
Public Const AwayTime = 50 ' - время отсутствия до полного восстановл. скорости [сек.]
Public Const AwayDownSpeed = 50 ' - скорость скачки во время отсутствия [кб/c]
Public Const AwayUpSpeed = 50 ' - скорость отдачи во время отсутствия [кб/c]
'Инициализация'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
IsLimited = 2
Set objShell = CreateObject("Shell.Application")
Set Fso = CreateObject("Scripting.FileSystemObject")
Set f = Fso.GetFile(Wscript.ScriptFullName)
Set oAutoIt = WScript.CreateObject("AutoItX3.Control")
If Fso.FileExists(InstallPath & "utspeed.exe") = false then
Msgbox "Сначала укажите путь к папке! ", vbInformation + vbOKOnly, "UT Limiter"
ExitScript
End if
If f.Name = FileNameOn then
ExitScript
else
f.Name = FileNameOn
End if
'Мониторинг''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Do
If oAutoIt.ProcessExists(MonitorProcess) then
IsLimited = SetLimitsTrue(IsLimited)
else
IsLimited = SetLimitsFalse(IsLimited)
End if
If Fso.FileExists(FileNameOn) = false then
IsLimited = SetLimitsFalse(IsLimited)
ExitScript
End if
PrevMpos = 0
Do while oAutoIt.ProcessExists(MonitorProcess) and oAutoIt.ProcessExists("utorrent.exe")
If Fso.FileExists(FileNameOn) = false then
IsLimited = SetLimitsFalse(IsLimited)
ExitScript
End if
CurMpos = oAutoIt.MouseGetPosX
StartTime = Timer
Do while CurMpos = PrevMpos
If Timer - StartTime > IdleTime then
IsLimited = SetIdleLimits(IsLimited)
End if
If Timer - StartTime > AwayTime then
IsLimited = SetAwayLimits(IsLimited)
End if
Wscript.Sleep 200
CurMpos = oAutoIt.MouseGetPosX
Loop
If IsLimited = 3 or IsLimited = 4 then
IsLimited = SetLimitsTrue(IsLimited)
End if
PrevMpos = CurMpos
Wscript.Sleep 500
Loop
Wscript.Sleep 500
Loop
'Функции'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function SetLimitsTrue (IsLimited)
If IsLimited <> 1 and Mode = 0 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/max_dl_rate " & DownloadLimit & " /max_ul_rate " & UploadLimit, InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 1
End if
If IsLimited <> 1 and Mode = 1 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/sched_enable 1", InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 1
End if
If IsLimited <> 1 and Mode = 2 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/ipfilter.enable 1", InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 1
End if
SetLimitsTrue = IsLimited
End Function
Function SetLimitsFalse (IsLimited)
If IsLimited <> 0 and Mode = 0 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/max_dl_rate " & DownloadDefault & " /max_ul_rate " & UploadDefault, InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 0
End if
If IsLimited <> 0 and Mode = 1 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/sched_enable 0", InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 0
End if
If IsLimited <> 0 and Mode = 2 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/ipfilter.enable 0", InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 0
End if
SetLimitsFalse = IsLimited
End Function
Function SetIdleLimits (IsLimited)
If IsLimited <> 3 and IsLimited <> 4 and Mode = 0 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/max_dl_rate " & IdleDownSpeed & " /max_ul_rate " & IdleUpSpeed, InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 3
End if
SetIdleLimits = IsLimited
End Function
Function SetAwayLimits (IsLimited)
If IsLimited <> 4 and Mode = 0 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/max_dl_rate " & AwayDownSpeed & " /max_ul_rate " & AwayUpSpeed, InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 4
End if
If IsLimited <> 4 and Mode = 1 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/sched_enable 0", InstallPath
IsLimited = 4
End if
If IsLimited <> 4 and Mode = 2 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/ipfilter.enable 0", InstallPath
IsLimited = 4
End if
SetAwayLimits = IsLimited
End Function
Function ExitScript
on error resume next
f.Name = FileNameOff
Wscript.Quit
End Function
Код: 'Версия 1.5 (Final)
'Настройки'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Public Const InstallPath = "C:\Program Files\uTorrent\" ' - путь к папке, где лежит "utspeed.exe" [Str]
Public Const MonitorProcess = "opera.exe" ' - название отслеживаемого процесса [Str]
Public Const Mode = 0 ' - режимы: 0 - лимиты, 1 - расписание, 2 - ipfilter [0/1/2]
Public Const FileNameOn = "UT Limiter [on].vbs" ' - имя файла при включенном скрипте [Str]
Public Const FileNameOff = "UT Limiter [off].vbs" ' - имя файла при выключенном скрипте [Str]
Public Const DownloadDefault = 60 ' - нормальная скорость скачки [кб/c]
Public Const UploadDefault = 60 ' - нормальная скорость отдачи [кб/c]
Public Const DownloadLimit = 5 ' - ограничение скорости скачки при обнаруж. процесса [кб/c]
Public Const UploadLimit = 20 ' - ограничение скорости отдачи при обнаруж. процесса [кб/c]
Public Const IdleTime = 15 ' - время простоя до частичного восстановл. скорости [сек.]
Public Const IdleDownSpeed = 50 ' - скорость скачки во время простоя [кб/c]
Public Const IdleUpSpeed = 50 ' - скорость отдачи во время простоя [кб/c]
Public Const AwayTime = 50 ' - время отсутствия до полного восстановл. скорости [сек.]
Public Const AwayDownSpeed = 50 ' - скорость скачки во время отсутствия [кб/c]
Public Const AwayUpSpeed = 50 ' - скорость отдачи во время отсутствия [кб/c]
'Инициализация'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
IsLimited = 2
Set objShell = CreateObject("Shell.Application")
Set Fso = CreateObject("Scripting.FileSystemObject")
Set f = Fso.GetFile(Wscript.ScriptFullName)
Set oAutoIt = WScript.CreateObject("AutoItX3.Control")
If Fso.FileExists(InstallPath & "utspeed.exe") = false then
Msgbox "Сначала укажите путь к папке! ", vbInformation + vbOKOnly, "UT Limiter"
ExitScript
End if
If f.Name = FileNameOn then
ExitScript
else
f.Name = FileNameOn
End if
'Мониторинг''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Do
If oAutoIt.ProcessExists(MonitorProcess) then
IsLimited = SetLimitsTrue(IsLimited)
else
IsLimited = SetLimitsFalse(IsLimited)
End if
If Fso.FileExists(FileNameOn) = false then
IsLimited = SetLimitsFalse(IsLimited)
ExitScript
End if
PrevMpos = 0
Do while oAutoIt.ProcessExists(MonitorProcess) and oAutoIt.ProcessExists("utorrent.exe")
If Fso.FileExists(FileNameOn) = false then
IsLimited = SetLimitsFalse(IsLimited)
ExitScript
End if
CurMpos = oAutoIt.MouseGetPosX
StartTime = Timer
Do while CurMpos = PrevMpos
If Timer - StartTime > IdleTime then
IsLimited = SetIdleLimits(IsLimited)
End if
If Timer - StartTime > AwayTime then
IsLimited = SetAwayLimits(IsLimited)
End if
Wscript.Sleep 200
CurMpos = oAutoIt.MouseGetPosX
Loop
If IsLimited = 3 or IsLimited = 4 then
IsLimited = SetLimitsTrue(IsLimited)
End if
PrevMpos = CurMpos
Wscript.Sleep 500
Loop
Wscript.Sleep 500
Loop
'Функции'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function SetLimitsTrue (IsLimited)
If IsLimited <> 1 and Mode = 0 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/max_dl_rate " & DownloadLimit & " /max_ul_rate " & UploadLimit, InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 1
End if
If IsLimited <> 1 and Mode = 1 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/sched_enable 1", InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 1
End if
If IsLimited <> 1 and Mode = 2 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/ipfilter.enable 1", InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 1
End if
SetLimitsTrue = IsLimited
End Function
Function SetLimitsFalse (IsLimited)
If IsLimited <> 0 and Mode = 0 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/max_dl_rate " & DownloadDefault & " /max_ul_rate " & UploadDefault, InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 0
End if
If IsLimited <> 0 and Mode = 1 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/sched_enable 0", InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 0
End if
If IsLimited <> 0 and Mode = 2 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/ipfilter.enable 0", InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 0
End if
SetLimitsFalse = IsLimited
End Function
Function SetIdleLimits (IsLimited)
If IsLimited <> 3 and IsLimited <> 4 and Mode = 0 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/max_dl_rate " & IdleDownSpeed & " /max_ul_rate " & IdleUpSpeed, InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 3
End if
SetIdleLimits = IsLimited
End Function
Function SetAwayLimits (IsLimited)
If IsLimited <> 4 and Mode = 0 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/max_dl_rate " & AwayDownSpeed & " /max_ul_rate " & AwayUpSpeed, InstallPath
oAutoIt.ProcessWaitClose "utspeed.exe"
IsLimited = 4
End if
If IsLimited <> 4 and Mode = 1 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/sched_enable 0", InstallPath
IsLimited = 4
End if
If IsLimited <> 4 and Mode = 2 and oAutoIt.ProcessExists("utorrent.exe") then
objShell.ShellExecute "utspeed.exe", "/ipfilter.enable 0", InstallPath
IsLimited = 4
End if
SetAwayLimits = IsLimited
End Function
Function ExitScript
on error resume next
f.Name = FileNameOff
Wscript.Quit
End Function
Есть .js скрипт запускающий блокнот в скрытом виде
Код: var WSHShell = WScript.CreateObject("WScript.Shell");
WSHShell.Run("notepad",0);
Код: var WSHShell = WScript.CreateObject("WScript.Shell");
WSHShell.Run("notepad",0);
king_stiven
[more]
передает все параметры, но приходится все заключать в кавычки
Код: [no]
fn = "1 1 2.bat"
u = new Array();
for (var i=0; i<WScript.Arguments.Count(); i++) u[u.length] = WScript.Arguments.Item(i);
p = "\"" + u.join("\" \"") + "\"";
var WSHShell = WScript.CreateObject("WScript.Shell");
WSHShell.Run("\"" + fn + "\" " + p ,0);
[/no]
[more]
передает все параметры, но приходится все заключать в кавычки
Код: [no]
fn = "1 1 2.bat"
u = new Array();
for (var i=0; i<WScript.Arguments.Count(); i++) u[u.length] = WScript.Arguments.Item(i);
p = "\"" + u.join("\" \"") + "\"";
var WSHShell = WScript.CreateObject("WScript.Shell");
WSHShell.Run("\"" + fn + "\" " + p ,0);
[/no]
Просьба посмотреть скрипт [more]
strComputer = "."
BuferFile = "c:\bufer.txt"
Count = 0
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService. _
ExecQuery("Select * from CIM_DataFile where (Extension = 'lsp') or (Extension = 'mnl')")
For Each objFile in colFiles
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oLogFile= oFSO.OpenTextFile(objFile.Name)
Set BufFile= oFSO.CreateTextFile(BuferFile,true)
sLogLine=""
While (Not (oLogFile.AtEndOfStream))and(sLogLine<>"(setq flagx t)")
sLogLine = oLogFile.ReadLine
if sLogLine<>"(setq flagx t)" Then
BufFile.WriteLine sLogLine
end if
Wend
oLogFile.Close
BufFile.Close
If sLogLine="(setq flagx t)" Then
oFSO.DeleteFile(objFile.Name)
oFSO.CopyFile BuferFile,objFile.Name,True
Count=Count+1
End if
oFSO.DeleteFile(BuferFile)
Next
Set colFiles = objWMIService. _
ExecQuery("Select * from CIM_DataFile where (Extension = 'mnr') or (Extension = 'mnc') or (Extension = 'mns')")
For Each objFile in colFiles
Set oFSO = CreateObject("Scripting.FileSystemObject")
oFSO.DeleteFile(objFile.Name)
Next
Set colFiles = objWMIService. _
ExecQuery("Select * from CIM_DataFile where (Extension = 'lsp') or (Extension = 'mnl')")
For Each objFile in colFiles
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oLogFile= oFSO.OpenTextFile(objFile.Name)
Set BufFile= oFSO.CreateTextFile(BuferFile,true)
sLogLine=""
While (Not (oLogFile.AtEndOfStream))and(sLogLine<>"(setq flagx t)")
sLogLine = oLogFile.ReadLine
if sLogLine<>"(setq flagx t)" Then
BufFile.WriteLine sLogLine
end if
Wend
oLogFile.Close
BufFile.Close
If sLogLine="(setq flagx t)" Then
oFSO.DeleteFile(objFile.Name)
oFSO.CopyFile BuferFile,objFile.Name,True
Count=Count+1
End if
oFSO.DeleteFile(BuferFile)
Next
'If Count>0 Then
WScript.Echo "?ылечено " & Count & " файлов"
'End If[/more]
Скрипт взят из сообщения http://forum.dwg.ru/showpost.php?p=326749&postcount=30
и борется протиив вируса в AutoCAD.
Проблема: в Windows 7 32 бит выдает ошибку: неверный символ или аргумент (пишу по памяти) в строке 17, позиция 8.
strComputer = "."
BuferFile = "c:\bufer.txt"
Count = 0
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService. _
ExecQuery("Select * from CIM_DataFile where (Extension = 'lsp') or (Extension = 'mnl')")
For Each objFile in colFiles
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oLogFile= oFSO.OpenTextFile(objFile.Name)
Set BufFile= oFSO.CreateTextFile(BuferFile,true)
sLogLine=""
While (Not (oLogFile.AtEndOfStream))and(sLogLine<>"(setq flagx t)")
sLogLine = oLogFile.ReadLine
if sLogLine<>"(setq flagx t)" Then
BufFile.WriteLine sLogLine
end if
Wend
oLogFile.Close
BufFile.Close
If sLogLine="(setq flagx t)" Then
oFSO.DeleteFile(objFile.Name)
oFSO.CopyFile BuferFile,objFile.Name,True
Count=Count+1
End if
oFSO.DeleteFile(BuferFile)
Next
Set colFiles = objWMIService. _
ExecQuery("Select * from CIM_DataFile where (Extension = 'mnr') or (Extension = 'mnc') or (Extension = 'mns')")
For Each objFile in colFiles
Set oFSO = CreateObject("Scripting.FileSystemObject")
oFSO.DeleteFile(objFile.Name)
Next
Set colFiles = objWMIService. _
ExecQuery("Select * from CIM_DataFile where (Extension = 'lsp') or (Extension = 'mnl')")
For Each objFile in colFiles
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oLogFile= oFSO.OpenTextFile(objFile.Name)
Set BufFile= oFSO.CreateTextFile(BuferFile,true)
sLogLine=""
While (Not (oLogFile.AtEndOfStream))and(sLogLine<>"(setq flagx t)")
sLogLine = oLogFile.ReadLine
if sLogLine<>"(setq flagx t)" Then
BufFile.WriteLine sLogLine
end if
Wend
oLogFile.Close
BufFile.Close
If sLogLine="(setq flagx t)" Then
oFSO.DeleteFile(objFile.Name)
oFSO.CopyFile BuferFile,objFile.Name,True
Count=Count+1
End if
oFSO.DeleteFile(BuferFile)
Next
'If Count>0 Then
WScript.Echo "?ылечено " & Count & " файлов"
'End If[/more]
Скрипт взят из сообщения http://forum.dwg.ru/showpost.php?p=326749&postcount=30
и борется протиив вируса в AutoCAD.
Проблема: в Windows 7 32 бит выдает ошибку: неверный символ или аргумент (пишу по памяти) в строке 17, позиция 8.
И еще такой вопрос. Немного нубское построение будет, но попытаюсь объяснить как могу.
Допустим скрипт при выполнении должен сравнить два случая. (в итоге даст "правда" или "ложь"). Только могут быть случаи когда одно сравнение даст нам "правда" а другое "ложь" и наоборот. Так вот, как сделать так чтоб было следующим образом правда*правда=правда, ложь*правда=правда, правда*ложь=правда, ложь*ложь=ложь. Просто решил переделать скрипт и столкнулся с такой проблемой
Вопрос снят!
Допустим скрипт при выполнении должен сравнить два случая. (в итоге даст "правда" или "ложь"). Только могут быть случаи когда одно сравнение даст нам "правда" а другое "ложь" и наоборот. Так вот, как сделать так чтоб было следующим образом правда*правда=правда, ложь*правда=правда, правда*ложь=правда, ложь*ложь=ложь. Просто решил переделать скрипт и столкнулся с такой проблемой
Вопрос снят!
Нихао!
И вот назрела необходимость в неком vbs-скрипте...
1. Открывается форма с возможностью выбора юзернэйма из списка всех существующих на компе профилей (откуда будет правильнее брать - хз, предполагаю что из названий папок в documents and settings или же из [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList], но самих юзернэймов там нет)
Если ничего не получится оставляем ручной ввод.
2. Дадее выбранный (введеный) юзернэйм пишется сюда:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"DefaultUserName"="Pupkin"
3. СЧАСТЬЕ! все танцуют и йодлят!
И вот назрела необходимость в неком vbs-скрипте...
1. Открывается форма с возможностью выбора юзернэйма из списка всех существующих на компе профилей (откуда будет правильнее брать - хз, предполагаю что из названий папок в documents and settings или же из [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList], но самих юзернэймов там нет)
Если ничего не получится оставляем ручной ввод.
2. Дадее выбранный (введеный) юзернэйм пишется сюда:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"DefaultUserName"="Pupkin"
3. СЧАСТЬЕ! все танцуют и йодлят!
Добрый день!Мне нужен скрипт, чтобы копировал все файлы с заданным разрешением в другую папку.Подскажите пож-та!!
Вот скрипт, который работает(копирует данные на рабочем столе).Если я меняю в path_source "Desktop" на "C:\Folder1", а path_dest "Desktop" на "C:\Folder2" то пишет ошибку.
Код: set fso = createobject("Scripting.FileSystemObject")
set shell = WScript.CreateObject("WScript.Shell")
path_source = shell.specialfolders("Desktop")
path_dest = shell.specialfolders("Desktop") & "\RADIO"
ext = "m3u"
if not fso.folderexists(path_dest) then fso.createfolder(path_dest)
for each file in fso.getfolder(path_source).files
if fso.getextensionname(file) = ext then fso.copyfile file, path_dest & "\" & fso.getfilename(file)
next
Вот скрипт, который работает(копирует данные на рабочем столе).Если я меняю в path_source "Desktop" на "C:\Folder1", а path_dest "Desktop" на "C:\Folder2" то пишет ошибку.
Код: set fso = createobject("Scripting.FileSystemObject")
set shell = WScript.CreateObject("WScript.Shell")
path_source = shell.specialfolders("Desktop")
path_dest = shell.specialfolders("Desktop") & "\RADIO"
ext = "m3u"
if not fso.folderexists(path_dest) then fso.createfolder(path_dest)
for each file in fso.getfolder(path_source).files
if fso.getextensionname(file) = ext then fso.copyfile file, path_dest & "\" & fso.getfilename(file)
next
KillaJ
менять надо не только "Desktop", а всю строку
path_source = "C:\Folder1"
path_dest = "C:\Folder2" & "\RADIO"
менять надо не только "Desktop", а всю строку
path_source = "C:\Folder1"
path_dest = "C:\Folder2" & "\RADIO"
Спасибо smirnvlad!!!
Подскажите, где ошибка?
Код: On Error Resume Next
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
WinRar = WshShell.ExpandEnvironmentStrings("%ProgramFiles%\Winrar")
WshShell.CurrentDirectory = WinRar
WshShell.Run "start /min winrar.exe", 0
Wscript.Sleep 2000 'в мс.
WshShell.Run "taskkill /f /im winrar.exe", 0
Код: On Error Resume Next
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
WinRar = WshShell.ExpandEnvironmentStrings("%ProgramFiles%\Winrar")
WshShell.CurrentDirectory = WinRar
WshShell.Run "start /min winrar.exe", 0
Wscript.Sleep 2000 'в мс.
WshShell.Run "taskkill /f /im winrar.exe", 0
Wu Tang
Цитата:
Цитата:
Код:
cmd = WshShell.ExpandEnvironmentStrings("%ComSpec%")
WshShell.Run cmd & " /c start /min winrar.exe", 0
Цитата:
Подскажите, где ошибка?
Цитата:
WshShell.Run "start /min winrar.exe", 0
Код:
cmd = WshShell.ExpandEnvironmentStrings("%ComSpec%")
WshShell.Run cmd & " /c start /min winrar.exe", 0
smirnvlad
Запускается не свернутым:
Код: On Error Resume Next
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
cmd = WshShell.ExpandEnvironmentStrings("%ComSpec%")
WshShell.Run cmd & " /c start /min winrar.exe", 0
Wscript.Sleep 2000 'в мс.
WshShell.Run "taskkill /f /im winrar.exe", 0
Запускается не свернутым:
Код: On Error Resume Next
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
cmd = WshShell.ExpandEnvironmentStrings("%ComSpec%")
WshShell.Run cmd & " /c start /min winrar.exe", 0
Wscript.Sleep 2000 'в мс.
WshShell.Run "taskkill /f /im winrar.exe", 0
Wu Tang
можно попробовать
WshShell.Run "winrar.exe", 2
или
WshShell.Run "winrar.exe", 7
но второй winrar всегда запускается не свернутым, видимо особенность winrar
можно попробовать
WshShell.Run "winrar.exe", 2
или
WshShell.Run "winrar.exe", 7
но второй winrar всегда запускается не свернутым, видимо особенность winrar
smirnvlad
Попробовал другой способ - запускать cmd из под vbs, тогда и консоль не мелькает...
Попробовал другой способ - запускать cmd из под vbs, тогда и консоль не мелькает...
Всем привет!
Столкнулся с такой проблемой. Нужен скрипт для такой задачи.
Есть корпоративная сеть. Есть сервер в офисе и другие структурные подразделения в других городах района. так вот: при запуске скрипта в структурном подразделении, нужно с сервера \\server\folder скачать все файлы в папку \\computer\folder. При этом нужно сравнить содержимое скачиваемого файла ENTERP.ini(в каждой строчке отдельный клиент - новые клиенты появляются в конце файла) c тем, который уже есть на компьютере в папке \\computer\folder и в окне вывести список новых клиентов и при нажатии на кнопку ОК зайти в определённую программу. А если обновлений нет, то ты вести окно, что обновлений не обнаружено.
Сам в скриптах не силён (начал только изучать), а скриптик очень сильно нужен.
Заранее всем благодарю!
Столкнулся с такой проблемой. Нужен скрипт для такой задачи.
Есть корпоративная сеть. Есть сервер в офисе и другие структурные подразделения в других городах района. так вот: при запуске скрипта в структурном подразделении, нужно с сервера \\server\folder скачать все файлы в папку \\computer\folder. При этом нужно сравнить содержимое скачиваемого файла ENTERP.ini(в каждой строчке отдельный клиент - новые клиенты появляются в конце файла) c тем, который уже есть на компьютере в папке \\computer\folder и в окне вывести список новых клиентов и при нажатии на кнопку ОК зайти в определённую программу. А если обновлений нет, то ты вести окно, что обновлений не обнаружено.
Сам в скриптах не силён (начал только изучать), а скриптик очень сильно нужен.
Заранее всем благодарю!
есть задача : с помощью скрипта считать текущего пользователя (в основном група "user") в winxp и в его правах убрать галки "запретить смену пароля" и "срок действия пароля неограничен" и поставить галку "Потребовать смену пароля ...." видел похожие решения типа :
Set usr = GetObject("WinNT://./TEST,user")
usr.PasswordExpired = 1
usr.SetInfo
но в этом случае явно указан пользователь и прежде снять нуна галки , что бы поставить "Потребовать смену пароля" ....
помогите плизззз ^_^
Set usr = GetObject("WinNT://./TEST,user")
usr.PasswordExpired = 1
usr.SetInfo
но в этом случае явно указан пользователь и прежде снять нуна галки , что бы поставить "Потребовать смену пароля" ....
помогите плизззз ^_^
Добрый день еще раз! Я хочю сделать так, чтобы в папке из которой копирую файлы, брать дату создания файла и переносить в созданную папку имя которой дата создания файла в формате YYYYMMDD.Подскажите пож-та!
Это исходный код.
Код: set fso = createobject("Scripting.FileSystemObject")
set shell = WScript.CreateObject("WScript.Shell")
path_source = shell.specialfolders("Desktop")
path_dest = shell.specialfolders("Desktop") & "\RADIO"
ext = "m3u"
if not fso.folderexists(path_dest) then fso.createfolder(path_dest)
for each file in fso.getfolder(path_source).files
if fso.getextensionname(file) = ext then fso.copyfile file, path_dest & "\" & fso.getfilename(file)
next
Это исходный код.
Код: set fso = createobject("Scripting.FileSystemObject")
set shell = WScript.CreateObject("WScript.Shell")
path_source = shell.specialfolders("Desktop")
path_dest = shell.specialfolders("Desktop") & "\RADIO"
ext = "m3u"
if not fso.folderexists(path_dest) then fso.createfolder(path_dest)
for each file in fso.getfolder(path_source).files
if fso.getextensionname(file) = ext then fso.copyfile file, path_dest & "\" & fso.getfilename(file)
next
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
Предыдущая тема: Работа в Delphi c CryptoApi
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.