pb程序控制打开两个相同窗口提示
1个回答
2016-11-16 · 知道合伙人软件行家
关注
展开全部
通过CreateMutexA函数创建一个互斥体,然后用GetLastError来获取返回值判断是否重复开启同一个应用。
实现过程:
外部函数声明
Function ulong CreateMutexA (ulong lpMutexAttributes, int bInitialOwner, ref string lpName) library 'kernel32.dll'
Function ulong GetLastError () library 'kernel32.dll'
APP的open事件代码
string ls_mutex_name
long ll_mutex
long ll_err
if handle (GetApplication(),false) <> 0 then
ls_mutex_name = this.AppName
ll_mutex = CreateMutexA (0,0,ls_mutex_name)
ll_err = GetLastError ()
if ll_err = 183 then
messagebox("","程序重复开启")
Halt close
end if
end if
open(w_open)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询