如何做到只允许一个实例运行?

AeLord 2002-12-27 07:42:16
各位请帮忙!
...全文
给本帖投票
177 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
penu 2003-01-07
  • 打赏
  • 举报
回复
有个最简单的方法:
在CB6的Examples中有个控件:在\Controls\SingleInst目录下。
打开包编译并安装,在组件面板中会增加一个控件SingleInst,把它拉到你的Form中,设为有效就行了。
HUANG_JH 2002-12-27
  • 打赏
  • 举报
回复
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
HANDLE hMutexHandle = CreateMutex(NULL,true,"Application Already Run!");

if (GetLastError()!=ERROR_ALREADY_EXISTS)
{
try
{


Application->Initialize();
.......
Application->Run();

}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
else
{
Application->MessageBox("Application Already Run!","Warnning", MB_OK|MB_ICONWARNING);
}
ReleaseMutex(hMutexHandle);
CloseHandle(hMutexHandle);
return 0;

}
binbin 2002-12-27
  • 打赏
  • 举报
回复
findwindow
互斥量
注册热键
...
bcbsoft 2002-12-27
  • 打赏
  • 举报
回复
在《C++Builder深度历险》这本书中有很详细的说明

以下工程.H文件:可以实现已运行的程序在最小化时再运行第二个时还原第一个程序。。。。。
#include <vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
USEFORM("Unit1.cpp", Form1);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
HWND AppWnd=FindWindow("TApplication","Shally Title");
if(AppWnd)
{
if(IsIconic(AppWnd))
{
ShowWindow(AppWnd,SW_RESTORE);
}
else
{
SetForegroundWindow(AppWnd);
}
return 0;
}

try
{
Application->Initialize();
Application->Title="Shally Title";
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
//---------------------------------------------------------------------------
AeLord 2002-12-27
  • 打赏
  • 举报
回复
知道怎么办了。:)
invalid 2002-12-27
  • 打赏
  • 举报
回复
老问题了,搜索吧,关键字实例应该可以的。

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧

手机看
关注公众号

关注公众号

客服 返回
顶部