我想簡單的通過CreateDispatch
調用創建一個OLE EXE服務器的實例,但顯然不是因爲我的當前目錄是不正確的故障工作時。我得到的錯誤是「服務器初始化失敗」。我調試了CreateDispatch
的代碼,發現它有三件事。如何設置當前目錄中的OLE自動化服務器
- 的CoCreateInstance //在我的情況下,這個成功
- OleRun //這失敗在我的情況,錯誤 '服務器執行失敗'
- 的QueryInterface IDispatch的
我試圖啓動進程通過CreateProcess
很好,但如果我不提供在其第八參數正確CurrentDirectory
這顯然意味着,在我的情況CurrentDirectory
是不正確的,我要提供它得到它的工作失敗。
我知道父母的CurrentDirectory
是當父母試圖生成一個進程傳遞。所以,我試圖通過SetCurrentDirectory
API調用將父母的CurrentDirectory
更改爲合適的目錄。這在CreateProcess
的情況下工作,但在CreateDispatch
的情況下不起作用,給我同樣的錯誤,並在內部調用相同的OleRun
失敗。
沒有任何人有任何想法我怎麼可以使用currentDirectory傳遞給CreateDispatch
?還是有解決方法?