windows之查找軟件的可執行程序路徑 ---CLSID


一般軟件的可執行程序文件一般在:

示例飛書:

計算機\HKEY_CURRENT_USER\SOFTWARE\Feishu 該路徑下會有安裝路徑,以及產品名字。

 

但是也有這路徑下找不到,比如photoshop,

 

這時候就可以用到CLSID了(一般大型的軟件會寫入CLSID,因為它的驅動,服務,組件比較多,小軟件參考上面飛書

 

std::wstring wszSid = getAIPath(processPath, "HKEY_LOCAL_MACHINE\\SOFTWARE\\Classes\\Photoshop.IndexedConversionOptions\\CLSID");

if(wszSid.isEmpty())
  wszSid = getAIPath(processPath, "HKEY_LOCAL_MACHINE\\SOFTWARE\\Classes\\Photoshop.IndexedConversionOptions.150\\CLSID");

 

std::wstring  wszExePath = std::wstring.format("HKEY_CLASSES_ROOT\\CLSID\\%0\\LocalServer32").arg(clsid);

有可能寫在兩個地方去查找到photoshop對應的sid,在通過sid查找進程的路徑。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM