|
| |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
以前曾在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文件名查看效果。 因为是很久以前的试验了,现在是凭记忆写的,所以比较乱,假如有问题可以联系我。 返回类别: 教程 上一教程: 使用 ASP+ 列表绑定控件(上) 下一教程: .NET 开发AutoCAD2006指南(二) 您可以阅读与"将.aspx文件和图片编译进dll"相关的教程: · 使用响应文件编译C#源文件 · 查看服务器磁盘、文件的aspx · 使aspx页面能接受HTML,asp的页面传送的文件 · 让你的.NET程序兼容不同版本的Dll文件 · 将一个图片以二进制值的形式存入Xml文件中 |
| 快精灵印艺坊 版权所有 |
首页 |
||