简体   繁体   English

Windows 2008 Server x64上的ADOX错误

[英]ADOX on Windows 2008 server x64 Error

I try to run Console Application that connects to Microsoft Access Database on the Windows 2008 server x64 and have this error: 我尝试运行连接到Windows 2008服务器x64上的Microsoft Access数据库的控制台应用程序,并出现以下错误:

Class not registered
   at ADOX.CatalogClass.Create(String ConnectString)

All works fine on the Windows XP x86. 在Windows XP x86上一切正常。

Thanks 谢谢

I find the solution for this bug after google it. 我在google之后找到了该错误的解决方案。

The problem is due to JET. 问题是由于JET。 JET doesn't have support for 64-bit. JET不支持64位。 To fix this we changed App Pool configuration from 64-bit to 32-bit. 为了解决此问题,我们将App Pool配置从64位更改为32位。 That was all to fix this. 就是为了解决这个问题。 Apparently, exception information is misleading. 显然,异常信息具有误导性。

Application Pools->Select Your Application Pool-> Advanced Setting->Enable 32-Bit Applications ->True 应用程序池->选择应用程序池->高级设置->启用32位应用程序-> True

After done this, it is working correctly. 完成此操作后,它可以正常工作。

ADOX COM component is only available for x86 systems. ADOX COM组件仅适用于x86系统。 This means that it cannot be used on code that is generated for the x64 platform. 这意味着它不能在为x64平台生成的代码上使用。 A possible solution is to explicitly set the target processor in the Visual Studio project to x86. 一种可能的解决方案是将Visual Studio项目中的目标处理器显式设置为x86。

For fixing this bug, application should be compiled for x86 CPU. 要修复此错误,应为x86 CPU编译应用程序。 And after that it will run on the x64 platform as a x86 app. 之后,它将作为x86应用程序在x64平台上运行。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM