如何才能知道指定的程序已经运行了呢?如果运行了用什么方法可以结束程序的运行呢?
是不是要查找指定程序的进程,然后结束进程啊?如果是这种方法的话,应该怎样做啊?还有没有其它的办法啊????救人与水火啊??谢谢各位!!!!!!

解决方案 »

  1.   

    没有那么麻烦,创建互斥量,看看 CreateMutex 函数
    加在 InitInstance 里面,如果创建失败,GetLastError 发现已经创建,则表示程序已经运行了,直接返回 false 就可以了
      

  2.   

    BOOL CAnalyseApp::InitInstance()
    {
    m_hMutex = ::CreateMutex(NULL, FALSE, "AnalyseInUse");
    if(GetLastError()==ERROR_ALREADY_EXISTS)
    {
    AfxMessageBox("数据分析系统正在运行中!");
    return FALSE;
    } AfxEnableControlContainer();
      

  3.   

    m_hMutex = ::CreateMutex(NULL, FALSE, "AnalyseInUse");/////////////////请问AnalyseInUse是什么?进程的名称吗?
    vc中一个进程的名称是不是由入口函数所在的.cpp文件名决定?
      

  4.   

    "AnalyseInUse"是互斥量对象名。