私は奇妙な問題に直面しています。 RunOnceキー(HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ RunOnce)に登録する実行ファイル(Exe1)があります Exe1は次回の再起動時に実行されます。 Exe1では、別の実行可能ファイル(Exe2)を起動するためにProcess.Start()を使用しています。構文はProcess.Startが2回実行されます
string Installer = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + @"\Exe2.exe";
Process.Start(Installer);
奇妙なことに、Exe2は時々2回起動されることがあります。私はどのように把握することができません。 Exe1は起動時に一度だけ起動されます。私は確信しています - 私はこれらの手順を取っています。
- 私はミューテックスを使用していますが、Exe1が存在する場合は、Process.Start()を呼び出す前にそのmutexが存在します。 私はProcess.Start()を呼び出す前に、ログを書いて
- が - それはまたEXE2がすでにProcess.GetProcessesて歩いてProcess.Start()の前に実行されている場合、一度だけ
- 私もチェックしています記録しています()
これにもかかわらず、Exe2は2回起動されます。これは、再起動時にRunOnceから起動したときに発生します。私はExe1を直接起動しても起こりません。
は、それがあなたの問題に十分に近いかもしれないので、私は私が遭遇した問題に話すだろう任意のヘルプや有用な情報
'Exe1が起動時に一度だけ起動された場合は、' Process.Start(Installer);を2回呼び出すように見えます - 私はあなたの場所ログに 'UniqueProcessId'と表示されます。打ち上げプロセス – RbMm