C++ cli 为什么在通过CLI调用exe文件时,如果从VS启动相同的exe工作正常,会出现错误? 我在C++中编写了一个控制台应用程序,它是通过GUI(C语言)启动的。

C++ cli 为什么在通过CLI调用exe文件时,如果从VS启动相同的exe工作正常,会出现错误? 我在C++中编写了一个控制台应用程序,它是通过GUI(C语言)启动的。,c++-cli,C++ Cli,当我在VisualStudio中启动控制台应用程序并使用硬编码参数时,它工作正常。但是如果我通过GUI启动应用程序,那么它就不能工作。然后我得到错误“System.InvalidOperationExecution” 控制台应用程序的主要功能中的代码如下所示: int main(int argc, const char** argv) { JtkEntityFactory::init(); JtkEnvironment::setOption(JtkEnvironment::JtkLAYER_M

当我在VisualStudio中启动控制台应用程序并使用硬编码参数时,它工作正常。但是如果我通过GUI启动应用程序,那么它就不能工作。然后我得到错误“System.InvalidOperationExecution”

控制台应用程序的主要功能中的代码如下所示:

int main(int argc, const char** argv) {

JtkEntityFactory::init();
JtkEnvironment::setOption(JtkEnvironment::JtkLAYER_MANAGER_ENABLE, 1);
JtkEntityFactory::registerCustomer(xyz);

//argv[1] = "A:\\CLASH_ROOT\\DATEN\\ab_12380920987_223.cojt\\ab_12380920987_223.jt";
//argv[2] = "4.6";
//argv[3] = "-262.5689";
//argv[4] = "-812.7128";
//argv[5] = "785.71";
//argv[6] = "0";
//argv[7] = "0";
//argv[8] = "0";
//argv[9] = "0";
//argv[10] = "0";
//argv[11] = "0";

float diameter = std::stof(argv[2]);
float pointCoordsX = std::stof(argv[3]);
float pointCoordsY = std::stof(argv[4]);
float pointCoordsZ = std::stof(argv[5]);
float translationX = std::stof(argv[6]);
float translationY = std::stof(argv[7]);
float translationZ = std::stof(argv[8]);
float rotationX = std::stof(argv[9]);
float rotationY = std::stof(argv[10]);
float rotationZ = std::stof(argv[11]);

JtkEntityPtr<JtkCADImporter> importer;
importer = JtkEntityFactory::createCADImporter();
importer->ref();
if (importer) {
    JtkEntityPtr<JtkHierarchy> root;
    root = importer->import(argv[1]);
    root->ref();
    ...}
    private int CMDAutomate(string strApp, string Kommando){
    int result = 0;

    if (!File.Exists(strApp)){
        return result = 3;
    }
    Process proc = new Process();

    proc.StartInfo.FileName = strApp;
    proc.StartInfo.Arguments = Kommando;
    proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

    proc.Start();

    proc.WaitForExit();

    result = proc.ExitCode;

    proc.Close();

    return result;
}
我传递的参数是:

strApp = "C:\Users\gigatd\source\repos\Para_Chut\GUI\bin\Debug\Para_Chut.exe"
Kommando = "A:\CLASH_ROOT\DATEN\ab_12380920987_223.cojt\ab_12380920987_223.jt" "4.5" "405.146" "-669.978" "1362.57" "0" "0" "0" "0" "0" "0"
有人能告诉我如何正确调用应用程序吗

提前谢谢