示例#1
0
        public string OptionsToStringArgument(BuildPlayerDataGeneratorOptions options)
        {
            string result =
                $"-a \"{string.Join(",", options.Assemblies)}\" -s \"{string.Join(",", options.SearchPaths)}\" -o \"{options.OutputPath}\" -rn={options.GeneratedRuntimeInitializeOnLoadName} -tn={options.GeneratedTypeDbName}";

            return(result);
        }
示例#2
0
        public void ExecuteAsync(BuildPlayerDataGeneratorOptions options)
        {
            Program typeDbGeneratorProcess;
            var     arguments = OptionsToStringArgument(options);

            if (NetCoreRunProgram.IsSupported())
            {
                typeDbGeneratorProcess = new NetCoreRunProgram(buildDataGeneratorPath, arguments, null);
            }
            else
            {
                typeDbGeneratorProcess =
                    new ManagedProgram(MonoInstallationFinder.GetMonoInstallation("MonoBleedingEdge"), null,
                                       buildDataGeneratorPath, arguments, false, null);
            }

            typeDbGeneratorProcess.Start((s, e) =>
            {
                ProcessExit(typeDbGeneratorProcess);
            });
            runningProcesses.Add(typeDbGeneratorProcess);
        }