1. 程式人生 > >CCW in vs2005 ---- VB6 ASP 如何呼叫.net DLL

CCW in vs2005 ---- VB6 ASP 如何呼叫.net DLL

CCW(COM Callable wrapper) 是vs2005提供的一個機制,它可以把 .Net 託管DLL匯出成傳統COM,便於VB6, ASP 呼叫, 下面是一個普通例子:
  • 1> 在vs2005中建立一個普通C# 的 class library 工程, 並在寫入程式碼
// //假定空間名為csLib2,類名為Class1  //藍色部分很重要 // using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices; namespace csLib2
{
    [ClassInterface(ClassInterfaceType.AutoDual)]
    public class Class1
    {
        public int add(int a, int b)
        {
            return(a + b);
        }         public
string mergeString(string a, string b)
        {
            return(a+b);
        }
    }
}
  • 2> 在工程-->"Properties"-->"Build"-->選中"Register for COM interop"
  • 3> 在工程中的 AssemblyInfo.cs 檔案中修改[assembly: ComVisible(true)]//原來預設為false
  • 4> 在Visual studio 2005 Command prompt命令列工具中, 先進入工程的 bin/debug 目錄,在使用 regasm csLib2.dll /tlb:csLib2.tlb 生成 tlb 檔案,
    於是在vb6便可以以COM的形式選擇這個tlb檔案。