using System.Diagnostics; using System.Text.Json; using Windows.Foundation; using XFEEDToolBox.Controls; using XFEEDToolBox.Core.Presentation; using XFEEDToolBox.Views; namespace XFEEDToolBox; public partial class App { // Exercises this application's real controls off-screen; no OS input or game commands. private static async Task RunWorkspaceProbeAsync(string reportPath) { var directory=Path.GetDirectoryName(Path.GetFullPath(reportPath))!;Directory.CreateDirectory(directory); object? navigation=null,materials=null,editor=null,header=null,translation=null;string? failure=null; var initialSystem=Runtime.Player.Navigation.CurrentSystemAddress;var initialArrival=Runtime.Player.Navigation.LastJumpAt; static void Require(bool value,string message){if(!value)throw new InvalidOperationException(message);} async Task Open(Type type) { AppShellPage.Current!.Navigate(type);await Task.Delay(200);var page=AppShellPage.Current.CurrentPage!;page.UpdateLayout();return page; } try { MainWindow.AppWindow.Move(new(-30000,-30000));MainWindow.AppWindow.Show(false);await Task.Delay(150); var page=(NavigationPage)await Open(typeof(NavigationPage)); using var suppressGamePlanning=page.SuspendRouteSubmissionForProbe(); var map=(GalaxyMapView)page.FindName("Map");map.RenderNowForProbe(); var alreadyThere=ViewModel.NavigationDestination.Trim().Equals(Runtime.Player.SystemName,StringComparison.OrdinalIgnoreCase); if(alreadyThere) { try{await ViewModel.ValidateNavigationStartAsync();throw new InvalidOperationException("Arrived destination incorrectly accepted a start.");} catch(InvalidOperationException error)when(error.Message.Contains("已抵达")){ } } else await ViewModel.ValidateNavigationStartAsync(); var buttons=Descendants(page).OfType