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

📄 subject_45107.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:45107 发表者:阳光之子 发表日期:2003-06-26 16:10:46
<br>主题:如何禁止一个程序被多次执行?
<br>内容:如何禁止一个程序被多次执行?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:剑剑 回复日期:2003-06-27 17:00:23
<br>内容:BOOL RunUniqueInstance()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;HANDLE hInst=CreateMutex(NULL,TRUE,"Chevaler.Clear");<BR>&nbsp;&nbsp;&nbsp;&nbsp;if (hInst!=NULL)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (GetLastError()==ERROR_ALREADY_EXISTS)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AfxMessageBox("你已启动了该程序!");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CloseHandle(hInst);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ExitProcess(99);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return TRUE;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;return FALSE;<BR>}<BR><BR><BR>把它放在 initinstance上<BR>BOOL CClearMoudleApp::InitInstance()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;AfxEnableControlContainer();<BR>&nbsp;&nbsp;&nbsp;&nbsp;RunUniqueInstance();
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:阳光之子 回复日期:2003-06-29 08:11:20
<br>内容:谢谢yikun,再想问一下:BOOL RunUniqueInstance()放在哪呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:剑月明 回复日期:2003-06-30 00:11:58
<br>内容:放在CXXAPP那吧
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:阳光之子 回复日期:2003-06-30 15:29:02
<br>内容:麻烦大家说清楚些,好吗?我等你们的好消息!!!!!!!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:Sorrow 回复日期:2003-06-30 21:01:33
<br>内容:.h 文件中<BR>...<BR>class CYourApp : public CWinApp<BR>{<BR>public:<BR>...<BR>...<BR>//--- 添加一个访问级别为private的变量<BR>private:<BR>&nbsp;&nbsp;&nbsp;&nbsp;HANDLE m_hSingle;<BR>...<BR>}<BR><BR>.cpp 文件中<BR>...<BR>BOOL CYourApp::InitInstance()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;CString strSingle = "YourAppSingleInstance";<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_hSingle = OpenMutex( MUTEX_ALL_ACCESS, FALSE, strSingle );<BR>&nbsp;&nbsp;&nbsp;&nbsp;//--- m_hSingle 不存在, 正常启动程序, 并创建 m_hSingle<BR>&nbsp;&nbsp;&nbsp;&nbsp;if ( m_hSingle == NULL )<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_hSingle = CreateMutex( NULL, TRUE, strSingle );<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;// m_hSingle 已存在, 显示警告信息, 退出程序<BR>&nbsp;&nbsp;&nbsp;&nbsp;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::AfxMessageBox( "本程序已经在运行中." ,MB_OK | MB_ICONWARNING );<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//--- 终止程序<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return FALSE;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;...<BR>}
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:剑剑 回复日期:2003-07-01 10:21:04
<br>内容:我放在全局函数。楼上的应该也可以,原理也是一样的。给分
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:阳光之子 回复日期:2003-07-01 10:57:40
<br>内容:谢谢大家的帮忙,可分只能给一个人,对不起了,没得到分的朋友!!!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

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