1. 程式人生 > >Advanced Installer讀取註冊表時將Program Files讀取為Program Files (x86)的解決辦法

Advanced Installer讀取註冊表時將Program Files讀取為Program Files (x86)的解決辦法

mark 分享 fonts 32位 描述 配置文件 java pretty 搜索

原文:Advanced Installer讀取註冊表時將Program Files讀取為Program Files (x86)的解決辦法

今天同事在做安裝包的時候,有一個讀取註冊表路徑的需求,需要根據讀取的值來寫配置文件,按照常規的做法,寫好了註冊表搜索方法,但是在測試的時候,發現總是會將系統盤下的Program Files\xxx路徑讀取為Program Files (x86)\xxx,如下圖所示:
技術分享
之後測試了如果讀取非系統盤下的此路徑,不會出現這個問題。
但是這個路徑一般情況下都是默認安裝在系統盤的,難道必須要求客戶安裝在非系統盤?這個不現實,抱著這個問題,翻閱了Advanced Installer社區,發現這個問題由來已久,一直以來Advanced Installer都知道這個問題,如下圖:
技術分享


這裏給出的解決辦法,就是將安裝包的類型設置為64位或32/64位混合模式,而不能是純粹的32位安裝包。
設置方法如下圖:
技術分享
設置好後,再次運行註冊表測試,就和原始路徑一致了。
技術分享

‘).addClass(‘pre-numbering‘).hide(); $(this).addClass(‘has-numbering‘).parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($(‘
  • ‘).text(i)); }; $numbering.fadeIn(1700); }); });

    Advanced Installer讀取註冊表時將Program Files讀取為Program Files (x86)的解決辦法