如何在处理开始之前运行批处理文件?

时间:2018-09-04 09:27:41

标签: c# batch-file cmd

我正在尝试使用以下代码启动程序:

private static void RunPlmxml(string plmxmlPath, string arguments) 
{
    Process process = new Process();
    process.StartInfo.Arguments = arguments;
    process.StartInfo.FileName = plmxmlPath;
    process.StartInfo.EnvironmentVariables["TC_ROOT"] = teamcenterRootPath;
    process.Start();
    process.WaitForExit();

    // Other code

    return;
}

这很好,但是我缺少许多环境变量。这些变量在%TC_DATA%\tc_profilevars.bat中设置。我想在开始此过程之前运行此bat文件,以便程序具有所需的所有变量。所以我想做的是这样的:

private static void RunPlmxml(string plmxmlPath, string arguments) 
{
    string teamcenterRootPath = Environment.GetEnvironmentVariable("TC_ROOT");
    string teamcenterDataPath = Environment.GetEnvironmentVariable("TC_DATA");


    Process process = new Process();
    process.StartInfo.Arguments = arguments;
    process.StartInfo.FileName = plmxmlPath;
    process.StartInfo.EnvironmentVariables["TC_ROOT"] = teamcenterRootPath;
    process.StartInfo.EnvironmentVariables["TC_DATA"] = teamcenterDataPath;
    process.StartInfo.BeforeStart("%TC_DATA%\tc_profilevars.bat")

    process.Start();
    process.WaitForExit();

    // Other code

    return;
}

我不想创建另一个开始该过程的蝙蝠文件,因为我不想附带随附的蝙蝠文件来运送我的产品。

0 个答案:

没有答案