很久沒有寫C#代碼了,今天與客戶對接,客戶是delphi寫的程序,調用不了dll,希望我們把dll生成tlb文件模式,折騰了大半天總算解決了
第一步:vs工具創建個類庫項目
第二步:查看下面代碼
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
/**
* 1:類上使用標簽[ClassInterface(ClassInterfaceType.None)]
* 2:方法要寫成類實現接口模式
* 3:項目-屬性-生成--為COM互操作注冊勾選上
* 4:檢查一下【Properties】中的AssemblyInfo.cs--[assembly: ComVisible(false)]設置為[assembly: ComVisible(true)]
* 5:用管理員模式打開vs工具,就可以生成tlb文件了
* **/
namespace TestTlb
{
public interface ITestDemo
{
string fn1(string url);
string fn2(string url);
}
/**這個標簽一定要添加**/
[ClassInterface(ClassInterfaceType.None)]
public class Class1 : ITestDemo
{
public string fn1(string url)
{
try
{
///寫邏輯
return "";
}
catch (Exception ex)
{
return "";
}
}
public string fn2(string url)
{
try
{
///寫邏輯
return "";
}
catch (Exception ex)
{
return "";
}
}
}
}