1. <wbr id="m8vu6"></wbr>

      <del id="m8vu6"><center id="m8vu6"><source id="m8vu6"></source></center></del>
        <p id="m8vu6"><sub id="m8vu6"></sub></p>

        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
        相關教程
        免费看成年人视频大全_免费看成年人视频在线观看