我想写一个监控程序,如果发现用户点击某个单实例程序(所有的单实例,包括我的电脑这种),而这个程序已经运行,我需要弹出一个提示,请问一下这个怎么实现?

解决方案 »

  1.   

    HANDLE hMutex = CreateMutex(&sa, FALSE, "JeffObj"); 
    if (GetLastError() == ERROR_ALREADY_EXISTS) 

    //表示已经有了这个对象,说明已经有实例运行了,
      } 
    else 

      //没有实例运行
     }   本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/to_ygy/archive/2006/09/25/1280504.aspx
      

  2.   

    你 监控进程的运行,SSDT HOOK
    然后搜索一下该进程有没有已经运行,之后判断是否运行该实例
      

  3.   

    我如果用hook ZwCreateUserProcess()函数
    但是那些单实例程序不是进入IntiInstance发现程序已经运行后会立即退出进程吗?不是监控程序能控制的吧。
    当用户去执行某个单实例程序时,我只希望警告用户这个单实例程序已经运行 能做到吗?
      

  4.   

    能!
    but i don't  know 
    顶下
      

  5.   

    http://www.codeproject.com/KB/system/soviet_protector.aspx
      

  6.   

    findwindowprocess32First   process32Next