我下載了這個類http://www.codeproject.com/file/VersionInfo.aspC++的VisualStudio GetFileVersionInfo
我用它來得到我目前運行幾個程序的文件信息。
它工作正常,當我想從我寫的程序中獲取信息時,但我無法獲得「chrome」或我的「visual studio」的文件信息。
當我詢問我的應用程序的產品名稱,我得到「TODO:產品名稱」,因爲它並沒有被設定;)
但是當我查詢的chrome.exe的產品名稱,我只是得到「」沒什麼。
有沒有人知道爲什麼?
編輯:我調試了一下,問題在這裏。
BOOL CFileVersionInfo::Open(IN LPCTSTR lpszFileName)
{
if(lpszFileName == NULL)
ASSERT_RETURN(FALSE);
Close();
if(!GetVersionInfo(lpszFileName) || !QueryVersionTrans())
Close();
return m_bValid;
};
的GetVersionInfo(lpsz ...)並返回0;如果 「的chrome.exe」 進入
編輯2: 是的chrome.exe有一個產品名稱字段。
例如:的chrome.exe - 文件描述:谷歌瀏覽器 - 類型:Application - 文件版本:23.0.1271.97 - 產品名稱:谷歌瀏覽器 - 產品版本:23.0.1271.97 - 版權所有:..布拉布拉...... - 大小:1.18MB - 修改日期:some_date - 語言:英語 - 原始文件名:的chrome.exe
編輯3: 我怎樣才能獲得的完整路徑的exe?我只有進程ID。此刻,iam遍歷所有進程並搜索我的processId。
感謝迄今爲您解答:-)
你不應該使用的完整路徑的chrome.exe? – stijn