我通過NSIS安裝程序爲我的應用程序打包。在包裝我需要爲我的應用程序做一些註冊表項。這些條目將位於註冊表路徑「HKLM \ SOFTWARE \ Wow6432Node \ Microsoft」和「HKLM \ SOFTWARE \ Microsoft」中。導入NSIS中的註冊表項時出錯
問題是當我通過NSIS中的[ExecWait「regedit.exe/s registry.reg」]命令導入註冊表時,註冊表項不會被添加到路徑「HKLM \ SOFTWARE \ Microsoft」 ,只有在其他條目中才會添加。並且在NSIS安裝程序中,將會有一個來自任何地方的「HKLM \ SOFTWARE \ Wow6432Node \ Wow6432Node \ Microsoft」路徑中的新條目,因爲我沒有在註冊表文件中包含任何類似註冊表項。
我檢查了註冊表文件,它沒有問題。我試圖通過直接運行註冊表文件,並直接在bat文件以及CMD(regedit.exe/s registry.reg)中嘗試相同的命令。所有工作都很好。只有在NSIS中它不起作用。任何幫助都會很棒。
編輯: 操作系統:Windows 7,64位
NSIS版本:2.46
我有我的註冊表條目的reg文件。是的,我可以使用默認功能,如WriteRegStr和SetRegView使用'Reg2nsis'應用程序來轉換我的reg文件,但問題是,這個轉換器應用程序中存在一個錯誤,它在轉換時給出錯誤的註冊表值。所以我下降了使用默認功能 –
的選項,如果你想轉換一個包含對Wow6432Node的直接引用的註冊表文件,Reg2nsis可能無法正常工作,你必須手動執行 – cristallo
你可以嘗試運行C:\ Windows \ Syswow64 \ REGEDIT/s MYapp.reg 這是一個非常骯髒的解決方案,我不確定它是否能正常工作 – cristallo