我想检测基于npapi的插件是以非处理模式(浏览器处于64位模式)还是处于进程模式(浏览器处于32位模式)。当前我使用以下代码来检测在npapi插件中检测浏览器启动模式
NSString * processName = [[NSProcessInfo processInfo] processName];
if (processName)
{
if (!([processName compare:@"Safari" options:NSCaseInsensitiveSearch] == NSOrderedSame)
&& !([processName compare:@"firefox" options:NSCaseInsensitiveSearch] == NSOrderedSame)
&& !([processName compare:@"firefox-bin" options:NSCaseInsensitiveSearch] == NSOrderedSame)
&& !([processName compare:@"Google Chrome" options:NSCaseInsensitiveSearch] == NSOrderedSame))
{
// out of process
}
}
如果浏览器的可执行文件名失败,此代码将失败。是否有另一种检查浏览器启动模式的方法?
这可能是检查你要检查的唯一方法,但正如smorgan所说,这完全是错误的方法。你应该真的考虑看FireBreath(http://www.firebreath.org),这可能是一个更轻的学习曲线,并解决了很多你可能遇到的问题。 – taxilian