1、用C#編寫一個COM組件緩存
1. 打開Visual Studio2008,[文件]->[新建]->[項目]spa
2. 項目類型=Visual C#,模版=類庫,名稱=MyCom,解決方案=MyCom,點擊[肯定]命令行
3. 編輯Main.cs3d
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MyCom { public interface MyInterface { int add(int a, int b); string sayHello(string msg); string mergeString(string a, string b); } public class MyClass : MyInterface { public int add(int a, int b) { return a + b; } public string sayHello(string msg) { return "Hello, " + msg; } public string mergeString(string a, string b) { return a + b; } } }
4. 編輯AssemblyInfo.cs文件code
將assembly:ComVisible(false)改成trueblog
// 將 ComVisible 設置爲 false 使此程序集中的類型 // 對 COM 組件不可見。若是須要從 COM 訪問此程序集中的類型, // 則將該類型上的 ComVisible 屬性設置爲 true。 [assembly: ComVisible(true)]
在[應用程序]選項卡中點擊[程序集信息…]開發
勾上[使程序集COM可見],而後點擊[肯定]string
在[生成]選項卡上勾上[爲COM互操做註冊]it
在[簽名]選項卡中勾上[爲程序集簽名],選擇下拉框中的<新建…>io
祕鑰文件名稱=MyCom,去掉[使用密碼保護密鑰文件]的勾,點擊[肯定],最後保存
6. 生成Dll,tld文件,選擇菜單欄上的[生成]->[生成MyCom],進入項目的根目錄下的bin\Debug目錄會發現MyCom.dll, MyCom.pdb, MyCom.tlb文件已經生成
7. 註冊MyCom.dll文件,進入SDK命令行,CD到MyCom工程的根目錄下的bin\Debug目錄
而後運行regasm MyCom.dll /tlb:MyCom.tlb命令
下面用regedit命令進入註冊表,查看HKEY_CLASSES_ROOT下的MyCom.MyClass已經存在了,則說明已經完成註冊。
再繼續運行gacutil –i MyCom.dll將程序集添加到緩存中
到此爲止MyCom這個COM組件的開發已經完成了。