我在VS 2003中創建了一箇舊的MFC項目,我想將其移植到VS 2010中。該項目使用ActiveX控件來處理網格,即Component One的VSFlexGrid7。問題是,此版本的ActiveX控件在Windows 7中無法正常工作(這正是我所擁有的)。有一個更新版本的網格,即VSFlexGrid8,它應該與Windows 7兼容。如何在MFC對話框中替換/更新ActiveX控件
解決方案是將所有較舊的控件替換爲較新的控件。
我的問題是,更換控件的步驟是什麼,而不涉及項目的其他部分。什麼是最簡單的方法來完成這個?我是否需要修改類,資源ID等?
[解決方法:更換在.RC文件的CLSID]
我的代碼中沒有CreateInstance。我猜MFC通過調用OnInitDialog()函數首次創建對話框時會照顧到這一點。 – mihai
這個組件是如何創建的?你把它拖到對話資源上了嗎? Afaik在這種情況下,這個組件的GUID在資源腳本中。 – xMRi
是的,它是通過將ActiveX控件添加到對話框資源而創建的。我會嘗試更改.RC文件中的ID並查看它是如何工作的。 – mihai