加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

将.aspx文件与图片编译进dll

发布时间:2023-08-01 15:19:17 所属栏目:Asp教程 来源:
导读:以前曾在csdn论坛看到有人问如何将.aspx页面也编译进dll,当时做了解答。后来觉得也许还会有人要用,所以最近就把文章整理一下。

大家可以去看看做好的dll

http://www.bestaspx.net/down/allindll.zip

以前曾在csdn论坛看到有人问如何将.aspx页面也编译进dll,当时做了解答。后来觉得也许还会有人要用,所以最近就把文章整理一下。
 
大家可以去看看做好的dll
 
http://www.bestaspx.net/down/allindll.zip
 
先简要说一下方法:
 
一、取得.aspx页面类的源代码
 
在c:/windows/microsoft.net/framework/v1.1.4322/temporary asp.net files目录下可看到你的站点和虚拟目录名,点进去就能找到你的页面类,但注意这个页面类的名字跟你原来的名字没多大联系,你也可以通过陷阱直接在错误页中找到:
 
源文件: c:/windows/microsoft.net/framework/v1.1.4322/temporary asp.net files/root/6e5a7fb1/54c3fdeb/ehrvxfn5.0.cs    行: 90
 
(在aspx页面任意位置添加即可设置陷阱,取得编译源文件)
 
二、编译
 
通过上面得到源文件,注释掉依赖项:如
 
//dependencies.add("w://wwwroot//dlltest//ex2.aspx");
 
然后编译
 
方法一
 
打开vs,新建一个web项目,将这些页面类包含进来并注释掉页面依赖项,将图片的编译类型设置为嵌入即可。
 
方法二
 
没有vs的可以用csc/vbc编译器完成编译,关于如何用编译器编译项目可以参照:http://www.bestaspx.net/articles/show.aspx?articleid=21
 
当然图片也是可以打包进去的,这样所有的东东都打进dll了
 
下面要简单说一下如何在命令行将图片编进dll
 
用sdk 中自带的c:/program files/microsoft visual studio .net/frameworksdk/samples/tutorials/resourcesandlocalization/resxgen
 
resxgen.exe /i:logo.gif /o:test_res.resx /n:logo
 
得到资源文件test_res.resx,就可以在命令行引用资源编译了。
 
不能得到resxgen的可以到这里下载:http://www.bestaspx.net/down/resxgen.zip
 
源码:http://www.bestaspx.net/down/resxgen_src.zip
 
那么项目中如何使用资源文件呢,诸位请看:
 
assembly myassem = assembly.getexecutingassembly();
 
resourcemanager rm = new resourcemanager( "名字空间.test_res", myassem );
 
system.drawing.image objgraphics = ( system.drawing.image )rm.getobject("logo");
 
objgraphics.save( response.outputstream, system.drawing.imaging.imageformat.gif );
 
objgraphics.dispose();
 
三、建立aspx到dll的映射
 
在asp.net应用程序配置文件web.config的system.web节的httphandlers节添加aspx到dll的映射项,语法如下:
 
<add verb="*" path="aspx文件名" type="类名,dll文件" />
 
四、测试
 
通过以上3步,就已完成了所有的工作,下面就测试一下,打开ie,输入
 
http://localhost/虚拟目录名/aspx文件名查看效果。
 
因为是很久以前的试验了,现在是凭记忆写的,所以比较乱,如果有问题可以联系我。
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章