最稳的pk10计划iphone 北京pk10计划手机软件 北京pk10数字的规律 超神手机版pk10软件 pk10北京赛车9码技巧 pk10四期倍投计划表 pk10极速赛车论坛 北京赛车冠军怎样选5码 北京赛车系统下载安装 pk10教程视频 北京pk10选号公式 北京赛车pk10赚钱技巧 北京赛车怎么提升概率 pk10技巧北京快三 北京pk10大小计划
VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
當前位置:
首頁 > 編程開發 > VBnet >
  • vb.net教程之ASP、VB調用.NET編寫的DLL (補充:附上源

  • 2019-06-19 08:49 來源:未知
.NET中的DLL不是動態鏈接庫,而是一個類型庫。要把它作為COM調用需要進行CCW。下面是一個實例。
首先建立一個類庫的項目comLib之后編寫一個接口,COM要調用的對象實現這個接口,和一個實現這個接口的類,如果要在VBASP中用CreateObject創建對象需要有一個沒有參數的構造函數 。代碼如下:
 
using System;
using System.Windows.Forms;
 
namespace comLib
{
    //定義接口,這點很重要 (此接口中的方法與COM組件中的方法一致)
    public interface iClass1
    {
        void Say(string word);
    }
 
    public class Class1 : iClass1
    {
        public void Say(string word)
        {
            MessageBox.Show(word);
        }
    }
}
 
然后運行運行Visual Studio 2005 .net 命令提示符,執行sn –k comLib.snk,生成一個SNK簽名文件comLib.snk
 
      為了使類型在COM中可見需要在AssemblyInfo.cs文件中設置這么一項[assembly: ComVisible(true)]。在些文件中添加一項[assembly: AssemblyKeyFile("文件路徑\\comLib.snk")]
      
       在解決方案資源管理器中選擇工程->單擊右鍵->選擇屬性”->選擇生成選項卡->COM Interop注冊選中,這樣項目造成時就會自動注冊COM組件。
 
       生成項目后,就可以進行COM調用了。這里以VB為例,新建一個EXE工程,添加對comLib.tlb的引用,些文件在bin目錄下。然后使用下面的代碼調用
      
Option Explicit
 
Private Sub Form_Load()
    Dim ic As iClass1
    Set ic = New Class1
    ic.Say "Hello Jerry!"
   
    'ASP中要用這種方式
    Dim a
    Set a = CreateObject("comLib.Class1")
 
End Sub
       運行工程后就會出現個消息框。說明調用成功。
 
       上面的COM注冊是自動注冊但有些時候要手動注冊,比如你做的類型庫要在別的計算機上使用,耍那臺計算機沒有Visual Studio 2005。手動注冊有以下幾個步驟:
 
(1) 使用regasm工具對程序集進行注冊,運行Visual Studio 2003 .net 命令提示,執行regasm comLib.dll /tlb:comLib.tlb          
       (2) 
之后使用gacutil工具將DLL程序集安裝到全局程序集緩存中,也是先運行Visual Studio 2003 .net 命令提示,再執行gacutil /i comLib.dll

 
附上源文件下載:ClsIn.rar
https://files-cdn.cnblogs.com/files/illele/ClsIn.rar
pk10赛车冠军技巧
最稳的pk10计划iphone 北京pk10计划手机软件 北京pk10数字的规律 超神手机版pk10软件 pk10北京赛车9码技巧 pk10四期倍投计划表 pk10极速赛车论坛 北京赛车冠军怎样选5码 北京赛车系统下载安装 pk10教程视频 北京pk10选号公式 北京赛车pk10赚钱技巧 北京赛车怎么提升概率 pk10技巧北京快三 北京pk10大小计划
99围棋手机版安装 希诺水杯代理赚钱吗 去深圳做什么赚钱快 网上欢乐购群主怎么赚钱 欢乐捕鱼达人怎么获得 炒股分析 牛市快讯每天推送 龙武可以赚钱吗 体彩超级大乐透走势图2 体彩内部员工揭秘11选5