我正在將Windows服務從Visual Studio 2010遷移到VS2012,並且由於此人不支持Visual Studio安裝項目,我試圖使用WiX重新創建我的安裝項目。將參數傳遞給安裝程序使用WiX的Windows服務類
在VS2010上,我使用用戶界面中的標準Textboxes表單將一些參數傳遞給我的Installer類,它將使用此信息來實例化實體框架的DbContext並使用ObjectContext.CreateDatabase()方法部署數據庫。
這裏是我怎麼做我的安裝程序類的摘錄:
public override void Install(System.Collections.IDictionary stateSaver)
{
base.Install(stateSaver);
string dataSource = string.IsNullOrEmpty(Context.Parameters["DataSource"]) ? "." : Context.Parameters["DataSource"];
// some more code...
}
是否可以指定此參數與維克斯?
我試圖通過在WiX的Xml的「Argument」參數上傳遞參數來做到這一點,但安裝程序似乎並不接受它(它並沒有指責任何錯誤,而是表現得好像我沒有傳遞任何參數都
<ServiceInstall Id="ServiceInstaller"
Type="ownProcess"
Vital="yes"
Name="NFeConnectorService"
DisplayName="NFeConnector Service"
Description="Servico de Mensageria para NFe"
Start="auto"
Account="LocalSystem"
ErrorControl="ignore"
Interactive="no"
Arguments="/InitialCatalog="NFeConnector2" " />
我也試着用下面的語法沒有成功。?
Arguments="/InitialCatalog=NFeConnector2"
Arguments="InitialCatalog=NFeConnector2"
有沒有人對我怎樣可以通過這個參數來我的安裝程序類的任何想法
感謝您的回覆。是的,我擔心我必須那樣做,我主要想知道是否有辦法做到這一點......但是關於Installer Clas的大部分答案都表明最好的辦法是遠離它們。 –