.net System.Runtime.InteropServices.COMException(0x80040154)-Microsoft DAO 3.6

.net System.Runtime.InteropServices.COMException(0x80040154)-Microsoft DAO 3.6,.net,vb.net,.net,Vb.net,这是目标处理器或DLL注册的编译问题吗 我在Microsoft Visual Basic 2008 Express Edition中开发了一个应用程序。它引用了MicrosoftDAO3.6对象库(Interop.DAO.dll)。该应用程序在XP和32位Vista上运行,但在64位Win7上,文本引发异常 System.TypeInitializationException:“Mohr10.TestUtils”的类型初始值设定项引发异常。 --->System.Runtime.InteropS

这是目标处理器或DLL注册的编译问题吗

我在Microsoft Visual Basic 2008 Express Edition中开发了一个应用程序。它引用了MicrosoftDAO3.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
我的搜索显示我查看了两个项目:

  • DLL是32位的,所以我应该为x86平台编译。然而,Compile选项卡上的Platform下拉列表只有“Ative(Any CPU)”

  • 我应该运行regsvr32 interop.dao.dll 这不起作用-它会给你 已加载模块“interop.dao.dll”,但未找到入口点DllRegisterServer。 请确保“interop.dao.dll”是有效的dll或OCX文件,然后重试

  • 命令regasm interop.dao.dll 给予 “Microsoft(R).NET Framework程序集注册实用程序2.0.50727.5420 版权所有(C)微软公司1998-2004。保留所有权利

    “已成功注册的类型”

    但是程序仍然不工作,regsvr32给出了相同的消息

    我不知道如何使用/tlb选项运行C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\regasm,因为我似乎找不到.tlb文件


    我对解决方案的搜索仍然没有结果,因此我希望得到一些帮助。

    Windows 7计算机是否位于Service Pack 1?您能否尝试卸载Service Pack 1并查看问题是否仍然存在?从VB2008 Express更改为VS2010 Professional提供了所需的目标CPU选择。为x86平台编译修复了该问题。谢谢Windows 7计算机是否在Service Pack 1上?是否可以尝试卸载Service Pack 1并查看问题是否仍然存在?为所需的目标CPU选择提供了从VB2008 Express更改为VS2010 Professional的功能。为x86平台编译修复了该问题。谢谢