-1

Windowsでボタンがクリックされたときに.jarファイルを開きたい。私は次のコードを持っています:

private: System::Void btnStartServer_Click(System::Object^  sender, System::EventArgs^  e) {
    STARTUPINFO si;
    PROCESS_INFORMATION pi;
    int spi=sizeof(pi);
    int ssi= sizeof(si);
    ZeroMemory( &si, sizeof(si) );
    si.cb=sizeof(STARTUPINFO); //sizeof(si);
    ZeroMemory( &pi, sizeof(pi) );

    char b = 0;
    b = CreateProcess("C:\\Program Files\\Java\\jre7\\bin\\java.exe ", "-jar craftbukkit.jar", NULL, NULL, 0, CREATE_NO_WINDOW, NULL, NULL, &si, &pi);

    btnStartServer->Text = String::Format(L"{0}", b);
}

しかし、ボタンを押すと、ボタンのテキストが「1」に変わりますが、TaskMenagerに「java」というプロセスが表示されません。

.jarファイルを開いて出力を読み取り、入力を与える方法を知っている場合は、「C ++で.jarファイルを開いて出力を読み取り、入力を与える方法」と答えていただければ幸いです。。

どんな助けでもいただければ幸いです。

4

1 に答える 1

0

やっと直せました!の2番目の引数に何かを追加する必要がありましたCreateProcess

b = CreateProcess("C:\\Program Files\\Java\\jre7\\bin\\java.exe ", "java -Xms1024M -Xmx1024M -jar craftbukkit.jar -o true", NULL, NULL, 0, CREATE_NO_WINDOW, NULL, NULL, &si, &pi);
于 2013-03-13T19:09:11.803 に答える