让程序只运行一个实例
一个串口应用程序,我不想让它运行多个实例,于是在网上搜了一下解决的办法。
方法很多见:http://tieba.baidu.com/f?kz=558310855
其中的第三种方法见:http://blog.csdn.net/churenxh/archive/2008/12/09/3483002.aspx
其中的第三种方法,如果已有实例在运行会将该实例窗口弹出。 这功能挺好,但有点小麻烦。 后面想到使用CreateMutex()互斥量来判断是否存在程序实例,再使用FindWindow()来找到该的窗口,然后将窗口显示,这样一来不算麻烦的可以完成第三种方法的功能了。
代码示例:
在CTesterApp::InitInstance()中的CWinApp::InitInstance();之前加入如下代码即可。
哈哈。。。 这是我blog中的第二篇文章, 是第一篇原创。。。2010-08-17 10:55:02 记下这个时间先!