2012-09-12 88 views
0

我有一个WiX安装项目,需要一个C#窗口服务的输出。 我安装了项目并且服务已正确创建(在services.msc中),我可以在任务管理器中看到该过程。C# - WiX窗口服务

我的Windows服务是绑定到IP:PORT并只监听连接的服务器。

当我使用WiX安装服务时,IP:PORT的绑定似乎没有发生,但没有给出错误。我检查了netstat,但没有看到列表中的IP:PORT。

另一方面,当我使用InstallUtil时,它工作正常。

我在维修中做错了什么,或者有什么我需要在我的服务中更改,以便它能够正常工作?

使用.NET 4.0

谢谢!

回答

0

假设使用相同的数据集,无论您是使用SC命令,ServiceInstall Table还是由InstallUtil启动的安装程序类自定义操作,最终状态应该是相同的。

因此,要么数据集不相同(用户名,密码ectera),要么在ServiceInstall表中没有表示的自定义操作中执行额外的注册代码。

如果没有观察虚拟机或查看安装程序的自定义操作代码,很难进一步纠正错误。我可以说,尽管我已经安装了数百种Windows(NT)服务,这些服务多年来以.NET编写,并且ServiceInstal更具备能力。

+0

我想回答,但我不能因为我的名誉。 这里是我的答案在一个pastebin:http://pastebin.com/GtxQBvND – DOMZE

+1

基于它看起来像你正在创建一个servcie并创建一个EventLog/EventSource。您必须在WiX中使用Util扩展并声明EventSource元素来执行此操作。没有事件源,您的服务可能会在启动时抛出异常。见http://wix.sourceforge.net/manual-wix3/util_xsd_eventsource.htm –

+0

好点。我的WiX没有EventSource。但是,即使添加它,它仍然没有约束力。我真的很困惑... – DOMZE