zoukankan      html  css  js  c++  java
  • [.Net]明明白白的解决'未在本地计算机上注册Microsoft.ACE.OLEDB.12.0'问题(转)

    你可能读取Excel功能的程序在某些计算机上第一次执行就报错了,但是之前在别的地方是好的。

     
    oledb报错
    大多数网上文章的建议解决办法

    建议去微软官网装AccessDatabaseEngine。

    AccessDatabaseEngine2016
    https://www.microsoft.com/en-us/download/details.aspx?id=54920

    AccessDatabaseEngine2010
    https://www.microsoft.com/en-us/download/details.aspx?id=13255

    AccessDatabaseEngine2007
    https://www.microsoft.com/en-us/download/details.aspx?id=23734

    打开这些下载页又迷茫了,该下载X86还是X64的版本?

    更坏的情况,无论下载哪个版本,都无法安装,就这样搞笑的报错。

    ==>装64位的,说你装了32位版不能装
    ==>装32位的,说你装了64位版不能装

    M$很幽默,可我真抓狂。


     
    image.png
     
    image.png

    有大神说了用一个安装版修改器来屏蔽M$的幽默。具体是这样做,测试可行。图是我补的。原文丢图了。

    原文地址https://blog.csdn.net/u010032207/article/details/52171972

     
    orca

    为了避免找不到这个软件的下载或者捆绑。这里直接提供一个网盘地址。
    链接:https://pan.baidu.com/s/1xAIqgCmNMT5LdLtjJkgvdw
    提取码:860t
    针对AccessDatabaseEngine的X64版本

    先用WinRar把AccessDatabaseEngine_X64.exe解压缩,里面会有一个AceRedist.msi安装文件,然后用Orca打开。

    找到LaunchCondition里面的BLOCKINSTALLATION,删掉,保存。

     
    删除条件
     
    删除提示

    现在运行AceRedist.msi一路默认安装。结束。

    谈下原因,当然就对症下药了

    安装完了,我估计还是有部分同学问题没有得到解决。问题的关键是开发人员本地如果装的是x86的office,并且工程又用的默认编译参数,你可以继续往下看。

    这是因为oledb有x86和x64版本之分。可能你应该考虑提供两套编译版本x86和x64的给不同的用户使用

    在编译发布时需要针对目标计算机(也就是部署给谁用?服务器还是某个用户的客户端)的架构决定设置编译参数。


     
    编译选项

    如果没有X64的话,可以在Build菜单-->Configuration Manager打开的对话框中建立一个x64的选项。

     
    增加x64
    你只需要确认用户机或者服务器是装了x86还是x64的office(前提肯定要office2007以上),就提供你对应的编译条件的软件,问题解决。

    所以,其实也没有必要逼迫用户装AccessDatabaseEngine。不过注意一点,除了office,你的工程是否还有别的组件受编译的platform的影响,可能会最终决定你怎么面对这个问题。

     
     
    1人点赞
     
    .Net
     
     


    作者:无衔
    链接:https://www.jianshu.com/p/e91df20a6251
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 相关阅读:
    ps:点阵格式图像
    ps:图像尺寸
    ps:HSB色彩模式
    git上传文件夹的问题
    sublime下载emmet
    git Octotree:提供项目目录,方便用户在线快速浏览项目结构【转载】
    git@github.com出现Permission denied (publickey)
    less:避免编译
    less:@arguments变量
    less嵌套规则
  • 原文地址:https://www.cnblogs.com/xihong2014/p/15352953.html
Copyright © 2011-2022 走看看