日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
C#COM接口轉(zhuǎn)換經(jīng)驗(yàn)總結(jié)

本文向大家介紹C# COM接口轉(zhuǎn)換,可能好多人還不知道C# COM接口轉(zhuǎn)換,沒(méi)有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會(huì)你更多東西。

成都網(wǎng)站建設(shè)、網(wǎng)站制作中從網(wǎng)站色彩、結(jié)構(gòu)布局、欄目設(shè)置、關(guān)鍵詞群組等細(xì)微處著手,突出企業(yè)的產(chǎn)品/服務(wù)/品牌,幫助企業(yè)鎖定精準(zhǔn)用戶,提高在線咨詢和轉(zhuǎn)化,使成都網(wǎng)站營(yíng)銷成為有效果、有回報(bào)的無(wú)錫營(yíng)銷推廣。創(chuàng)新互聯(lián)專業(yè)成都網(wǎng)站建設(shè)十年了,客戶滿意度97.8%,歡迎成都創(chuàng)新互聯(lián)客戶聯(lián)系。

C#中不僅支持.Net 平臺(tái),而且支持COM平臺(tái)。為了支持 COM和.Net,C# 包含一種稱為屬性的獨(dú)特語(yǔ)言特性。一個(gè)屬性實(shí)際上就是一個(gè) C# 類,它通過(guò)修飾源代碼來(lái)提供元信息。屬性使 C# 能夠支持特定的技術(shù),如 COM 和 .Net,而不會(huì)干擾語(yǔ)言規(guī)范本身。C# 提供將COM接口轉(zhuǎn)換為 C#接口的屬性類。另一些屬性類將C# COM接口轉(zhuǎn)換為C# 類。執(zhí)行這些轉(zhuǎn)換不需要任何 IDL 或類工廠。

現(xiàn)在部署的任何COM 組件都可以在接口轉(zhuǎn)換中使用。通常情況下,所需的調(diào)整是完全自動(dòng)進(jìn)行的。

特別是,可以使用運(yùn)行時(shí)可調(diào)用包裝 (RCW) 從 .NET 框架訪問(wèn) COM 組件。此包裝將 COM 組件提供的C# COM接口轉(zhuǎn)換為與 .NET 框架兼容的接口。對(duì)于 OLE 自動(dòng)化接口,RCW 可以從類型庫(kù)中自動(dòng)生成;對(duì)于非 OLE 自動(dòng)化接口,開(kāi)發(fā)人員可以編寫自定義 RCW,手動(dòng)將 COM 接口提供的類型映射為與 .NET 框架兼容的類型。

下面是接口轉(zhuǎn)換的C#程序:

 
 
 
  1. using System.Runtime.InteropServices;  
  2. // 聲明一個(gè)COM接口 IMediaControl  
  3. [Guid("56A868B1-0AD4-11CE-B03A-0020AF0BA770"),  
  4. InterfaceType(ComInterfaceType.InterfaceIsDual)]  
  5. interface IMediaControl // 這里不能列出任何基接口  
  6. {  
  7. void Run();  
  8. void Pause();  
  9. void Stop();  
  10. void GetState( [In] int msTimeout, [Out] out int pfs);  
  11. void RenderFile(  
  12. [In, MarshalAs(UnmanagedType.BStr)] string strFilename);  
  13. void AddSourceFilter(  
  14. [In, MarshalAs(UnmanagedType.BStr)] string strFilename,  
  15. [Out, MarshalAs(UnmanagedType.Interface)] out object ppUnk);  
  16. [return : MarshalAs(UnmanagedType.Interface)]  
  17. object FilterCollection();  
  18. [return : MarshalAs(UnmanagedType.Interface)]  
  19. object RegFilterCollection();  
  20. void StopWhenReady();  
  21. }  

【編輯推薦】

  1. C# this關(guān)鍵字詳解
  2. C#調(diào)用析構(gòu)方法詳解
  3. C#釋放托管資源簡(jiǎn)單描述
  4. C#單路代理簡(jiǎn)單分析
  5. C#文法產(chǎn)生式概述

網(wǎng)頁(yè)名稱:C#COM接口轉(zhuǎn)換經(jīng)驗(yàn)總結(jié)
瀏覽路徑:http://www.dlmjj.cn/article/dpgdopo.html