这是目标处理器或DLL注册的编译问题吗?
我在Microsoft Visual Basic 2008 Express Edition中开发了一个应用程序。它引用了Microsoft DAO 3.6对象库(Interop.DAO.dll)。该应用程序在XP和32位Vista上运行,但在64位Win7上,文本引发了异常 System.TypeInitializationException:'Mohr10.TestUtils'的类型初始值设定项引发了异常。 ---> System.Runtime.InteropServices.COMException(0x80040154):由于以下错误,检索具有CLSID {00000100-0000-0010-8000-00AA006D2EA4}的组件的COM类工厂失败:80040154。
错误来自源代码行
Dim DAODbEngine As New DAO.DBEngine
我的搜索让我看到了2个项目:
DLL是32位,所以我应该为Platform x86编译。但是,“编译”选项卡上的“平台”下拉列表只有“Ative(任意CPU)”。
我应该运行regsvr32 interop.dao.dll 这不起作用 - 它给出了 模块“interop.dao.dll”已加载但未找到入口点DllRegisterServer。 确保“interop.dao.dll”是有效的DLL或OCX文件,然后重试。
命令regasm interop.dao.dll 给 “Microsoft(R).NET Framework Assembly Registration Utility 2.0.50727.5420 版权所有(C)Microsoft Corporation 1998-2004。保留所有权利。
已成功注册的类型“
但该程序仍然无效,regsvr32给出了同样的信息。
我不知道如何使用/ tlb选项运行C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ regasm,因为我似乎无法找到.TLB文件。
我对解决方案的搜索仍然没有结果,所以我很感激一些帮助。