Posted on 2009-09-17 09:08
S.l.e!ep.¢% 閱讀(436)
評論(0) 編輯 收藏 引用 所屬分類:
COM
怎樣向新的ATL項目中添加之間已經做好的COM類
解決了,果然reg文件是必須的
新的ATL項目中添加已經做好的COM類
1.首先要說的是ATL項目中除了COM類,還包括若干個C++類,在一個新的ATL項目中添加已經存在的C++類很簡單,只要選擇“添加”->“現有項”,然后選擇相應C++類的.h和.cpp文件即可。
2.下面將描述怎樣在新的ATL項目中添加已經做好的COM類
(1)已經做好的COM類在磁盤上通常包括四個文件:
當然還要包括.idl文件中關于該COM類定義的部分,注意:一個COM類在idl文件中有兩個地方進行了描述,如下所示:
(2)現將.h和.cpp文件添加到新項目中,然后將原來idl文件中對該COM類描述的兩個部分拷貝到新項目idl文件中的相應位置。編譯,這里可能會出現一些沒有包含頭文件或者包含頭文件錯誤的編譯錯誤,可以根據實際情況進行修改。還有不要忘記根據新項目的項目名稱修改下面的語句(這個語句在.h文件中):
最后會出現一個類似下面的錯誤:
error C2065: “IDR_FEATURES”: 未聲明的標識符
(3)解決上面的錯誤的方法:
用鼠標將原始COM類中的.rgs文件拖動到如下圖所示的位置:
然后用鼠標雙擊剛剛拖入的文件:并根據新項目的項目名稱修改下面的語句
(4)接著右鍵單擊如圖
打開該文件后,添加如下圖所示的語句:
(5)重新編譯新的ATL項目,發現沒有編譯錯誤,大功告成!