Google Chrome:OpenScripting.framework - 找不到入口点 InjectEventHandler
我尝试将几个 SIMBL 插件(例如 Afloat 和 FScriptAnywhere)注入 Chrome 和其他应用程序中。
它在所有其他应用程序上运行良好,但在 Chrome 上则不然。我在控制台上得到了这个输出:
01.09.11 13:30:15,911 SIMBL Agent: Google Chrome started
01.09.11 13:30:15,912 SIMBL Agent: app start notification: {
NSApplicationBundleIdentifier = "com.google.Chrome";
NSApplicationName = "Google Chrome";
NSApplicationPath = "/Applications/Google Chrome.app";
NSApplicationProcessIdentifier = 87543;
NSApplicationProcessSerialNumberHigh = 0;
NSApplicationProcessSerialNumberLow = 30412031;
NSWorkspaceApplicationKey = "<NSRunningApplication: 0x40092c060 (com.google.Chrome - 87543)>";
}
01.09.11 13:30:15,913 SIMBL Agent: checking bundle /Users/az/Library/Application Support/SIMBL/Plugins/Afloat.bundle
01.09.11 13:30:15,913 SIMBL Agent: checking target identifier *
01.09.11 13:30:15,914 SIMBL Agent: send inject event
01.09.11 13:30:15,956 SIMBL Agent: eventDidFail:'tvea' error:Error Domain=NSOSStatusErrorDomain Code=-1708 "The operation couldn’t be completed. (OSStatus error -1708.)" (the AppleEvent was not handled by any handler ) UserInfo=0x400877940 {ErrorNumber=-1708} userInfo:{
ErrorNumber = "-1708";
}
01.09.11 13:30:15,957 [0x0-0x1d00cff].com.google.Chrome: Google Chrome: OpenScripting.framework - can't find entry point InjectEventHandler in scripting addition /Library/ScriptingAdditions/SIMBL.osax.
我认为可以忽略 eventDidFail:'tvea'
错误,因为我在所有应用程序上都得到了它(尽管我想知道它是什么)。
但是,我认为最后一个错误 Google Chrome: OpenScripting.framework - can't findentry point InjectEventHandler in scriptingaddition /Library/ScriptingAdditions/SIMBL.osax
是相关的。
这是什么意思?可能是什么?
I try to inject several SIMBL plugins (e.g. Afloat and FScriptAnywhere) into Chrome and other applications.
It works fine on all other applications but not on Chrome. There I get this output on console:
01.09.11 13:30:15,911 SIMBL Agent: Google Chrome started
01.09.11 13:30:15,912 SIMBL Agent: app start notification: {
NSApplicationBundleIdentifier = "com.google.Chrome";
NSApplicationName = "Google Chrome";
NSApplicationPath = "/Applications/Google Chrome.app";
NSApplicationProcessIdentifier = 87543;
NSApplicationProcessSerialNumberHigh = 0;
NSApplicationProcessSerialNumberLow = 30412031;
NSWorkspaceApplicationKey = "<NSRunningApplication: 0x40092c060 (com.google.Chrome - 87543)>";
}
01.09.11 13:30:15,913 SIMBL Agent: checking bundle /Users/az/Library/Application Support/SIMBL/Plugins/Afloat.bundle
01.09.11 13:30:15,913 SIMBL Agent: checking target identifier *
01.09.11 13:30:15,914 SIMBL Agent: send inject event
01.09.11 13:30:15,956 SIMBL Agent: eventDidFail:'tvea' error:Error Domain=NSOSStatusErrorDomain Code=-1708 "The operation couldn’t be completed. (OSStatus error -1708.)" (the AppleEvent was not handled by any handler ) UserInfo=0x400877940 {ErrorNumber=-1708} userInfo:{
ErrorNumber = "-1708";
}
01.09.11 13:30:15,957 [0x0-0x1d00cff].com.google.Chrome: Google Chrome: OpenScripting.framework - can't find entry point InjectEventHandler in scripting addition /Library/ScriptingAdditions/SIMBL.osax.
I think the eventDidFail:'tvea'
error can be ignored because I get it on all applications (although I wonder what it is).
However, I think the last error Google Chrome: OpenScripting.framework - can't find entry point InjectEventHandler in scripting addition /Library/ScriptingAdditions/SIMBL.osax
is the relevant one.
What does it mean? What could it be?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
啊,看来是因为稳定性问题,Chrome 本身作为博客 SIMBL 插件的一个功能引入的。
http ://www.conceivouslytech.com/8990/products/google-stabilizes-chrome-for-mac-os-x-lion-adds-pulseaudio-for-linux
这是 Chrome 的补丁。 这是错误报告。有趣的是,顺便说一句。它使用 mach_override from mach_star 来修补内部函数
_CFBundleLoadExecutableAndReturnError
以添加检查列入黑名单的图书馆。我在此处提交了一份关于禁用 CFBundleBlocker 的方法的错误报告。
我找到了一种解决 Chrome 中 CFBundleBlocker 问题的方法:
我修补了 SIMBL,使其在
/System/Library
中工作,而不是在/Library
中工作。修补版本可以在此处找到。此外,修补后的 SIMBL 也在/System/Library/Application Support/SIMBL/Plugins/
中搜索 SIMBL 插件。 SIMBL 插件必须安装在该目录中,否则 Chrome 也会阻止它们。Ah, it seems it was introduced as a feature by Chrome itself to blog SIMBL plugins because of stability issues.
http://www.conceivablytech.com/8990/products/google-stabilizes-chrome-for-mac-os-x-lion-adds-pulseaudio-for-linux
This is the patch for Chrome. And this is the bug report. Interesting, btw.; it uses mach_override from mach_star to patch the internal function
_CFBundleLoadExecutableAndReturnError
to add a check for blacklisted libraries.I filed a bug report about a way to disable that CFBundleBlocker here.
I found a way to workaround the CFBundleBlocker in Chrome:
I patched SIMBL to work in
/System/Library
rather than in/Library
. The patched version can be found here. Also, that patched SIMBL searches for SIMBL plugins also in/System/Library/Application Support/SIMBL/Plugins/
. The SIMBL plugins must be installed in that directory because otherwise Chrome would also block them.