我刚刚创建了一个简单的测试 Windows 服务,但遇到了麻烦。我是 Windows 服务的新手,所以我什至不知道我是否做得对。
namespace testWindowsService
{
public partial class Service1 : ServiceBase
{
public Service1()
{InitializeComponent();}
protected override void OnStart(string[] args)
{
FileStream fs = new FileStream(@"c:\temp\started.txt", FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter m_streamWriter = new StreamWriter(fs);
m_streamWriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamWriter.WriteLine("Service Started on \n" + DateTime.Now.ToShortDateString() + " at " + DateTime.Now.ToShortTimeString());
m_streamWriter.Flush();
m_streamWriter.Close();
}
protected override void OnStop()
{
FileStream fs = new FileStream(@"c:\temp\stopped.txt", FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter m_streamWriter = new StreamWriter(fs);
m_streamWriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamWriter.WriteLine("Service Stopped \n" + DateTime.Now.ToShortDateString() + " at " + DateTime.Now.ToShortTimeString());
m_streamWriter.Flush();
m_streamWriter.Close();
}
}
}
然后我构建了项目并从开始 -> 所有程序 -> Microsoft Visual Studio 2008 -> Visual Studio 工具 -> Visual Studio 2008 命令提示符打开命令提示符。从提示我跑:
installutil C:\Users\myUser\Documents\MyServices\testWindowsService\testWindowsService\bin\Debug\testWindowsService.exe
但我得到了错误:
No public installers with the RunInstallerAttribute.Yes attribute could be found in the C:\Users\myUser\Documents\MyServices\testWindowsService\testWindowsService\bin\Debug\testWindowsService.exe assembly.
我试过用谷歌搜索,但发现了很多死胡同和一半的答案。
谢谢