3
安裝了Outlook的64位副本,並且32位程序試圖調用MAPIInitialize()。它會失敗,這是可以的,但它也會顯示一個模態消息框並阻止,直到消息框被解除。MAPIInitialize無錯誤消息框
我怎樣才能防止非常無益的消息框出現?
(如果它的事項,我鏈接到mapi32.lib和C++程序調用它。該操作系統是Windows 7)
安裝了Outlook的64位副本,並且32位程序試圖調用MAPIInitialize()。它會失敗,這是可以的,但它也會顯示一個模態消息框並阻止,直到消息框被解除。MAPIInitialize無錯誤消息框
我怎樣才能防止非常無益的消息框出現?
(如果它的事項,我鏈接到mapi32.lib和C++程序調用它。該操作系統是Windows 7)
你的代碼最終調用存根32位的DLL。 你靜態鏈接到mapi32.dll嗎?您需要從Program Files文件夾加載正確的dll。如果dll的位數與您的進程的位數不匹配,LoadLibrary()將返回0,並且GetLastError將爲ERROR_BAD_EXE_FORMAT。
謝謝,它的工作原理。並且可以通過稍微修改此代碼獲取正確DLL的路徑 - http://msdn.microsoft.com/zh-cn/library/bb820994.aspx。 – user38329 2012-02-24 18:15:06