private static bool InstallUsePnPUtil(string fileName) { try { var startInfo = new ProcessStartInfo("pnputil", $"-i -a {fileName}") { Verb = "runas", CreateNoWindow = true, UseShellExecute = false, RedirectStandardOutput = true, RedirectStandardError = true, }; var outputBuilder = new AdvanceOutputBuilder(); using (var proc = Process.Start(startInfo)) { proc.OutputDataReceived += (s, e) => { outputBuilder.AppendOut(e.Data); }; proc.ErrorDataReceived += (s, e) => { outputBuilder.AppendError(e.Data); }; proc.Start(); proc.BeginOutputReadLine(); proc.BeginErrorReadLine(); proc.WaitForExit(); outputBuilder.Result.PrintOnLog(ctx); return(proc.ExitCode == 0); } } catch (Exception ex) { OpenApi.Log.Warn(ctx, "failed", ex); return(false); } }
unsafe static int Main(string[] cmdargs) { var builder = new AdvanceOutputBuilder(); var builder2 = new AdvanceOutputBuilder(); builder.ExitCode = 0; builder2.ExitCode = 0; builder.AppendOut("xx"); builder2.AppendOut("xx"); Console.WriteLine(builder.Result.GetHashCode() == builder2.Result.GetHashCode()); Console.ReadKey(); return(0); }