-1

dpinst.exe /u .\\foldername\\foldername\\inffile.inf \dを使って電話したいshellexecuteEX。これを行う方法。申し訳ありませんが、複数のパラメータと混同しています。そして、私は動作していない以下のコードを試しました。

hExecInfo.lpParameters = TEXT ("/u .\\dist\\Driver\\inffile.inf /d");
ShExecInfo.lpFile = TEXT (".\\dist\\dpinstx86.exe");

それを機能させる方法は?

4

2 に答える 2

1

.exe ファイルを実行するときは、実際にはCreateProcess()の代わりに使用する必要がありますShellExecute/Ex()

STARTUPINFO si = {sizeof(STARTUPINFO), 0};
PROCESS_INFORMATION pi = {0};

TCHAR szCmdLine[] = TEXT(".\\dist\\dpinstx86.exe /u .\\foldername\\foldername\\inffile.inf \d");

if (CreateProcess(NULL, szCmdLine, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi))
{
    CloseHandle(pi.hThread);
    CloseHandle(pi.hProcess);
}
于 2012-08-29T00:04:40.133 に答える
1

掲載漏れはcbSizeメンバーの設定:

shExecInfo.cbSize = sizeof(shExecInfo);

これは必須です (また、s を受け入れる他の WINAPI 関数では非常に一般的ですstruct)。

于 2012-08-28T16:41:34.723 に答える