3

我最近爲我的兄弟創建了一個應用程序供其使用,它有幾個條目存儲在它使用的註冊表中。我在VS2010中創建了一個安裝程序應用程序,以便他可以輕鬆地將應用程序安裝到他的PC上,並將條目設置爲他已更改的某些默認值。例如Visual Studio 2010更新註冊表安裝應用程序

我有一個名爲「SummaryFolder」的條目和「成功安裝」的值 - 所以安裝時它會有默認值。他現在已經將其更改爲PC上的實際文件夾。

現在我剛剛對程序進行了更改,並添加了更多註冊表項,修改了安裝應用程序並添加到新的安裝條目中。我更改了安裝應用程序的內部版本號,所以當他安裝應用程序時,它實際上會更新他的現有版本。我遇到的問題是,他從初始安裝中獲得的現有註冊表條目已被默認的「成功安裝」值覆蓋,因此刪除了他設置的文件夾。

所以我的問題是:我如何指定安裝程序只添加註冊表項,如果他們不存在?我想讓安裝者爲他儘可能簡單。

非常感謝您的幫助。

回答

3

你可以試試這個方法:

  • 在解決方案資源管理器的頂部
  • 添加一個新的註冊表搜索在解決方案資源管理器中選擇安裝項目
  • 點擊啓動條件編輯器按鈕,並配置它來搜索爲您的註冊表項
  • 將搜索屬性設置爲有意義的內容,例如SUMMARY_FOLDER_REG(僅大寫字母,因此它是公共屬性)
  • in Ë註冊表編輯器中選擇你的註冊表值,在其屬性
  • 窗格中的條件字段設置爲否定搜索屬性:

    不SUMMARY_FOLDER_REG

這樣的註冊表項只安裝如果搜索沒有按找不到任何東西。

+0

謝謝,「SummaryFolder」reg條目位於:HKCU \ Software \ [Manufacturer] \ [ProductName] - 我應該如何在啓動條件屬性窗口中設置RegKey和值? – harag

+0

忽略上面的評論,我已經玩了一陣子,它似乎工作 - 我把「軟件\ [製造商] \ [ProductName]」在regkey和「SummaryFolder」中的值屬性。 – harag

相關問題