6

我正在尝试安装使用以下命令制作的 Windows 服务:

C:\$(MyFiles)\Projects\Win Service\c#\filechecker\filechecker\bin\Debug>InstallU til.exe filechecker.exe

但我收到以下消息:

运行事务安装。

开始安装的安装阶段。查看 C:\$(MyFiles)\Projects\Win Service\c#\filechecker\filechecker\bin\Debug\filechecker.exe 程序集进度的日志文件内容。该文件位于 C:\$(MyFiles)\Projects\Win Service\c#\filechecker\filechecker\bin\Debug\filechecker.InstallLog。

安装阶段发生异常。System.ArgumentException:必须为源指定值。

安装的回滚阶段即将开始。查看 C:\$(MyFiles)\Projects\Win Service\c#\filechecker\filechecker\bin\Debug\filechecker.exe 程序集进度的日志文件内容。该文件位于 C:\$(MyFiles)\Projects\Win Service\c#\filechecker\filechecker\bin\Debug\filechecker.InstallLog。

回滚阶段成功完成。

事务安装已完成。

运行事务安装。

开始安装的安装阶段。查看 C:\$(MyFiles)\Projects\Win Service\c#\filechecker\filechecker\bin\Debug\filechecker.exe 程序集进度的日志文件内容。该文件位于 C:\$(MyFiles)\Projects\Win Service\c#\filechecker\filechecker\bin\Debug\filechecker.InstallLog。

安装阶段发生异常。System.ArgumentException:必须为源指定值。

安装的回滚阶段即将开始。查看 C:\$(MyFiles)\Projects\Win Service\c#\filechecker\filechecker\bin\Debug\filechecker.exe 程序集进度的日志文件内容。该文件位于 C:\$(MyFiles)\Projects\Win Service\c#\filechecker\filechecker\bin\Debug\filechecker.InstallLog。

回滚阶段成功完成。

事务安装已完成。

我该如何解决这个问题?

4

1 回答 1

12

ServiceInstaller总是1创建一个事件日志源,并将Source名称设置为ServiceName. 该错误向我表明您没有ServiceName在您的ServiceInstaller实例上设置(尽管我希望有一个更好的错误)。


1除非您在实例化后手动迭代其安装程序集合并将其删除。您还必须确保关闭所有自动日志记录和/或EventLogInstaller使用相同的源名称手动添加您自己的 - 如果您希望服务中的所有日志记录(包括自动日志记录)都转到某个地方,这可能很有用除了应用程序事件日志。

于 2012-05-04T10:44:52.503 回答