Javascript 如何使用NativeMessaging连接到本机应用程序(.exe),但不要';t启动.exe,只需在后台发送消息
通常,当我点击“发送”按钮(禁用NativeMessaging方法)时,它将启动一个新实例,我只想让它只有一个实例正确运行connect,这样我就可以发送消息了。 非常感谢 这是我的background.js代码: 这是我的content.js代码: 这是我的测试HTML文件代码:Javascript 如何使用NativeMessaging连接到本机应用程序(.exe),但不要';t启动.exe,只需在后台发送消息,javascript,google-chrome,google-chrome-extension,chrome-native-messaging,nativeapplication,Javascript,Google Chrome,Google Chrome Extension,Chrome Native Messaging,Nativeapplication,通常,当我点击“发送”按钮(禁用NativeMessaging方法)时,它将启动一个新实例,我只想让它只有一个实例正确运行connect,这样我就可以发送消息了。 非常感谢 这是我的background.js代码: 这是我的content.js代码: 这是我的测试HTML文件代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Test Comm
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test Communicate with native app</title>
<script>
function startApp() {
var evt = document.createEvent("CustomEvent");
evt.initCustomEvent('myCustomEvent', true, false, "im information");
// fire the event
document.dispatchEvent(evt);
console.log("The button was clicked!");
}
</script>
</head>
<body>
<button type="button" onclick="startApp()" id="startApp">startApp</button>
</body>
</html>
测试与本机应用程序的通信
函数startApp(){
var evt=document.createEvent(“CustomEvent”);
evt.initCustomEvent('myCustomEvent',true,false,“im信息”);
//解雇事件
文件。调度事件(evt);
log(“按钮被点击了!”);
}
startApp
我用C#语言编写了演示本机应用程序。你试过吗?是的,我试过
runtime.connectNative
和runtime.sendNativeMessage
方法,它们都不起作用。我从未试过,但我认为可能应该由本机应用程序来完成,例如,本机应用程序应将状态保存在存储中,并在启动新实例后恢复该状态,或者这会有帮助吗?是的,谢谢。我会再试一次。你试过吗?是的,我试过运行时.connectNative
和运行时.sendNativeMessage
方法,它们都不起作用。我从未试过,但我认为可能应该由本机应用程序来完成,例如,本机应用程序应将状态保存在存储中,并在启动新实例后恢复该状态,或者这会有帮助吗?是的,谢谢。我再试试。
var launch_message;
document.addEventListener('myCustomEvent', function (evt) {
console.log("visited!");
chrome.runtime.sendMessage({ type: "launch", message: evt.detail }, function (response) {
console.log(response);
// console.log("visited here!");
});
}, false);
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test Communicate with native app</title>
<script>
function startApp() {
var evt = document.createEvent("CustomEvent");
evt.initCustomEvent('myCustomEvent', true, false, "im information");
// fire the event
document.dispatchEvent(evt);
console.log("The button was clicked!");
}
</script>
</head>
<body>
<button type="button" onclick="startApp()" id="startApp">startApp</button>
</body>
</html>