forked from sim0n00ps/OF-DL
		
	Added exiting if other process is detected, to avoid overlapping runs
This commit is contained in:
		
							parent
							
								
									788dbcc2c6
								
							
						
					
					
						commit
						3d2a5fd282
					
				| @ -22,6 +22,7 @@ using static OF_DL.Entities.Messages.Messages; | |||||||
| using Akka.Configuration; | using Akka.Configuration; | ||||||
| using System.Text; | using System.Text; | ||||||
| using static Akka.Actor.ProviderSelection; | using static Akka.Actor.ProviderSelection; | ||||||
|  | using System.Diagnostics; | ||||||
| 
 | 
 | ||||||
| namespace OF_DL; | namespace OF_DL; | ||||||
| 
 | 
 | ||||||
| @ -118,6 +119,8 @@ public class Program | |||||||
| 
 | 
 | ||||||
| 			AnsiConsole.Write(new FigletText("Welcome to OF-DL").Color(Color.Red)); | 			AnsiConsole.Write(new FigletText("Welcome to OF-DL").Color(Color.Red)); | ||||||
| 
 | 
 | ||||||
|  |             ExitIfOtherProcess(); | ||||||
|  | 
 | ||||||
|             //Remove config.json and convert to config.conf |             //Remove config.json and convert to config.conf | ||||||
|             if (File.Exists("config.json")) |             if (File.Exists("config.json")) | ||||||
|             { |             { | ||||||
| @ -3256,4 +3259,24 @@ public class Program | |||||||
| 
 | 
 | ||||||
|         return Enum.Parse<VideoResolution>("_" + value, ignoreCase: true); |         return Enum.Parse<VideoResolution>("_" + value, ignoreCase: true); | ||||||
|     } |     } | ||||||
|  | 
 | ||||||
|  |     static void ExitIfOtherProcess() | ||||||
|  |     { | ||||||
|  |         Assembly entryAssembly = Assembly.GetEntryAssembly(); | ||||||
|  |         AssemblyName entryAssemblyName = entryAssembly?.GetName(); | ||||||
|  | 
 | ||||||
|  |         if (entryAssemblyName?.Name is null) | ||||||
|  |             return; | ||||||
|  | 
 | ||||||
|  |         Process thisProcess = Process.GetCurrentProcess(); | ||||||
|  |         Process[] otherProcesses = [.. Process.GetProcessesByName(entryAssemblyName.Name).Where(p => p.Id != thisProcess.Id)]; | ||||||
|  | 
 | ||||||
|  |         if (otherProcesses.Length <= 0) | ||||||
|  |             return; | ||||||
|  | 
 | ||||||
|  |         AnsiConsole.Markup($"[green]Other OF DL process detected, exiting..\n[/]"); | ||||||
|  |         Log.Warning("Other OF DL process detected, exiting.."); | ||||||
|  | 
 | ||||||
|  |         Environment.Exit(0); | ||||||
|  |     } | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user