我试图在测试计算机上注册一个基于GIS的dll,并且在测试计算机上使用ArcGIS 9.3.1 - ArcMap加载tlb文件时出现问题。当我尝试加载tlb文件时,说的是“没有添加新对象”。我使用Visual Studio 2010创建了dll文件。tlb文件在我的开发人员计算机上加载得很好。我正在使用cmd.exe命令在测试计算机上注册dll/tlb(见下文)。注册dll/tlb
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe C:\Temp\My.dll /tlb:My.tlb/codebase
登记回复为成功和该项目中下MX命令类别组件类别列出。以下是我在课堂中使用的COM GUID部分代码。
#Region "COM GUIDs"
Public Const ClassId As String = "1bf94bdf-907c-4026-816f-50feb7a2a976"
Public Const InterfaceId As String = "7ba8a4d5-d15c-4d95-a819-a3e7cbe84533"
Public Const EventsId As String = "2ab51582-47e1-490c-899d-a80992c20fdf"
#End Region
开发计算机的操作系统是:
的Microsoft Windows XP 32位, 5.1版 - Service Pack 3的
和
测试计算机的操作系统是:
Microsoft Windows XP 64位, 5.2版 - Service Pack 2的
我需要做一个Windows更新开发计算机上(5.2),或者是有什么错我的DLL/TLB注册方法?
感谢您的帮助!
UPDATE:
测试计算机上ArcGIS的软件位于C安装:\ Program Files文件(x86)的位置。
目标CPU被设置为AnyCPU。我试过你的“Framework64”路径。它注册了它,但是当我在组件类别中查找它时没有列出它,而“框架”路径选项没有在组件类别中列出它。测试计算机在C:驱动器(“Program Files”和“Program Files(x86)”下有两个Program Files文件夹ArcGIS软件位于Program Files(x86)文件夹下 – artwork21 2011-05-16 14:43:41
@ artwork21 ArcGIS软件为32在这种情况下,我的答案不适用,因为这是一个常见问题,所以我将它留在这里。 – 2011-05-16 14:46:30
我应该在开发人员计算机上执行Windows更新以将Service Pack升级到5.2吗?谢谢! – artwork21 2011-05-16 14:56:08