Выполнить поток HTTP / S в Windows

Ответы:

0

Вы не можете напрямую запустить файл из Интернета, но вы можете сначала загрузить файл, а затем запустить его. Этот однострочный PowerShell должен сделать это:

[System.IO.File]::WriteAllBytes("tmpfile.exe", (Invoke-WebRequest "https://example.com/app.exe").Content); Start-Process tmpfile.exe

Это оставит позади tmpfile.exe Программа в текущем каталоге. Вместо этого, чтобы оставить его в каталоге Temp (где, мы надеемся, он скоро будет очищен):

$tmpPath = [System.IO.Path]::GetTempFileName() + ".exe"; [System.IO.File]::WriteAllBytes($tmpPath, (Invoke-WebRequest "https://example.com/app.exe").Content); Start-Process $tmpPath

Используя их, вы, вероятно, могли бы установить скрипт для загрузки и запуска EXE с произвольного URL. Вы можете вызвать команду PowerShell из обычной командной строки или командного файла, поставив powershell -command перед этим:

@echo off
rem Downloads and runs an EXE from a URL.
powershell -command $tmpPath = [System.IO.Path]::GetTempFileName() + '.exe'; [System.IO.File]::WriteAllBytes($tmpPath, (Invoke-WebRequest "%*").Content); Start-Process $tmpPath
Ben N
источник