2010-03-22 90 views
1

是否有任何選項可以在窗口操作系統中以c語言從CreateProcess調用msi文件。從CreateProcess調用c中的msi文件

+0

你不能用任何語言「調用」文件。請澄清你在問什麼。 – 2010-03-22 10:00:56

+0

我想在程序運行期間調用msi文件 – Siddiqui 2010-03-22 10:02:06

回答

3

在Windows ShellExecute function將打開一個註冊的類型與正確的應用程序,這是我認爲的一個文件是你在問什麼。

+0

Thaks尼爾爲此信息。 – Siddiqui 2010-03-22 10:15:25

+0

是的,但如果您正在升級客戶端服務器軟件,則這不是最佳選擇,因爲您無法將標誌傳遞給它並且msiexec/q可能是在嘗試在背景環境中更新時防止出現問題的想法服務。即使在XP沒有會話隔離的情況下,您也不希望出現彈出對話框的問題,等待用戶輸入,因爲這是一種糟糕的體驗,尤其是在企業環境中。獲取msiexe的路徑並正確運行。 – Dan 2012-03-22 10:25:03

1

使用msiexec文件名。 (通過這個作爲輸入給CreateProcess)

(參見不同的選擇,MSIEXEC)

+0

@aJ它給我的錯誤。 createprocess失敗(193)。你能否多解釋一下 – Siddiqui 2010-03-22 10:08:54

+0

是否檢查過錯? – 2010-03-22 10:20:30