Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2012 VS韩元';不能编译x86_Visual Studio 2012_X86_Oledb_32bit 64bit - Fatal编程技术网

Visual studio 2012 VS韩元';不能编译x86

Visual studio 2012 VS韩元';不能编译x86,visual-studio-2012,x86,oledb,32bit-64bit,Visual Studio 2012,X86,Oledb,32bit 64bit,我正在尝试运行一个调用Microsoft.ACE.oledb.12.0的exe,但出现错误“提供程序未在本地计算机上注册”。关于Stackoverflow的这个错误已经有很多了。建议您安装AccessDatabaeEngine并在x86中编译。我已经完成了这两项工作,尽管project中的路径设置为x86,但我怀疑它仍在编译为64位,因为VS继续将exe放在该64位文件夹中。但我不知道如何纠正这一点。任何人都知道如何解决这个问题,或者确认exe是32位还是64位,而不管它放在哪个文件夹中。在wi

我正在尝试运行一个调用Microsoft.ACE.oledb.12.0的exe,但出现错误“提供程序未在本地计算机上注册”。关于Stackoverflow的这个错误已经有很多了。建议您安装AccessDatabaeEngine并在x86中编译。我已经完成了这两项工作,尽管project中的路径设置为x86,但我怀疑它仍在编译为64位,因为VS继续将exe放在该64位文件夹中。但我不知道如何纠正这一点。任何人都知道如何解决这个问题,或者确认exe是32位还是64位,而不管它放在哪个文件夹中。在windows 2012服务器上运行vs2012 64位(Hyper-v)

问候


埃里克

好吧……事情就是这样。我在项目属性中将cpu类型更改为x86。它确实编译为32位,但放在了不正确的文件夹中。我通过在记事本中打开exe确认了这一点,因为有一种方法可以判断它是什么类型


但是,调试版本保持在64位。修复方法是使用工具栏上的下拉列表,显示“发布”或“调试”,并将其设置为Configuration manager。在其中,将release和debug值都设置为x86。这会将其编译为x86并将其放入正确的文件夹中。我不知道这有什么不同,但它现在很高兴地使用了32位dll。

test表示exe为x86,但仍然不接受dll。Office与exe是32位的。现在您知道Visual Studio正在生成x86 exe。请更新您的帖子以删除误导性的x64内容?这将使问题集中在你的实际问题上。安装AccessDatabaseEngine时,是否使用AccessDatabaseEngine.exe或AccessDatabaseEngine_X64.exe?您可能安装了x64提供程序,但没有安装x86提供程序?要成功运行x86程序,需要安装x86提供程序。