⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 单实例问题.txt

📁 C&C++论坛精华
💻 TXT
字号:
作者:rick1126
email: rickzhang@sina.com
日期:8/6/2001 9:55:10 PM
单实例问题目前主要就是一个是应用程序的不可重入, 另一个就是函数的不可重入.

1. 应用程序的不可重入
1) FindWindow
   使用FindWindow( 类名, 标题 )可以保证那些使用主窗口的应用程序的单实例, 不过有时候因为标题用来表示某些动态信息显得不是很牢靠, 而且类名也往往是共享的, 使用Spy++就可以知道

2) CreteMutex
   在应用程序的入口使用CreateMutex( 安全属性结构指针, 是否手动重置事件句柄布尔变量, 初始化是否是被标记的返回一个全局句柄布尔变量, 句柄名称 )创建一个唯一信号量句柄, 退出的时候使用CloseHandle( 句柄 ). 当应用程序重入的时候利用OpenMutex就可以检测当前的应用程序是否已经被启动了, 这种方法比较保险.

2. 函数的不可重入
1) 线程互斥
   一般使用CMutex或者和上面的CreateMutex一样创建一个互斥量就可以保证线程函数之间的互斥调用
2) 重入限制
   使用一个static BOOL 变量可以防止函数重入

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -