NTサービスプロセスからSQLServer2008SP1エクスプレスインストーラーを起動しようとしています。プロセスは正常に開始され、タスクマネージャーで確認できますが、何も実行されず、彼を殺すまで非アクティブのままになります。
次のコマンドでプロセスを開始しています。
szCmdLine = "Setup.exe /Q /HIDECONSOLE /ACTION=install /CONFIGURATIONFILE=ConfigurationFile.ini /SAPWD=pwd_to_set");
STARTUPINFO si;
si.wShowWindow = SW_HIDE;
...
CreateProcess(NULL, szCmdLine, NULL, NULL, TRUE,
CREATE_NO_WINDOW, NULL, szPath, &si, &pi);
コマンドラインから手動で開始すると、インストールは正常に行われます。
プロセス用にさまざまな作成フラグを試してみましたが、うまくいきませんでした。私はアイデアが不足しているので、すべての助けに感謝します。
同じコードがSQLServer2000のインストールでも問題なく機能したことに注意してください。そして、これはインストールを処理するための奇妙な方法であることを私は知っていますが、それを変更するのは遅れています。
OSはWindowsServer2003SP2です。