网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP.NET技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.用ASP/ASP.NET实现网络空间管理.
.ASP.NET中实现Flash与.NET的紧密.
.GridView中利用隐藏的TemplateFi.
.如何改变asp.net项目名称.
.ASP.NET保持用户状态的九种选择(.
.如何防止页面中的敏感信息被提取.
.ACCESS的ASP.NET中 如果 数据库操.
.ASP.NET2.0新特性概述.
.ASP.NET中如何防范SQL注入式攻击.
.ASP.NET图象处理详解(1).
.改写即时消息的发送,包含同时给.
.同时对多个文件进行大量写操作对.
.用.NET读取Flash格式文件信息.
.ASP.NET+XML Web服务客户端创建W.
.根据身份证判断性别和生日.
.lucene并行建索引解决方案.
.如何制作winform得启动画面.
.通过数据捆绑将数据添加到ASP.NE.
.asp.net 2.0中tablecontrol搭配m.
.ASPX中的用户控件与ASP中的INCLU.

.NET精简框架的“无法找到资源程序集”异常释疑

发表日期:2007-1-28


在做 .NET Compact Framework 开发的过程中,特别是访问 Web Service 的时候,常常会遇到这样的异常信息:“无法找到资源程序集”或"Could not find resource assembly"。比较让人纳闷的是,明明是要访问 Web Service,跟资源程序集有什么关系呢?为什么会用到资源程序集呢?什么是资源程序集呢?

被这个问题困扰了很久,现在终于解开了迷题。

这个异常信息是这样产生的:在 .NET CF 应用程序访问 Web Service 的时候,程序因为某种原因(如:访问不到网络)要抛出一个异常,而这个异常的错误信息要从字符串资源程序集中获取(如:System.SR.dll),但是程序在GAC(全局程序集缓冲,在 "\Windows\" 目录)和程序目录(如:"\Program Files\SmartDeviceApp1")都找不到这个程序集,所以抛出了一个“无法找到资源程序集”或"Could not find resource assembly"的异常。说得直白一点,就是程序在抛出一个异常的时候,又遇到错误并抛出一个新的异常。所以我们看到的“无法找到资源程序集”的异常信息,并非是程序真正的错误信息。

有些朋友就郁闷了,我的 Windows Mobile 5.0 明明安装了(手工复制到设备上执行并安装或者在调试程序的时候自动安装)System_SR_CHS.cab(中文简体的资源程序集安装包),所以 System.SR.dll 和 System.SR.Resources.zh-CHS.dll 这两个程序集应该都已经被安装到 GAC 了,怎么程序还是找不到这两个程序集呢?对于这个问题,很可能是 System.SR.dll 和 System.SR.Resources.zh-CHS.dll 这两个程序集并没有被成功安装到 GAC。我们可以通过PC的资源管理器浏览设备的 "\Windows\" 目录看个究竟。如果这两个文件是按原来的文件名(即 "System.SR.dll" 和 "System.SR.Resources.zh-CHS.dll")存放在"\Windows\"目录,那么证明它们没有被成功安装到GAC。安装成功的话,它们的文件名应该是类似 "GAC_System.SR_v1_0_5000_0_cneutral_1.dll" 和 "GAC_System.SR.resources_v1_0_5000_0_czh-CHS_1.dll"。

现在我们知道原因了,下面就介绍如何解决它。

比较保险的做法是在智能设备项目中引用 System.SR.dll 这个程序集。在部署的时候,这个文件就会被复制到程序目录,打包的时候文件会被包含在生成的CAB文件中。System.SR.dll 的文件大小是93.6KB,会增加不少智能设备应用程序的存储内存空间。

上一篇:在.net App中集成COM组件的一些简单技巧 人气:3819
下一篇:ASP.NET Forums 页面模型分析 人气:3708
浏览全部.NET的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐