rfvgyhn / min-ed-launcher

Minimal Elite Dangerous Launcher
MIT License
251 stars 9 forks source link

Launcher hangs instead of closing ED Route Widget #99

Closed Razwerkz closed 1 year ago

Razwerkz commented 1 year ago

It looks like the launcher can't figure out how to exit Yori Mirano's Elite Dangerous Route Widget.. When Elite exits, the launcher closes EDMarketConnector, but not the Route Widget.

The launcher will hang here until the widget window is closed manually, then it will proceed. The log doesn't indicate one way or the other, only showing that (debug) the close was attempted, and (info) the program has been closed (once the program has been closed manually).

rfvgyhn commented 1 year ago

I'm assuming this is the same issue as #110. Perhaps the widget spawns a new process but doesn't properly shut it down when it receives the WM_CLOSE message.

The launcher should at least shutdown as of f9abbf5. You can try the CI build until there's a new release. Feel free to re-open if the launcher still hangs.

Razwerkz commented 1 year ago

The bootstrap EXE file in the CI build seems to have a typo in the filename (MinEdLauncher.Boostrap.exe). I attempted to run the program after correcting the error.

The launcher seems to have new trouble launching the game.

2023-08-20 15:58:32.491 -04:00 [INF] Elite Dangerous: Minimal Launcher - v0.8.2-ci5913798925+f9abbf52
2023-08-20 15:58:32.599 -04:00 [DBG] 
    Args: [||]
    OS: Win64
    Env: 

2023-08-20 15:58:32.603 -04:00 [DBG] Reading settings from 'C:\Users\razwe\AppData\Local\min-ed-launcher\settings.json'
2023-08-20 15:58:32.837 -04:00 [DBG] Settings: { Platform = Dev
  DisplayMode = Pancake
  AutoRun = false
  AutoQuit = false
  WatchForCrashes = false
  ProductWhitelist = seq []
  ForceLocal = false
  CompatTool = None
  CbLauncherDir =
   "E:\Program Files (x86)\Steam\steamapps\common\Elite Dangerous\"
  PreferredLanguage = None
  ApiUri = https://api.zaonce.net/
  Restart = None
  AutoUpdate = true
  CheckForLauncherUpdates = true
  MaxConcurrentDownloads = 4
  ForceUpdate = set []
  Processes =
   [System.Diagnostics.ProcessStartInfo; System.Diagnostics.ProcessStartInfo;
    System.Diagnostics.ProcessStartInfo; System.Diagnostics.ProcessStartInfo]
  ShutdownProcesses = []
  FilterOverrides =
   seq [[FORC-FDEV-DO-1000, edo]; [FORC-FDEV-DO-38-IN-40, edh4]]
  AdditionalProducts = []
  DryRun = false
  ShutdownTimeout = 00:00:10 }
2023-08-20 15:58:32.853 -04:00 [INF] Elite Runtime
    Platform: Dev
    CobraBay Version: 1.7.6926.10
    Products Dir: E:\Program Files (x86)\Steam\steamapps\common\Elite Dangerous\Products
2023-08-20 15:58:32.868 -04:00 [DBG] Getting machine id
2023-08-20 15:58:32.892 -04:00 [INF] Logging in
2023-08-20 15:58:32.894 -04:00 [DBG] Getting remote time
2023-08-20 15:58:33.727 -04:00 [DBG] Authenticating via Dev
2023-08-20 15:58:33.785 -04:00 [ERR] Unhandled exception: System.NotImplementedException: Arg_NotImplementedException
   at MinEdLauncher.Api.authenticate@142.MoveNext() in D:\a\min-ed-launcher\min-ed-launcher\src\MinEdLauncher\Api.fs:line 168
   at MinEdLauncher.App.authenticate@20-9.MoveNext() in D:\a\min-ed-launcher\min-ed-launcher\src\MinEdLauncher\App.fs:line 22
   at MinEdLauncher.App.login@35-4.MoveNext() in D:\a\min-ed-launcher\min-ed-launcher\src\MinEdLauncher\App.fs:line 36
   at MinEdLauncher.App.run@281-4.MoveNext()
   at MinEdLauncher.App.run@258.MoveNext() in D:\a\min-ed-launcher\min-ed-launcher\src\MinEdLauncher\App.fs:line 281
   at MinEdLauncher.Program.run@65-21.MoveNext()
   at MinEdLauncher.Program.run@63-20.MoveNext() in D:\a\min-ed-launcher\min-ed-launcher\src\MinEdLauncher\Program.fs:line 65
   at MinEdLauncher.Program.run@62-19.MoveNext() in D:\a\min-ed-launcher\min-ed-launcher\src\MinEdLauncher\Program.fs:line 63
   at MinEdLauncher.Program.run@72-22.MoveNext()
   at MinEdLauncher.Program.run@75-23.MoveNext()
   at MinEdLauncher.Program.main(String[]) in D:\a\min-ed-launcher\min-ed-launcher\src\MinEdLauncher\Program.fs:line 76
Razwerkz commented 1 year ago

Disregard that last post--calling MinEdLauncher via Steam works, as opposed to running MinEdlauncher directly.

The launcher works as expected (with the file name edits applied), and is able to close all windows effectively before closing itself.