protected override void ProcessRecord() { try { if (string.IsNullOrEmpty(ConsoleName)) { WriteObject(GetLocalSandboxObject()); } else { string url = "https://" + ConsoleName + ":11443"; var result = WdpConnections.GetXboxLiveSandboxAsync(url, UserName, Password).Result; WriteObject(result, false); } } catch (AggregateException ex) { var innerEx = ex.InnerException; var deviceEx = innerEx as DevicePortalException; if (deviceEx != null) { WriteError(new ErrorRecord(ex, $"Get-XblSandbox failed, reason: {deviceEx.Reason}, code: {deviceEx.StatusCode}", ErrorCategory.InvalidOperation, null)); } else { WriteError(new ErrorRecord(innerEx, "Get-XblSandbox failed: " + innerEx.Message, ErrorCategory.InvalidOperation, null)); } } catch (Exception ex) { WriteError(new ErrorRecord(ex, "Get-XblSandbox failed: " + ex.Message, ErrorCategory.InvalidOperation, null)); } }