Code: Select all
Process CurProcess = Process.GetCurrentProcess();
Process[] CurProcesses = System.Diagnostics.Process.GetProcessesByName(CurProcess.ProcessName);
if (CurProcesses.Length > 1)
... // Already running
Bei einem der Benutzer habe ich dies persönlich überprüft: Das Programm wurde tatsächlich nicht ausgeführt, wie sowohl im Task-Manager als auch in der Eingabeaufforderung aufgeführt, obwohl der obige Code anzeigte, dass es ausgeführt wurde. Ich habe ein bisschen herumgespielt und die ausführbare Datei verschoben, bevor ich sie gleich wieder zurück verschoben habe. Als ich dann das Programm erneut ausgeführt habe, wurde nicht mehr fälschlicherweise angezeigt, dass der Prozess ausgeführt wird.
Es scheint, als ob einige Windows-Buchhaltungen zeitweise irgendwie veraltet sind. Das wirklich Ärgerliche ist, dass beide Benutzer berichtet haben, dass das Problem ab und zu beim Neustart weiterhin besteht – es geht fälschlicherweise davon aus, dass es bereits ausgeführt wird, obwohl dies mit Sicherheit nicht der Fall ist.
Das Programm ist ziemlich alt und wurde kürzlich aktualisiert, um auf .NET Framework 4.8 abzuzielen. Ich bin mir nicht sicher, ob das Teil des Problems ist. Ich habe keine ähnlichen Threads gefunden. Vielen Dank für jeden Einblick.
Mobile version