Подтвердить что ты не робот

Возможно ли запустить файл .exe или .bat в 'onclick' в HTML

Можно ли запустить bat/исполняемый файл с помощью события кнопки html5? В IE его достижимо с использованием объекта Shell, если я не ошибаюсь.

4b9b3361

Ответ 1

Вот что я сделал. Мне нужна настройка HTML-страницы в нашей сети, поэтому мне не нужно было бы переходить к различным папкам для установки или обновления наших приложений. Итак, что я сделал, был setup.bat файл на нашем "общем" диске, к которому у каждого есть доступ, в этом .bat файле у меня был этот код:

start /d "\\server\Software\" setup.exe

Код HTML:

<input type="button" value="Launch Installer" onclick="window.open('file:///S:Test/Test.bat')" />

(убедитесь, что ваши косые черты верны, у меня было другое, и это не сработало)

Я предпочел запустить EXE напрямую, но это было невозможно, но файл .bat разрешил мне это. Пожелайте, чтобы он работал в FF или Chrome, но только IE.

Ответ 2

Нет, это будет серьезное нарушение безопасности. Представьте, может ли кто-нибудь запустить

format c:

всякий раз, когда вы открыли свой веб-сайт.

Ответ 3

Это возможно, когда сама страница открывается через путь file:///.

<button onclick="window.open('file:///C:/Windows/notepad.exe')">
    Launch notepad
</button>

Однако, как только вы разместите его на веб-сервере (даже если вы его получите через http://localhost/), вы получите сообщение об ошибке:

Ошибка: доступ к файлу:///C:/Windows/notepad.exe из script denied

Ответ 4

Вы можете сделать это в Internet Explorer с компонентом OCX и на браузере Chrome, используя расширение chrome хромовый документ в любом случае необходимы дополнительные настройки в клиентской системе!

Важная часть источника расширения хрома:

var port = chrome.runtime.connectNative("your.app.id"); 
      port.onMessage.addListener(onNativeMessage); 
      port.onDisconnect.addListener(onDisconnected);
      port.postMessage("send some data to STDIO");

файл разрешений:

{
      "name": "your.app.id",
      "description": "Name of your extension",
      "path": "myapp.exe",
      "type": "stdio",
      "allowed_origins": [
            "chrome-extension://IDOFYOUREXTENSION_lokldaeplkmh/"
      ]
}

и настройки реестра Windows:

HKEY_CURRENT_USER\Software\Google\Chrome\NativeMessagingHosts\your.app.id
REG_EXPAND_SZ : c:\permissionsettings.json

Ответ 5

Вы не можете запускать/выполнять файл .exe, который находится на локальной машине пользователя или через сайт. Пользователь должен сначала загрузить exe файл, а затем запустить исполняемый файл.
Так что нет возможного способа

Следующий код работает только тогда, когда EXE присутствует в пользовательской машине.

<a href = "C:\folder_name\program.exe">