我正在尝试为 F# DLL 导出 TLB 文件。对于 .NET Framework up to 4.8,以下自定义构建命令有效: 我已经切换到 .NET 6.0 (Visual Studio 2022),并且TargetFrameSDKToolsDirectory指向 查找 .NET Core 6 ...
我正在尝试为 F# DLL 导出 TLB 文件。对于 .NET Framework up to 4.8,以下自定义构建命令有效: 我已经切换到 .NET 6.0 (Visual Studio 2022),并且TargetFrameSDKToolsDirectory指向 查找 .NET Core 6 ...
我的C#代码有一个struct ,我正在导出到COM。 这个结构的属性是通过在VB6中甚至不是有效语法的奇怪名称来实现的,因此无法访问它们。 有没有办法让这些用普通的,可用的名字导出? 我错过了一个属性或什么? COM / VB6中名称的格式为: 其中只有origina ...
我有下面的结构正在编译为COM互操作。 我收到以下构建警告: 警告:类型库导出程序警告处理“ MyNamespace.MyStruct.k__BackingField,MyAssemblyName”。 警告:公共结构包含将要导出的一个或多个非公共字段 。 但是我看不到它指的 ...
我想在 .net Core 中构建 COM 对象,然后通过 RegAsm 注册。 我的 .csproj 文件: 我的程序.cs: 在 .netcore2.1 目标框架中发布项目后,我无法使用来自 c:\\Windows\\Microsoft.NET\\Framework64\\v4.0.3 ...
现在,我正在编写一个.NET dll,该文件应可在VBA代码(Excel,Access等)中使用。 以下设置运行正常: [InterfaceType(ComInterfaceType.InterfaceIsDual)] [ComVisible(true)] [Guid("8079e4a4-1 ...
我们有一个包含大约90个项目的Visual Studio解决方案。 它们中的大多数都建立在DLL文件中,有些是用C ++编写的,有些是用C#编写的。 这些项目通过COM相互通信。 我们使用tlbexp生成某些C#项目(在C ++项目中引用的文件)的TLB文件。 我们使用tlbimp生成C ...
我有一个要使用的 COM 应用程序,但我只有该应用程序的 .exe。 有没有办法从 that.exe 中提取 the.tlb? 我尝试使用 Visual Studio 命令提示符中的tlbexp filename.exe ,但出现错误,我不知道为什么: TlbExp: error TX0000: ...
我面临以下问题: 我的接口是用 C# 定义的。 我在我的界面中使用自定义枚举。 一些枚举与它们返回的数据类型具有相同的名称,例如: 我使用 tlbexp 来使用 C++ 中的模块。 与其数据类型共享名称的属性从“Name”重命名为“_Name”: Bar myEnumValue = p ...
.NET中的System.Runtime.InteropServices.ClassInterfaceType枚举具有AutoDispatch值和AutoDual值,但没有AutoUnknown值。 为什么不这样做,有没有人已经提出了一种相当自动化的方法来实现它,这样我就不必重新发明轮子了? ...
我们将服务器的一部分移动到.net 4.0。 我们已经向Vs2010迈进了第一步,但没有改变任何项目的目标框架。 作为第二步,我将服务器的特定部分移动到目标4.0,以便我们可以使用一些新功能。 我在针对4.0的类库DLL上调用TLBexp.exe时遇到了问题。 此DLL还引用了许 ...
我一方面有一个C#.Net 4.0应用程序,另一方面有一个VB6应用程序。 我通过使Project COM Visible和actived寄存器COM Interop创建了一个COM接口。 我通过实现导入新tlb文件的C#应用程序来测试COM接口。 一切似乎都很好。 下一步我 ...
我正在尝试建立Centura和COM .dll之间的通信。 (从http://download.resip.fr下载以进行数据库导入) Centura需要.tlb文件才能与此组件通信。 通常我会使用regasm /tlb生成.tlb,但看到它是COM .dll这是不可能的。 我发 ...
我有一个很奇怪的问题。 我正在将接口从C#库导出到COM。 我已经启用了“向COM注册”项目设置,因此它调用tlbexp.exe来创建类型库。 我们在方法名称上使用驼峰式大小写,并且我注意到导出的类型库将这些碰巧与类名重合的任何方法更改为Pascal大小写... 例如 l ...
我想知道是否可以在不使用RegAsm工具的情况下注册类型库。 这是我的情况,有望解释我为什么要这样做: 我正在开发.NET中的程序集,该程序集将为我们较旧的VB6应用程序提供一些现代功能。 我已经使用RegAsm在开发机器上成功注册了程序集和类型库,如下所示: 上面的命令生成类 ...
最近我正在阅读有关互操作编组的文章,但我仍然不明白一件事。 为了使 .NET 程序集对 COM 可见,我需要使用 tlbexp 工具和/或 regasm 工具。 为了使 COM 对 .NET 可见,我必须使用 tlbimp 工具——这对我来说很清楚。 除此之外,我在互联网上看到了很多处理带有 ...
我在 .NET (C#) 中有一个方法,它返回string[][] 。 当使用 RegAsm 或 TlbExp(来自 .NET 2.0 SDK)为包含程序集创建 COM 类型库时,我收到以下警告: 警告:没有对嵌套 arrays 的编组支持。 此警告导致相关方法未导出到生成的类型库中。 有人告诉我 ...