用c#编写的Windows服务程序如何处理Windows消息循环呢 望高手指教

解决方案 »

  1.   

    先要创建一个Form,然后在这个Form上做消息处理。Windows消息循环一定要有Windows窗口的。
      

  2.   

    HOOK??
    监视所有的操作么?
    说的清楚一些
    到底想干嘛
      

  3.   

    API
    PeekMessage(&msg,0,0,0,null)
    GetMessage(&msg, hWnd, 0, 0)
      

  4.   

    什么意思?
    --------------
    如果需要同窗体交互;
    http://faq.lvjiyong.com/item/1940/如果只需定时执行:
    System.Timers.Timer
    System.Threading.Thread
      

  5.   

    我现在需要用Windows服务和前端的软件进行消息传递,本打算用API SendMessage 来做的 但是发现Windwos服务无法处理Windows消息循环,应该怎么办?
      

  6.   

    在Windows服务的项目里添加一个Form,在这个Form里做消息处理。然后在服务启动时创建这个窗体但不要让它显示出来,这样不就行了。我在一楼已经说了,楼主没看吗??
    郁闷!
      

  7.   

    Windows消息循环只有Windows窗口才能处理。没有其它的办法。
      

  8.   

    通过用API自己写消息循环可不可以?
      

  9.   

    我刚做的一个数据库自动程序就是这样进行消息传递的,一个是winform的配置程序,配置数据库备份策略,配置完成后发送一个消息到私有消息队列。一个是windows服务,从消息队列接收配置程序的消息并检查是否需要备份,操作完成后再发送一个消息到消息队列,配置程序接收。
      

  10.   

    orin_chan() ( ) 信誉:98    Blog   加为好友  2007-05-12 14:55:43  得分: 0  
     
     
       通过用API自己写消息循环可不可以?----------------------------------------------------------------
    无语,Windows消息循环只有Windows窗口可以接收处理,没有其它的任何方法。除非楼主把Windows操作系统改写了。
      

  11.   

    只有窗体才可以接收Windows消息?好像不是吧~
      

  12.   

    不是窗体,是窗口。楼主要注意这两个词的区别。窗体只是窗口中的一种。但是我们在C#中都是用Form窗体来处理消息循环的。因为Form有一个WndProc函数,只要重写这个函数就可以处理所有的Windows消息。