2013-03-11 94 views
0

我使用WIX toolset 3.5創建用於安裝網站的msi包。我的網站是基於asp的,我在config.asp文件中有配置。 安裝時我有對話框供用戶插入服務器名稱,數據庫名稱,用戶名和密碼。 然後我必須插入(替換)這個值到config.asp文件中。 我有幾條線象: 的ConnectionString =「供應商= SQLOLEDB.1;密碼= XXX;用戶ID =用戶;初始目錄= ....修改asp文件

什麼是做到這一點的最好方式,我要解析?文件某種方式。 任何例子嗎?所有我已經找到了如何更換在.NET配置文件,該文件是基於XML的,有不同的方法。

感謝

回答

1

如果config.asp裏的文件是不正確的XML可以使用XPATH進行處理,您將不得不編寫自定義操作來執行更新.FWIW,InstallShield具有「文本替換」功能,它類似於Xml功能,但使用搜索並取代常規文本。

+0

謝謝。我熟悉自定義操作,但是您是否有一些安裝屏蔽文本替換的示例? – Simon 2013-03-12 08:20:55

+0

使用InstallShield,您可以使用設計器進行編程,因此發佈「示例」並不容易。以下是幫助主題:http://helpnet.flexerasoftware.com/installshield16helplib/TextFileChanges-SrchRplc.htm – 2013-03-12 11:18:37

+0

我決定使用WIX和CustomAction: String filePath = Environment.GetEnvironmentVariable(「TEMP」)+ Path.DirectorySeparatorChar +「config.asp」; 但該文件不存在於臨時文件夾中。我有After =「InstallInitialize」 InstallExecuteSequence。 我在做什麼錯了?我可以在哪裏使用自定義操作訪問文件? 我應該使用After =「InstallFiles」並從安裝位置更改文件而不是臨時位置? – Simon 2013-03-13 15:18:07