无Visual Studio时如何为C# .csproj添加.tlb(类型库)文件?
给.csproj添加.tlb类型库的可行方法
.tlb是COM类型库,并非标准.NET程序集,直接用<Reference>或<ProjectReference>引用不会生效,需要先将其转换为.NET互操作程序集,具体步骤如下:
1. 使用tlbimp.exe生成互操作程序集
.NET SDK自带tlbimp.exe工具(无需Visual Studio许可证),打开命令提示符或终端,运行以下命令:
tlbimp.exe "C:\Program Files\Dassault Systemes\B31SP3PRALL\win_b64\code\bin\InfTypeLib.tlb" /out:InfTypeLib.Interop.dll
- 替换命令中的.tlb路径为你的实际文件路径
/out参数指定生成的互操作程序集名称,可自定义
2. 在.csproj中引用生成的互操作DLL
打开你的.csproj文件,添加以下配置(注意替换HintPath为生成的DLL实际路径):
<ItemGroup> <Reference Include="InfTypeLib.Interop"> <HintPath>./InfTypeLib.Interop.dll</HintPath> </Reference> </ItemGroup>
3. 修复CS1529编译错误
你遇到的error CS1529是因为using INFITF;的位置不符合C#语法要求:所有using语句必须放在文件最顶部(仅extern alias声明可在其之前)。调整代码结构如下:
using INFITF; namespace YourProjectName { class Program { static void Main(string[] args) { Console.WriteLine("Hello, World!"); } } }
内容的提问来源于stack exchange,提问作者Arct
相关产品推荐
相关产品推荐

