|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
只要你想学,就没什么优缺点,上面那位大哥已经把网上的评论说了,但我认为想学哪个都一样,不然它就不可能在当今时代数字艺术方面存活到今天成绩ActiveXDLL能够用来回护代码的一些部分,由于作为开辟职员我们晓得,用ASP举行事情时,源代码把持是一个困难而噜苏的历程。ActiveXDLL是经由编译的代码,没有工程文件中的源代码就不克不及对其举行修正。这就给开辟职员带来很多大概:开辟主动操纵大众程序的程序并将它们作为共享软件来分发,分发最少有一些源代码回护的ASP使用程序,不休开辟本人的ASP程序指令,以在一个全方位多功效的了局中进步ASP的功能。
你所安装的第一个ActiveXDLL文件将注册并安装VisualBasic6的运转工夫文件,它同意运转经由编译的代码。可是要注重,这还请求从头启动服务器。当一个现存的DLL被安装并利用以后,假如想要对其举行晋级,服务器就将给出一个毛病信息提醒,说此文件正被另外一个历程所利用。要改正这一成绩,也要从头启动服务器后才干完成DLL的晋级。请记着在开辟中要利用一个测试情况。
固然这个例子十分复杂,用一个ASP包括文件就能够容易地完成,但当开辟ActiveXDLL时,你可使用VisualBasic的全套基础指令、体系外壳指令和一切把持台所能举行的操纵,因而也就同意在线网站和外部互联网的全体主动把持。如许就把本来用ASP包括文件完成的ActiveXDLL的功能举行了拓展。
在用组合框选择添补的数据库域中存储查询关头字的值,进步数据的完全性,容易地在全部数据库中举行层叠式更新,这些都是很一般的操纵。举例来讲,如今有一个拼写毛病的文本形貌,能够在查循表中举行修正,一切选择了这个形貌的相干条目城市主动地修正,由于我们已存储了与这个形貌相干的数字。组合框以查询表的内容为基本,这些内容将查询关头字的值与其形貌接洽起来,假如体系利用了很多查询的话,发生这些组合框的代码会变得十分反复。本文用ActiveXDLL来简化创立HTML组合框的程序,用一个数据库查询表中的内容举行添补。例子中的表名为lookup_table,它有以下域:
Lookup_Key:存储在数据库中的值
Lookup_Field:对查询元素举行分类
Lookup_Description:显现在组合框中的形貌
要创立ActiveXDLL,步骤以下:
入手下手一个新的visualbasic工程文件;
选择ActiveXDLL作为工程文件范例;
在Properties窗口,定名类模块和工程文件。将工程文件定名为keiths_lookup,将模块定名为lookup。ASP援用DLL函数时要利用这些名字。今后在ASP码中,将要援用一个名为keiths_lookup.lookup的服务器工具。
用一样的名字保留工程文件和模块,个中工程文件的扩大名为.vbp,类模块的扩大名为.cls。在本例中工程文件的名字为keiths_lookup,模块的名字为lookup。
在工程菜单中,选择References。这是你可使用的别的使用程序工具。在本例中,反省MicrosoftActiveXdataobjects2.0库和MicrosoftActiveXDataObjectsRecordset2.0库。
在包括查询表的IIS服务器数据库中创立一个名为Sumnet的数据集。这个数据库没有效户名和口令。
如今能够键进以下代码:
PublicFunctionhtml_combo(combonameAsString,Lookup_fieldAsString)AsString
DimoutstringAsString
DimconnAsADODB.Connection
DimrstAsADODB.Recordset
DimsqlstringAsString
Setconn=CreateObject("ADODB.Connection")
Setrst=CreateObject("ADODB.Recordset")
Sqlstring="SELECT[Lookup_Description],[Lookup_Key]FROM
[Lookup_Table]WHERE[Lookup_Field]="&Lookup_Field&""
conn.Open"DSN=Sumnet;UID=;PWD=.;"
rst.Opensqlstring,conn,3,3
IfNotrst.EOFThen
rst.MoveFirst
outstring="<Selectname="&comboname&">"
DoWhileNotrst.EOF
outstring=outstring&"<OptionValue="&
rst.Fields("lookup_key")&">"&_
rst.Fields("lookup_description")&"</Option>"
rst.MoveNext
Loop
EndIf
outstring=outstring&"</Select>"
html_combo=outstring
rst.Close
conn.Close
EndFunction
然后,保留工程文件和类模块。
编译工程文件的步骤以下:
启动VisualStudio6.0工具中的PackageDeploymentWizard;
选择方才创立的ActiveX工程文件;
点击Package;
选择打包剧本名或利用默许值;
选择StandardSetup;
选择一个安排安装文件的文件夹;
选择单个cab;
点击Next利用别的默许选项;
在IIS服务器上运转setup。
如今能够经由过程ASP代码利用DLL,由于在体系数据库中它已被注册了。上面的ASP代码将利用所创立的LL外部的函数。它将发生三个组合框,一个用州来添补,一个用地位添补,别的一个用岁数组。第一个参数将成为网页上的工具名,第二个参数是用来添补组合框中查询域的值。
<%@Language="VBSCRIPT"%>
<%
Setlook=Server.CreateObject("keiths_lookup.lookup")
%>
<HTML><BODY>
<%=look.html_combo("State","States")%>
<%=look.html_combo("Position","Positions")%>
<%=look.html_combo("Age_group","Age_Groups")%>
</BODY>
</HTML>
这个例子十分复杂。经由过程利用更多的参数,如表名、域名等,能够创立很多便携式的函数,这些函数能够用在你的事情中所碰到的林林总总的使用程序中。
由于这些代码是在服务器一端程度上运转的,以是客户机不必要安装任何器材。这仅仅是用ActiveXDLL所能完成的功效的小小的例子。只必要一点点勉力,就能够失掉一个在收集用户中与众不同的多功效使用程序。
</p>大家可以自己去看一看.可以说看得想呕吐.以前有次下了个动网来看.里面连基本内置函数的保护措施(函数没防御性)都没有.难怪经常补这个补那个了.可能现在.NET版会好点吧 |
|