积极答复者
请问下,我写了个windows 服务,但调用不执行?

问题
-
我写了个简单的windows service,安装好之后,调用后没有任何的反应,这是怎么回事?代码如下:
public partial class Servicetest : ServiceBase { Form1 form = new Form1(); public Servicetest() { InitializeComponent(); } protected override void OnStart(string[] args) { // TODO: 在此处添加代码以启动服务。 form.Show(); } protected override void OnStop() { // TODO: 在此处添加代码以执行停止服务所需的关闭操作。 form.Dispose(); } } static class Program { /// <summary> /// 应用程序的主入口点。 /// </summary> static void Main() { ServiceBase[] ServicesToRun; // 同一进程中可以运行多个用户服务。若要将 // 另一个服务添加到此进程中,请更改下行以 // 创建另一个服务对象。例如, // // ServicesToRun = new ServiceBase[] {new Service1(), new MySecondUserService()}; // ServicesToRun = new ServiceBase[] { new Servicetest() }; ServiceBase.Run(ServicesToRun); } }
答案
-
没反应可能是程序不能运行到你的断点,另外 Windows Service 也可以创建 Winform 前提是得勾选中“允许服务与桌面交互”。
protected override void OnStart(string[] args) { Thread t = new Thread(new ThreadStart(DoWork)); t.Start(); } /// <summary> /// 5 秒显示一个消息提示 /// </summary> void DoWork() { while (true) { MessageBox.Show("OK");//断点打在这 Thread.Sleep(5000); } }
知识改变命运,奋斗成就人生!- 已标记为答案 ThankfulHeartModerator 2010年8月27日 5:00
全部回复
-
但我写的另一个服务是没有winform的,服务安装好了以后也还是没有能够运行啊?
- 已标记为答案 ThankfulHeartModerator 2010年8月24日 3:42
- 取消答案标记 ThankfulHeartModerator 2010年8月24日 3:42
-
你安装过服务吗?这里给你一个例子看看,你可以下载:
http://developer.ccidnet.com/pub/html/developer/code/download/Source0508.rar
-
没反应可能是程序不能运行到你的断点,另外 Windows Service 也可以创建 Winform 前提是得勾选中“允许服务与桌面交互”。
protected override void OnStart(string[] args) { Thread t = new Thread(new ThreadStart(DoWork)); t.Start(); } /// <summary> /// 5 秒显示一个消息提示 /// </summary> void DoWork() { while (true) { MessageBox.Show("OK");//断点打在这 Thread.Sleep(5000); } }
知识改变命运,奋斗成就人生!- 已标记为答案 ThankfulHeartModerator 2010年8月27日 5:00