【发布时间】:2011-06-12 11:46:17
【问题描述】:
我正在开发一个在 VB6 中调用 .NET DLL 的现有应用程序。 但我的 .NET 代码在从 VB6 应用程序调用时没有反映。 我在 .NET 应用程序中添加了一个公共属性,但是当我尝试访问它时,VB6 引发了一个异常:
“对象不支持此属性或方法”
我的 PostBuild 事件代码。
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe $(ProjectDir)bin\$(TargetName).dll /regfile:$(TargetName).reg
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe $(ProjectDir)bin\$(TargetName).dll /tlb:$(TargetName).tlb
我可以看到注册表 CLSID 正在更改。 但是从 VB6 调用时代码没有反映 (对象不支持该属性或方法)
VB6 代码
Set frmApp = CreateObject("AssemblyName.Class1")
我还需要做其他设置吗?
如何在VB6中设置对新classid的引用?
【问题讨论】:
-
“但是从 VB6 调用时代码没有反映?”是什么意思。发布您用于实例化对象的代码。
-
您是否尝试将 /codebase 添加到您的 RegAsm 命令中?