네이티브 메시징 호스트 (즉, EXE 파일)와 통신 할 페이지 작업 확장을 만들려고합니다.Chrome을 열 때 기본 메시지 호스트가 시작되지 않음
내 확장 프로그램을 설치했지만 UI가 예상대로 작동하지만 EXE가 시작되지 않습니다. 그걸 시작하려면 뭔가해야합니까? :
port = chrome.runtime.connectNative(hostName);
나는과 같이 레지스트리에서 호스트를 설치 한 다음 x86 및 x64 비트 버전의 하이브와 혼란이있을 것 같았다 때문에
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Google\Chrome\NativeMessagingHosts\com.google.chrome.example.echo] @="C:\Users\me\Desktop\nativeMessaging\host\com.google.chrome.example.echo-win.json"
는 (나는 또한 수동으로 추가 한 .. .)
호스트 매니페스트 파일 :
{
"name": "com.google.chrome.example.echo",
"description": "Chrome Native Messaging API Example Host",
"path": "native-messaging-example-host.bat",
"type": "stdio",
"allowed_origins": [
"chrome-extension://knldjmfmopnpolahpmmgbagdohdnhkik/",
"*"
]
}
native-messaging-example-host.bat
I 내부 한 :
MyExeName.exe
당신이 볼 수 있듯이, 나는 단지의 경우 allowed_origins
에서 "*"
을 추가 한 다른 옵션은 페이지의 행동에 대한 권리하지 않았다.
나는 또한 매니 페스트 파일 안에 직접 EXE 이름을 넣으려고했지만 운이 없다.
나는 여전히를 얻을 :
Specified native messaging host not found.
나는 또한이로드되는 경우에 대비, 크롬로드 애플 리케이션을 확인하려면 ProccessExplorer 확인하지만, 나도 거기에 표시되지 않습니다.
이상한 점은 Google의 기본 메시징 호스트 샘플을 수정하기 시작했으며 앱으로 작동하고 있다고 생각합니다. 그것을 페이지 작업 확장으로 바꿨을 때 작동이 멈췄습니다.
여기에 무엇이 잘못 되었습니까?
'allowed_origins'에는 와일드 카드를 사용할 수 없습니다. "지정된 기본 메시징 호스트를 찾을 수 없습니다." 제네릭 오류입니다. Chrome의 표준 오류를 보면 무엇을 볼 수 있습니까? 예 : http://www.chromium.org/for-testers/enable-logging –
감사! 'enable-logging'을 시도하고 로그를 살펴본 후 두 가지 오류 (JSON에서 쉼표 한 개와 언급하지 않은 와일드 카드)를 발견했습니다. 지금 그것은 작동하는 것처럼 보인다! – user2173353
이제 '네이티브 메시징 호스트와 통신 할 때 오류가 발생합니다.'라는 오류가 수정되기 쉽습니다. – user2173353