原文:resx文件在X64位编译,提示“未能加载文件或程序集”的问题?

resx文件在X64位编译,提示“未能加载文件或程序集”的问题?

解答:

错误现象如下

此问题最多在VS2010或者(SP1)上出现过,属于VS2010的缺陷,估计在VS更高的版本不会出现此问题。

通常提示:

<dataname="imageCollection1.ImageStream" type="xxxxxx"mimetype="application/x-microsoft.net.object.bytearray.base64">

    <value>

       AAEAAAD/////AQAAAAAAAAAMAg...

</value>

  </data>

application/x-microsoft.net.object.bytearray.base64就是问题所在。

就算你设定解决方案AnyCPU,有时也解决不了问题。

错误原因:VS2010设计上特别是资源编译器仅仅32位(很悲哀)。

解决方案:

方法一:干脆使用代码设定资源,不使用资源编辑器。这个可能是一个愚蠢的主意,然而也是不错的主意,但是能够解决问题。不过特别注意,如果采用X64位的操作系统,默认都是按照64位编译,如果使用32位的就是32位的,分发的时候如果是前者,需要使用.NET 2.0 SP2补丁,因为这个是.NET的BUG。否则使用.NET
2.0 SP1就行了。主要是针对WINDOWS XP的,如果是客户的系统都是WINDOWS VISITA以上系统,不会存在此问题。

方法二:你使用添加引用装配集合全部是X64位的库,最后分发采用X86的动态库,编译通过。虽然不同,测试但是不影响结果。

主程序使用X86的库,其他的库都是用X64位的库,保证通过,而主程序保证真正的引用。

方法三:应用库的时候采用反射的方式加载X64位的库。开发的时候不引用X64的库,这个方法不好。

(我的项目适合,考虑你的架构。,但是你的不一定)。

方法四:升级VS2010,微软说就是他的问题,据说在VS2012以上的版本视乎解决了,需要分发.NET 2.0 SP2补丁。这个是微软的.NET 2.0的BUG;

方法五:你可以使用ResxFix补丁,修复此问题。下载地址如下:https://github.com/npaulo/ResxFix

我的项目一般采用方法二,和方法三。

resx文件在X64位编译,提示“未能加载文件或程序集”的问题?的更多相关文章

  1. Mapxtreme 在64位系统运行网站,提示未能加载文件或程序集,或它的某一个依赖项

    在32位系统上开发的网站,现在需要布署到64位系统上运行,布署好后访问提示提示未能加载文件或程序集,或它的某一个依赖项.在网上搜索后,发现是64位下引用dll出现的这个问题.这个问题通常出在引用第三方 ...

  2. VS2017 MVC项目,新建控制器提示未能加载文件或程序集“Dapper.Contrib解决方法

    VS2017中MVC项目中,右键新建控制器时,提示 未能加载文件或程序集“Dapper.Contrib, Version=1.50.0.0, Culture=neutral, PublicKeyTok ...

  3. 使用K2时提示未能加载文件或程序集Microsoft.IdentityModel等

    转:http://www.cnblogs.com/dannyli/archive/2012/10/15/2724931.html K2安装成功后,打开workspace管理流程时报错如下图: 未能加载 ...

  4. .Net MVC 提示未能加载文件或程序集

    最近在开发.Net MVC程序时,突然出现未能加载文件或程序集的错误, 错误1 错误2 猜测时由于引用了Swagger,导致Swagger依赖的组件版本和现有版本冲突(现在仍未确定是这个原因),浪费了 ...

  5. vs调试代码 提示 未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程序。

    未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项.试图加载格式不正确的程序. 1.调试-选项-项目和解决方案-web项目-勾选对网站和项目使用iis express 64 ...

  6. C#(64位系统) 解决"未能加载文件或程序集,或它的某一个依赖项..."

    这个问题通常出在引用第三方DLL或者自己以前写的DLL. 在64位系统下则可能会出现这种问题. 今天下载MySQLDriverCS后引用遍出现了这个问题,参考了一些文档,下面给出解决方法: 将项目的生 ...

  7. 未能加载文件或程序集“System.Web.Http.WebHost, Version=4.0.0.0, ”或它的某一个依赖项。系统找不到指定的文件。

    一:错误提示 "未能加载文件或程序集"System.Web.Http.WebHost, Version=4.0.0.0, Culture=neutral, PublicKeyTok ...

  8. c# 未能加载文件或程序集

    最近做项目时碰到这个问题了,goole.百度了半天,整理了以下几种可能: DLL文件名与加载时的DLL文件名不一致, DLL文件根本不存在,即出现丢失情况, 加载DLL路径错误,即DLL文件存在,但加 ...

  9. 关于MySQL Server影响ASP.NET网站使用的问题:未能加载文件或程序集MySql.Web.v20

    最近开发的ASP.NET MVC 4网站,之前头头说如果遇到装过MySQL的机器就绕着走,还觉得奇怪 嘛,该来的迟早都会来 于是撞上了一台 启动网站再访问,总是出错,提示“未能加载文件或程序集”,名字 ...

随机推荐

  1. uva10106(大数乘法)

    public class Product { public static void main(String[] args){ Scanner sc = new Scanner(new Buffered ...

  2. iOS学习20之UIView

    1. UI编程概述 UI的本意是用户界面,是英文 User 和 Interface 的缩写. UI设计则是指对软件的人机交互.操作逻辑.界面美观的整体设计. 好的UI设计不仅是让软件变得有个性有品位, ...

  3. iOS学习09C语言函数指针

    本次主要学习和理解函数指针 1.函数指针 void printValue(int number) { printf("number = %d\n", number); } int ...

  4. Unity 状态转化机器

    using System; using System.Collections; using System.Collections.Generic; using UnityEngine; /** 有限状 ...

  5. div基础

    1. 写在后面的样式优于前面,会把前面的覆盖掉! 2.三角形的造法:width:0; height:0;然后设置border-left   border-right  border-top  bord ...

  6. ThinkPHP3.2.3--Linux服务器首页文件index.php路径配置问题

    在windows服务器环境下,可以define ('SITE_URL','http://192.168.1.101/'); 但上传到linux服务器环境下不能正常解析,可使用相对路径:define ( ...

  7. Linux进程间通信:IPC对象——信号灯集详解

    作者:倪老师,华清远见嵌入式学院讲师. 一.信号灯概述 信号灯与其他进程间通信方式不大相同,它主要提供对进程间共享资源访问控制机制.相当于内存中的标志,进程可以根据它判定是否能够访问某些共享资源,同时 ...

  8. RabbitMQ三种Exchange

    Direct Exchange – 处理路由键.需要将一个队列绑定到交换机上,要求该消息与一个特定的路由键完全匹配.这是一个完整的匹配.如果一个队列绑定到该交换机上要求路由键 “dog”,则只有被标记 ...

  9. C#项目打开/保存文件夹/指定类型文件,获取路径

    C#项目打开/保存文件夹/指定类型文件,获取路径 转:http://q1q2q363.xiaoxiang.blog.163.com/blog/static/1106963682011722424325 ...

  10. [Android] adb.exe换了位置

    好久没有做android开发了,今天重新下载了新的sdk,发现adb.exe从sdk/tools里面消失了,添加了系统环境变量的路径就还是没法调动adb.exe命令,网上搜了一下原理是存在了新版的sd ...