基于構件復用的軟件方法與COM支持[2]

發表于:2008-10-28來源:作者:點擊數: 標簽:COM復用構件軟件
關鍵字: 中間件 virtual HRESULT GetIDsOfNames(REFIID riid,LPOLESTR * rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) = 0; virtual HRESULT Invoke(DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams, VARI ANT *pVa
關鍵字:中間件

  virtual HRESULT GetIDsOfNames(REFIID riid,LPOLESTR *

  rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) = 0;

  virtual HRESULT Invoke(DISPID dispIdMember,REFIID

  riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,

  VARIANT *pVarResult,EXCEINFO *pExcepInfo,

  UINT *puArgErr) = 0;

  };

  在自動化對象中,每一個成員函數均對應一個分發ID(DISPID),服務導航器InVoke就是通過此分發ID建立與目標函數的連接.可以用GetIDsofName實現符號(函數名)到ID的映射.因此,應用程序就有了一個統一的界面來使用組件提供的各項服務.

  對于數據類型的兼容性問題,微軟提供了一個生硬的解決方法.定義一個盡可能"包羅萬象"的大的數據結構VARIANT

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97