Загрузить и выполнить файл, размещенный на удаленном сервере?

277
user905798

Можно ли загрузить и выполнить файл, размещенный на удаленном сервере, с помощью сценария .vbs? Моя попытка ниже не работает.

Dim objShell Set objShell = WScript.CreateObject( "WScript.Shell" ) objShell.Run("""\\12.345.67.789\filename.exe""") Set objShell = Nothing 
0
Вы ** говорите **, что загружаете файл, но, насколько я вижу, нет - вы просто пытаетесь запустить его из удаленного местоположения. G-Man 5 лет назад 0

1 ответ на вопрос

0
shawn

Следующее даст вам то, что вы хотите. Убедитесь, что для локального имени файла (sLocalFile) задан путь, на который у вашего пользователя есть права на запись, иначе произойдет сбой. Кроме того, большинство антивирусных приложений будут воспринимать это как вредоносное ПО.

' variables Dim xHttp, oStream, oShell, sRemoteURI, sLocalFile  ' constants Const klBinary = 1 Const klOverwrite = 2  ' defined values sRemoteURI = "https://example.com/filename.exe" sLocalFile = """%appdata%\filename.exe"""  ' create the web request Set xHttp = CreateObject("Microsoft.XMLHTTP") xHttp.Open "GET", sRemoteURI, False xHttp.Send  ' save the file locally Set oStream = CreateObject("Adodb.Stream") oStream.Type = klBinary oStream.Open oStream.Write xHttp.responseBody oStream.SaveToFile sLocalFile, klOverwrite Set oStream = Nothing Set xHttp = Nothing  ' run the file Set oShell = WScript.CreateObject("WScript.Shell") oShell.Run(sLocalFile) Set oShell = Nothing