介紹
本教程的目的是告訴你如何使用ATL建立一個COM伺服器,並使用Visual C++ 和Visual Basic程式來分別調用這個伺服器。我並不想深入探討COM的細節,也不想讓你深陷 於IDL之中。這一教程只是為VC++的新手程式員設計的,告訴他們利用ATL來建立一個COM對象 有多麼簡單,並讓他們能對ATL產生更多的興趣。
第1步:啟動ATL COM Wizard
你所需要做的第一件事情就是啟動Visual C++並建立一個新的工程,選擇 “ATL COM Wizard”,工程名為“Simple_ATL”。設定好工程的路徑 之後,單擊OK按鈕。你會看到,螢幕上給了你若干選項。第一個選項為“Server Type”。我們將要建立一個伺服器DLL,所以請確認伺服器的類型選為“Dynamic Link Library”。我們並不需要關心下面的其它三個複選框,所以我們可以將它們忽略 掉。按下Finish按鈕,這樣嚮導就會為你產生適當的檔案了。之後,一個“New Project Information”視窗就會出現,你可以從上面得知嚮導都會建立什麼檔案,按 下“OK”接受這一切。
第2步:建立一個新的ATL對象
請確認你能 在VC++的IDE中看到Workspace View,如果不能的話則請單擊“View”菜單,然後 選擇“Workspace”。在這個視圖中你會看到三個選項卡,請單擊 “ClassView”欄,你應該會看到“Simple_ATL Classes”。請在此右 擊滑鼠鍵,並在快顯功能表中選擇“New ATL Object”,你將會看到下面這樣的窗 口:
預設的選擇項“Simple Object”就是我們所 要的了,請單擊next按鈕,你會來到“ATL Object Wizard Properties”視窗中 。在“Short Name”文字框中輸入“First_ATL”。請注意,這時候向 導就會自動地填寫其它的文字框。然後,單擊頂部的“Attributes”標籤,在這 裡你需要做一些選擇。第一項執行緒模式(Threading Model)的選擇,我們選擇預設的單元( Apartment)模型。對於介面(Interface),我們選擇雙重(Dual)。最後,因為我們的程 序與彙總(Aggregation)無關,所以我們選擇“No”的選項按鈕。你不必關心底 部的三個複選框,直接單擊OK就可以了,這時候嚮導就會為我們建立一個新的ATL簡單對象。