現在、ユーザーが指定したプログラムを起動するプログラムに取り組んでいます。渡されるのは、ユーザーが入力したwstringです。私の質問は、どうすれば例外をスローするか、「passedIn」が有効かどうかを確認する方法です。現在、ユーザーが「notepad.exe」と入力すると正しく起動しますが、「asdf」などの偽物を入力すると、プロセスが作成されます。
try {
wchar_t* commandLine = new wchar_t [CP_MAX_COMMANDLINE];
wcsncpy_s(commandLine, CP_MAX_COMMANDLINE, passedIn.c_str(), passedIn.size() +1);
CreateProcess(NULL,
commandLine,
NULL, NULL,
false,CREATE_NEW_CONSOLE,NULL,
NULL,
&sinfo,
&pi);
delete [] commandLine;
}
catch (int e) {
cout << "An exception occurred. Exception Nr. " << e << endl;
}
私は自分の漁獲量がそれをつかむことを望んでいましたが、そうではありません。それが有効かどうかを確認するために私ができることはありますか?
ありがとう!