我想在我的VC++應用程序中使用任務對話框。我能夠使用TaskDialog或TaskDialogIndirect成功創建任務對話框,並且在Vista中可以正常工作。但是,我希望我的應用程序能夠在Windows XP上工作,並且由於Windows XP不支持任務對話框,我創建了一個我自己想要使用的對話框,以便在操作系統是XP的情況下使用。VC++應用程序 - 在Windows XP中使用TaskDialog和fallback
所以我的代碼確實是這樣的:如果 操作系統是Vista或更高: 顯示TaskDialog其實 其他 顯示我自己的對話框
現在,應用程序仍然無法在Windows XP中工作。當我嘗試在XP上啓動應用程序時,出現錯誤「序號345無法位於動態鏈接庫comctl32.dll中」。 這可能是因爲在我的代碼中調用了TaskDialogIndirect,雖然調用在if塊中。在加載應用程序時,它會嘗試在comctl32.dll中找到該函數,並且它找不到它,因爲它是dll的XP版本。
所以我的問題是:
如何編寫我的應用程序,使其成功地運行在XP和Vista,以及XP的情況下,Vista的情況下表現出我自己的對話框,而和更高的顯示任務對話?