我创建了一个简单的测试类并完成了使其对 COM 可见的步骤。我可以从 ASP 页创建对象就好了。当我对真实类执行完全相同的步骤时,我收到“Server.CreateObject Failed ~ INVALID POINTER”错误。我在网上找不到任何关于 INVALID POINTER 错误的信息。
以下是我为使其成为 COM-Visible 所经历的步骤。
1.运行“tlbexp MyLibrary.dll /out:MyLibrary.tlb”
2.注册它:regasm /tlb:MyLibrary.tlb MyLibrary.dll 3.GAC
它:gacutil /i MyLibrary.dll
4.重新启动IIS。
这些步骤中的每一个都是成功的,但是当我尝试创建对象时,我得到了错误。有人有什么想法吗?
我找到了答案。DLL 的名称与类相同。我在黑暗中刺了一下,发现更改类名或 DLL 名称可以解决问题。