我向services.exe里注入一个线程,加载一个只弹出对话框的dll,但发现WaitSingleObject阻塞了我的进程,查了一下发现services.exe中LoadLibraryW的线程一直是等待状态,应该就是我注入的线程没机会得到执行,我想知道怎样才能让我的线程一进去就执行。可能也不是这个原因,那请高手告诉我这究竟是为什么?有什么方法可以解决?

解决方案 »

  1.   

    原因找到了,原来是dll中弹出对话框但在系统里没有显示出来,线程一直在等待我点击确定按钮,但我又没办法点,所以WaitSingleObject就阻塞了。现在的问题是我怎么让dll中的对话框显示出来呢?我的问题解决了,实际应用中不会使用对话框的,所以没事,现在就是大家一块讨论讨论吧。
      

  2.   

    很好的问题,应该可以通过dll发送消息给主窗口显示窗口~!
      

  3.   


    我用的AfxMessageBox,这难道不是主窗口的对话框吗?不知道为什么就是不显示。
      

  4.   

    服务有些就根本没有GUI窗口,你弹出窗口会阻塞线程,
    可以改成写日志