我以前从未做过的其他事情,但可能很简单......当你知道如何
时我正在使用VB Express 2008,需要创建一个非常简单的DLL。
我已经构建并测试了它,现在我发现它必须是一个COM DLL。我该怎么做?
编辑:回复@Kman - 我查看了http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.comvisibleattribute.aspx
并将我的代码更改为
Imports System.Runtime.InteropServices
Namespace My_DLL
<ClassInterface(ClassInterfaceType.AutoDual)> _
Public Class My_DLL
<ComVisible(True)> Public Sub Function_A()
End Sub
<ComVisible(True)> Public Sub Function_B()
End Sub
End Class
End Namespace
但我仍然没有使用DLL Explorer的功能,而我确实在旧的DLL中看到它们......
答案 0 :(得分:2)
检查 http://www.codeproject.com/KB/COM/nettocom.aspx
关于它的MS页面在这里: http://msdn.microsoft.com/en-us/library/3x7357ez%28vs.71%29.aspx
按照建议操作,如果您想了解更多信息,请查看以下书籍 .NET和Com完整的互操作性指南。无论你喜欢什么细节,一切都在那里解释。
答案 1 :(得分:1)
Qualify your dll for interop;将其ComVisibleAttribute标记为真。
右键单击您的项目,转到Build选项卡,然后选中最后一个Checkbox,其中显示“注册COM互操作”。