</pre><pre code_snippet_id="430174" snippet_file_name="blog_20140718_5_4634982" name="code" class="csharp">
</pre><pre code_snippet_id="430174" snippet_file_name="blog_20140718_5_4634982" name="code" class="csharp">
</pre><pre code_snippet_id="430174" snippet_file_name="blog_20140718_6_381841" name="code" class="csharp"><pre name="code" class="csharp">WinCE C#程序,控制启动时仅仅能启动一个程序,使用相互排斥量来实现,该实现方法測试通过
<pre name="code" class="csharp">using System.Runtime.InteropServices; [MTAThread] static void Main() { //Application.Run(new Form1()); string strAppName = System.Reflection.Assembly.GetExecutingAssembly().GetName().Name; IntPtr hMutex = CreateMutex(IntPtr.Zero, true, strAppName); if (hMutex == IntPtr.Zero) throw new ApplicationException("Failure creating mutex: " + Marshal.GetLastWin32Error().ToString("X")); if (Marshal.GetLastWin32Error() == ERROR_ALREADY_EXISTS) { MessageBox.Show("程序已经启动"); ReleaseMutex(hMutex); return; } else { Application.Run(new Form1()); return; } }
申明:以上文字为“武汉汉码科技有限公司”原创,转载时务必注明出处。
技术分享,沟通你我,共同进步!www.hanma-scan.com