是否可以使用HTML5按钮事件运行.bat或可执行文件?在IE中,如果我没记错的话,可以使用Shell对象实现。
是否可以使用HTML5按钮事件运行.bat或可执行文件?在IE中,如果我没记错的话,可以使用Shell对象实现。
不行,那将是一个巨大的安全漏洞。想象一下,如果有人能够运行
format c:
每当你访问他们的网站时。
以下是我的做法。我希望在我们的网络上设置一个HTML页面,这样我就不必浏览各种文件夹来安装或升级应用程序了。所以我在我们每个人都可以访问的“共享”驱动器上设置了一个.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文件可以解决这个问题。希望它能在Firefox或Chrome中运行,但只能在IE中运行。
REG ADD "HKCU\Software\..."
,那该怎么办? - Hosein Aqajani当页面本身通过 file:///
路径打开时,这是可能的。
<button onclick="window.open('file:///C:/Windows/notepad.exe')">
Launch notepad
</button>
然而,一旦您将其放在web服务器上(即使通过http://localhost/
访问它),您将会收到一个错误:
Error: Access to 'file:///C:/Windows/notepad.exe' from script denied
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
<a href = "C:\folder_name\program.exe">
Win8.1
,IE11
。但不适用于FF27
)。您应该将其发布为答案。 - IsaacS