我有一個MSI安裝程序來安裝我的Windows服務,並且在我的自定義操作中,我需要在HKEY_LOCAL_MACHINE/SOFTWARE/MYSoftware
註冊表項中寫入一些值到註冊表中。無法在MSI安裝程序的自定義操作中寫入註冊表
我想這樣做,它不工作,但從我的Windows服務它工作正常。有人可以告訴我我哪裏出錯了嗎?
string registryLocaltion = AgentProperties.TMAGENT_REGISTRY_LOCATION
+ @"\" +AgentProperties.TMAgentVersion;
tmKeyMain = Registry.LocalMachine.OpenSubKey(registryLocaltion, true);
if (tmKeyMain == null)
{
log.Error("Unable to open registry key " + registryLocaltion);
}
tmKeyMain.SetValue("UseProxySettings", settings.UseProxySettings);
if (settings.UseProxySettings)
{
tmKeyMain.SetValue("ProxyHost", settings.ProxyHost);
tmKeyMain.SetValue("ProxyPort", settings.ProxyPort);
tmKeyMain.SetValue("ProxyUsername",
GenericHelper.ConvertToBase64Encoding(settings.ProxyUsername));
tmKeyMain.SetValue("ProxyPassword",
GenericHelper.ConvertToBase64Encoding(settings.ProxyPassword));
tmKeyMain.SetValue("ProxyExclusion", settings.ProxyExclusion);
tmKeyMain.SetValue("BypassProxy", settings.BypassProxy);
}
此代碼是在我的Windows服務工作正常,但如果我做一些事情非常相似,在MSI安裝程序我的自定義操作,這是行不通的。
有人可以告訴我我要去哪裏嗎?
我正確地猜測您正在使用InstallUtil(安裝程序類)自定義操作並使用Visual Studio部署項目創作您的MSI? – 2013-05-13 14:31:35
是的,你是對的... 我做錯了什麼.. ?? – 2013-05-14 03:16:37