一、不生成具有強名稱的程式集
1.使用下面這兩個命令將com控制項轉換成.net程式集
aximp c:/windows/system/shdocvw.dll
tlbimp mshtml.tlb
aximp將產生兩個檔案:axshdocvw.dll and shdocvw.dll.
tlbimp將產生mshtml.dll,它包含了3000多個 dhtml dom的介面,所以轉換可能需要一些時間.
2. 上面產生的dll檔案直接可由.net應用程式呼叫了。
二、生成具有強名稱的程式集
1.用sn 命令生成三個snk檔案,分別是後面將要生成的程式集的金鑰檔案
sn –k axshdoc.snk
sn –k shdocvw.snk
sn –k mshtml.snk
2.使用上面aximp 和 tlbimp 生成這三個程式集檔案,這些命令加上/keyfile:可選項
aximp c:/windows/system/shdocvw.dll /keyfile:axshdoc.snk shdocvw.snk
tlbimp mshtml.tlb /keyfile:mshtml.snk
這樣就可以生成具有強名稱的程式集了。
3.把它們加到程式集快取中,分別呼叫
gacutil axshdocvw.dll
gacutil shdocvw.dll
gacutil mshtml.dll
開啟全域性程式集快取,就可以看到這三個程式集已經在列表中了。
在c:/winnt/assembly也可以看到了。
using system;
using system.drawing;
using system.collections;
using system.componentmodel;
using system.windows.forms;
using system.data;
using mediaplayer;
namespace advanceplayer
/**
/// 清理所有正在使用的資源。
///
protected override void dispose( bool disposing ) }
base.dispose( disposing );
} windows 窗體設計器生成的**#region windows 窗體設計器生成的**
/**
/// 設計器支援所需的方法 - 不要使用**編輯器修改
/// 此方法的內容。
///
C 呼叫ActiveX控制項
背景 最近專案中需要用到activex控制項,專案是在.net平台下開發的。因此就直接在專案中新增了對activex控制項的引用,新增引用成功。在 中例項化類的例項也沒有問題,但在呼叫其方法或屬性時總是丟擲 未處理 comexception 異常。方法一 1 在系統中註冊該ocx控制項,命令 reg...
c 實現的ActiveX控制項
雖然應用範圍有限,但也算是一種嘗試吧。using system.runtime.interopservices namespace actwsz classinte ce classinte cetype.autodual public class acttest iact public strin...
C 整合ActiveX控制項
問題描述 最近專案中需要用到activex控制項,專案是在.net平台下開發的。因此就直接在專案中新增了對activex控制項的引用,新增引用成功。在 中例項化類的例項也沒有問題,但在呼叫其方法或屬性時總是丟擲 未處理 comexception 異常。解決方法,按照以下步驟 1.註冊activex控...