回 帖 发 新 帖 刷新版面

主题:[讨论]请问高手如何让程序只能运行一个

请问高手如何让程序只能运行一个啊,就想QQGame一样只能运行一个,有知道就说说哈,说详细一点我对这方面不是很清楚哈,先谢谢了!

回复列表 (共6个回复)

沙发

bool IsAppRunning(void)
{
    HWND  fHandle;
    fHandle = CreateMutex(NULL,false,Application->ExeName.c_str());    // Check if application has been launched?
    try
    {
        // is current application running?
        // well, if you don't like this message, you can write your own error message...
        if(GetLastError() == ERROR_ALREADY_EXISTS)
        {
            ShowMessage("Cannot execute duplicate copy,\n"+Application->ExeName);
            CloseHandle(fHandle);    // Handles are memory eaters, so get rid-off second copy...
            return true;
        }
    }
    catch(...)
    {
        ReleaseMutex(fHandle);    // make sure free mutex.
    }
    return false;
}

板凳

不过是Win32 SDK的话,主函数就有参数可以判断了~~

3 楼


void __fastcall TfrmMain::FormCreate(TObject *Sender)
{
    String mutexName;//互斥元名
    HWND hPrevWnd,hData; //hPrevWnd---窗口句柄, hData---GetProp返回的属性值
    TModalResult result;
    mutexName = Application->ExeName; //以应用程序名作为互斥名
    CreateMutex(NULL,TRUE,mutexName.c_str());
    if (GetLastError() == ERROR_ALREADY_EXISTS)
    {
      Application->Terminate();
    }
}

4 楼

你好.我是全职网赚工作者.
如果你有时间有电脑.会打字.
想在网络上创业.请联系我..
项目绝对真实.详情QQ空间资料
加盟请联系 QQ909065437

5 楼

你好.我是全职网赚工作者.
如果你有时间有电脑.会打字.
想在网络上创业.请联系我..
项目绝对真实.详情QQ空间资料
加盟请联系 QQ909065437

6 楼

这是一个互助的模式。
不推广人也有钱赚的。分A B两个网。
不推广的人在A网。推广的人 在B网。
B网推广的人帮助A网。
A网拿6000元出局。
B网就多了。
C易特元亨QQ919169870
奖励制度 
C易特更多资料C易特元亨QQ919169870
http://blog.sina.com.cn/cyite6
C易特奖励制度
http://blog.sina.com.cn/s/blog_6b2561440100l5r8.html

我来回复

您尚未登录,请登录后再回复。点此登录或注册