Boo.Lang.Compiler.Steps.PEVerify.Run C# (CSharp) Метод

Run() публичный Метод

public Run ( ) : void
Результат void
        public override void Run()
        {
            #if !NO_SYSTEM_DLL
            if (Errors.Count > 0)
            {
                return;
            }

            string command = null;
            string arguments = string.Empty;

            switch ((int) System.Environment.OSVersion.Platform)
            {
                case (int)System.PlatformID.Unix:
                case 128:// mono's PlatformID.Unix workaround on 1.1
                    command = "pedump";
                    arguments = "--verify all \"" + Context.GeneratedAssemblyFileName + "\"";
                    break;
                default: // Windows
                    command = "peverify.exe";
                    arguments = "\"" + Context.GeneratedAssemblyFileName + "\"";
                    break;
            }

            if (null == command)
            {
                Errors.Add(new CompilerError(Boo.Lang.ResourceManager.GetString("BooC.VerifyPipelineUnsupported")));
                return;
            }

            try
            {
                Process p = Boo.Lang.Builtins.shellp(command, arguments);
                p.WaitForExit();
                if (0 != p.ExitCode)
                {
                    Errors.Add(new CompilerError(Boo.Lang.Compiler.Ast.LexicalInfo.Empty, p.StandardOutput.ReadToEnd()));
                }
            }
            catch (System.Exception e)
            {
                Warnings.Add(new CompilerWarning("Could not start " + command));
                _context.TraceWarning("Could not start " + command +" : " + e.Message);
            }
            #endif
        }
PEVerify