当前位置:  编程技术>c/c++/嵌入式

wince程序防止创建多个实例实现互斥作用

    来源: 互联网  发布时间:2014-10-23

    本文导语:  流程:1、在程序初始化的时候创建互斥量2、检测互斥量返回的错误代码,看是否已存在这个互斥量3、若已存在相同的互斥量,则释放创建的互斥句柄,并复位互斥量,然后,退出该程序 具体代码如下: 代码如下://创建互斥...

流程:
1、在程序初始化的时候创建互斥量
2、检测互斥量返回的错误代码,看是否已存在这个互斥量
3、若已存在相同的互斥量,则释放创建的互斥句柄,并复位互斥量,然后,退出该程序

具体代码如下:

代码如下:

//创建互斥量
HANDLE m_hMutex = CreateMutex(NULL, FALSE, _T("D3GPhoneDlg"));
// 检查错误代码
if (GetLastError() == ERROR_ALREADY_EXISTS){
// 如果已有互斥量存在则释放句柄并复位互斥量
CloseHandle(m_hMutex);
m_hMutex = NULL;
::PostMessageW(HWND_BROADCAST, WM_D3GPHONEDLG_MSG, 1, 2);// 通知已打开的程序,激活窗口
// 程序退出
CDialog::OnCancel();
}
// *** 【EOF】防止程序创建多个实例 ***

这段代码在wince 的MFC程序中测试通过,放到程序的OnInitDialog()函数中。

大家在测试的时候,可以先把激活窗口的那句注释掉


    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 救救救!!为什么我用mount命令把我的hda1挂到我/mnt/winc之后重新启动之后,winc里面为空??还要重新mount过!!大家说为什么啊?
  • Linux和WinCE相比,开发出来的软件系统性能会有多大差别?
  • 那位高手知道那里有能在ipaq上运行的虚拟机下载?(能支持wince 3.0最好了)
  • WinCE改linux
  • WinCE开发工具 CeGCC
  • wince BSP 定制及驱动程序配置说明
  • 【★0分资源共享 之 android/linux/wince技术资料★】
  • wince禁止程序标题栏上的退出按钮示例
  • 小弟之前学过wince驱动,想入们linux驱动
  • 谁能帮我一下100分:在PDA的WinCE平台上,用JAVA语言开发程序,为什么不能在label,button显示汉字呢?却能在textarea中显示汉字呢!!!
  • 【★★★0分资源共享 之 android/linux/wince技术资料★★★】
  • 获取wince mac地址与IP地址解决方案


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3