我想檢測基於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