2011-10-25 77 views
0

爲了依靠接口,我試圖編寫一個測試項目來實現IDispatch接口。 到目前爲止我:IDL和C++源文件之間的關係

  • 建立在Visual Studio 2010
  • 一個MFC DLL項目寫了下面的IDL

    [ uuid(68B0FAE7-3828-415D-94B0-720A007311FF), version(1.0) ] 
    library Test 
    { 
    importlib("stdole32.tlb"); 
    importlib("stdole2.tlb"); 
    [ 
        uuid(DD35D282-ABEF-4411-B3D1-B4FD848516A5) 
    ] 
    
    interface _Test : IDispatch 
    { 
    
    }; 
    }; 
    

創建了一個名爲Test.h C頭文件,但我徘徊如何我宣佈這是與IDL鏈接。任何幫助或hello世界的教程將是偉大的。由於

+1

創建.idl文件後,您需要使用MIDL編譯器創建通訊對象頭文件和代理文件。 –

+2

Test.h是IDL文件的產品。隨着類型庫和代理/存根代碼,可選。現在你需要實現*實現接口的方法。這需要先添加一些。您將IDispatch實現留給庫存實現,如ATL的IDispatchImpl。 –

回答

1

你行你的

  • MIDL編譯器

    它能夠在C產生頭/源(或C++?不記得了),但最重要的是會得到你一個類型庫(TLB)文件

  • #import directive

    將生成的類型庫內容C++定義。

相關問題