Advanced Installer讀取註冊表時將Program Files讀取為Program Files (x86)的解決辦法
今天同事在做安裝包的時候,有一個讀取註冊表路徑的需求,需要根據讀取的值來寫配置文件,按照常規的做法,寫好了註冊表搜索方法,但是在測試的時候,發現總是會將系統盤下的Program Files\xxx路徑讀取為Program Files (x86)\xxx,如下圖所示:
之後測試了如果讀取非系統盤下的此路徑,不會出現這個問題。
但是這個路徑一般情況下都是默認安裝在系統盤的,難道必須要求客戶安裝在非系統盤?這個不現實,抱著這個問題,翻閱了Advanced Installer社區,發現這個問題由來已久,一直以來Advanced Installer都知道這個問題,如下圖:
這裏給出的解決辦法,就是將安裝包的類型設置為64位或32/64位混合模式,而不能是純粹的32位安裝包。
設置方法如下圖:
設置好後,再次運行註冊表測試,就和原始路徑一致了。
Advanced Installer讀取註冊表時將Program Files讀取為Program Files (x86)的解決辦法