使用InstallUtil安装WINDOWS服务时,会被360木马防火墙阻止。不好跟踪到安装结果。
//使用.NET的 InstallUtil.exe 来安装服务 string sInstallUtil = System.Environment.GetEnvironmentVariable("WINDIR") + @"\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe"; if (!File.Exists(sInstallUtil)) { MessageBox.Show("InstallUtil 工具不存在。"); return; } ProcessStartInfo pStart = new ProcessStartInfo(sInstallUtil); Process pRoc = new Process(); pStart.Arguments = " " + svrPath; pStart.UseShellExecute = false; pStart.CreateNoWindow = false; pRoc.StartInfo = pStart; pRoc.Start(); pRoc.WaitForExit();
换成AssemblyInstaller,
//被360木马防火墙阻止时,会引发异常。 IDictionary mySavedState = new Hashtable(); AssemblyInstaller myAssemblyInstaller = new AssemblyInstaller(); myAssemblyInstaller.UseNewContext = true; myAssemblyInstaller.Path = svrPath; myAssemblyInstaller.Install(mySavedState); myAssemblyInstaller.Commit(mySavedState); myAssemblyInstaller.Dispose();
exp.GetType().Name == "Win32Exception"
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步