示例#1
0
        public static InvokeChildProcess.StartInfo GetProcessStartInfo([NotNull] InvokeChildProcess.PipeStreams pipeStreams,
                                                                       [NotNull] VirtualFileSystemPath cmd, [CanBeNull] VirtualFileSystemPath workindDir, params string[] args)
        {
            var command     = GetPlatformCommand(cmd);
            var commandLine = GetPlatformCommandLine(cmd, args);

            var startInfo = new InvokeChildProcess.StartInfo(command.ToNativeFileSystemPath())
            {
                Arguments        = commandLine,
                Pipe             = pipeStreams,
                CurrentDirectory = workindDir?.ToNativeFileSystemPath()
            };

            return(startInfo);
        }
示例#2
0
 private Task <uint> StartUBTBuildPluginAsync(Lifetime lifetime, FileSystemPath command,
                                              CommandLineBuilderJet commandLine, InvokeChildProcess.PipeStreams pipeStreams)
 {
     InvokeChildProcess.StartInfo startinfo = new InvokeChildProcess.StartInfo(command)
     {
         Arguments = commandLine,
         Pipe      = pipeStreams
     };
     lock (HACK_getMutexForUBT())
     {
         return(InvokeChildProcess.InvokeCore(lifetime, startinfo,
                                              InvokeChildProcess.SyncAsync.Async, myLogger));
     }
 }