VS.net封装asp为Dll

 

ASP写程序大家都知道,源代码太容易被人看到了,要是能像.NET那样生成DLL就好了,便上网去搜索,可是没有找到有用的东西,只找到了一篇《在ASP中调用基于.Net开发的 DLL》的文章,确定了.NET可以生成DLL让ASP调用.仔细研究了下,得到了结果,好了,费话不说.先做吧!     首先打开Microsoft Visual Studio .NET 2003,点击文件,再点新建项目,Visual Basic 项目中的类库,将类库命名为dujian4,再点视图中的解决方案资源管理器,将class4.vb重命名为dujian4.vb,再将dujian4.vb中的Public Class class4改为Public class dujian4,将下面的代码加在Public Class dujian4与End Class之间

Public Function getfilename(ByVal d)        Dim datetime        datetime = CStr(d)        Dim date1, time1        date1 = Split(d, " ")(0)        time1 = Split(d, " ")(1)        getfilename = Year(date1) & Month(date1) & Day(date1) & Hour(time1) & Minute(time1) & Second(time1) End Function Public Function gettimefilename(ByVal d)        Dim datetime, date1        datetime = CStr(d)        date1 = datetime        gettimefilename = Year(date1) & Month(date1) & Day(date1) End Function Public Function HTMLEncode(ByVal fString)        fString = Trim(fString)        fString = Replace(fString, "'", "'")        fString = Replace(fString, """", """)        fString = Replace(fString, "/", "/")        fString = Replace(fString, "'", "'")        fString = Replace(fString, "--", "--")        fString = Replace(fString, vbCrLf, "<br>")        fString = Replace(fString, " ", "")        HTMLEncode = fString End Function

你可以调试中的启动来调试要封装的程序.调试成功后,我们就要生成了,点击解决方案资源管理器,右键单击dujian4点属性.在弹出的对话框中,将配置属性中的生成里面的为COM Interop 注册(R)钩上,是为了让VS.NET在编译生成时就自动注册它.设置好后点应用,确定.回到解决方案资源管理器中,对dujian4单击右键,点生成,这样你要封装的代码就生成了dujian5.dll了.再通过以下的程序调用

<% set ofile=Server.CreateObject("dujian4.dujian4") file1=ofile.getfilename(now()) set ofile=nothing %> <%=file1%> 这里只是做了一个简单的演示,调用了其中的一个生成文件名的函数! 如果你要在其它的系统上调用,请参考在《ASP中调用基于.Net开发的 DLL》这篇文章 用regasm dujian5.dll /tlb:dujian5.tlb /CodeBase 来注册这个DLL. 希望对大家能有所帮助!

1、在ASP中调用传统的ActiveX DLL 要想让COM能够“看到”你的组件,必须先将组件注册到注册表中: regsvr32 mydll.dll 然后在ASP中创建对象: set mydll= server.createobject("mydll.method") mydll.method 这样就可以使用组件中的属性和方法了。

2、在ASP中调用基于.Net开发的 DLL 关于组件注册,一种方法是自动注册,在vs.net2003或2005的IDE环境中可以实现COM组件的自动注册,设置如下:项目名称->右键"属性"->配置属性->生成->选中"为Com Interop注册",编译即可。 另一种方法是手动注册: regasm path/mydll.dll /tlb:path/mydll.tlb /CodeBase

regasm /unregister path/name.dll(卸载方法) 注意CodeBase的使用,如果你要注册的.NET程序集没有强名称的话,那么在使用regasm注册的时候就要加上/CodeBase。 注册完毕,创建对象及使用方法与上面相同: set mydll= server.createobject("mydll.method") mydll.method

其实,不只是ASP,其他的COM程序(包括VBA、扩展存储过程等等)调用DLL的方法都是一样的  

你可能感兴趣的:(.net,Date,Class,dll,asp,Interop)