2009-07-16 10 views

答えて

0

あなたが名前のMutexを使用することができ、プログラムの複数のインスタンスを実行しないようにするには。

this questionを参照してください。同じことをWindows Mobileに適用する必要があります。

あなたのプログラムにリセットをかけるのはどういう意味かわかりませんが、デバイスを再起動することを意味する場合は、KernelIoControlの機能を見てみてください。 p/invoke KernelIoControlの詳細については、こちらをご覧ください。

[DllImport("coredll.dll")] 
public static extern int KernelIoControl(int dwIoControlCode, 
             IntPtr lpInBuf, 
             int nInBufSize, 
             IntPtr lpOutBuf, 
             int nOutBufSize, 
             ref int lpBytesReturned); 

//.. and the invocation.. 
int retBytes = 0; 
// Reboot device 
KernelIoControl(((0x101 << 16) | (15 << 2)), IntPtr.Zero, 0, IntPtr.Zero, 0, ref retBytes); 
1

まず、あなたのプログラムが既に(すなわち。名前のミューテックスを)のWinMainに名前付きオブジェクトを作成し、実行している場合、作成が成功した場合、それならば、あなたのプログラムの実行中の他のインスタンスは、存在しないチェックしますそれが存在するために失敗すると、実行中のプログラムの別のインスタンスがあることがわかります。その場合、使用のFindWindow(http://msdn.microsoft.com/en-us/library/aa929233.aspx)では、アプリケーションのウィンドウを検索し、あなたがネットCF持っている場合は、ちょうどSetForegroundWindowを経由してフォアグラウンドにこのことができます(http://msdn.microsoft.com/en-us/library/aa923858.aspx

希望...

1

を持ってきてフレームワークのアプリケーション、ビデオをどのように歩くか、これを行う方法をテストします。 link text

おかげで、 マイク

関連する問題