仓酷云

标题: ASP教程之ASP进修:远程注册本人的组件 [打印本页]

作者: 再现理想    时间: 2015-1-16 22:58
标题: ASP教程之ASP进修:远程注册本人的组件
对用户来说可预见费用、节约费用,可以做到花少钱办大事。由于省去了购买软件和硬件等的前期费用,用户可以租用较高级的应用软件。ASP的收费是根据软件的类型、客制化程度、用户数量、服务期限来定的,对客户来说这笔费用是可以预见的。方便于客户应用软件的升级。把asp程序作成dll良多优点,可是有一点,该dll必需注册才干在asp中挪用。假如是本人的服务器那还好,但假如是租用的假造服务器,就没举措利用了。
如何在远程主机上注册我们的dll呢?在服务器端利用Shell!!!

让我们先将本人的dll文件经由过程ftp或http上传到服务器上,然后作一个asp程序,挪用WScript.Shell来实行regsvr32命令:
SetoShell=CreateObject("WScript.Shell")
oShell.Run"c:WINNTsystem32egsvr32.exe/sd:xxx.dll",0,False
固然假如对方的服务器平安弄的很好的话,这个代码大概就不克不及用了,但不论怎样,进修一下也是好的,:)
在这里也要提示那些出租空间的伴侣,你的服务器是不是限定了利用WScript.Shell的权限?仍是当心为妙

完全代码以下,保留为.asp便可利用:
<%Response.Buffer=True%>
<%Server.ScriptTimeout=500
DimfrmFolderPath,frmFilePath

frmFolderPath=Request.Form("frmFolderPath")
frmFilePath=Request.Form("frmDllPath")
frmMethod=Request.Form("frmMethod")
btnREG=Request.Form("btnREG")
%>

<HTML>
<HEAD>
<TITLE>Regsvr32.asp</TITLE>
<STYLETYPE="TEXT/CSS">
.Legend{FONT-FAMILY:veranda;FONT-SIZE:14px;FONT-WEIGHT:bold;COLOR:blue}
.FS{FONT-FAMILY:veranda;FONT-SIZE:12px;BORDER-WIDTH:4px;BORDER-COLOR:green;
MARGIN-LEFT:2px;MARGIN-RIGHT:2px}
TD{MARGIN-LEFT:6px;MARGIN-RIGHT:6px;PADDING-LEFT:12px;PADDING-RIGHT:12px}
</STYLE>
</HEAD>

<BODY>
<FORMNAME="regForm"METHOD="POST">
<TABLEBORDER=0CELLSPACING=6CELLPADDING=6MARGINWIDTH=6>
<TR>
<TDVALIGN=TOP>
<FIELDSETID=FS1NAME=FS1CLASS=FS>
<LEGENDCLASS=Legend>RegsvrFunctions</LEGEND>
InsertPathtoDLLDirectory<BR>
<INPUTTYPE=TEXTNAME="frmFolderPath"VALUE="<%=frmFolderPath%>"><BR>
<INPUTTYPE=SUBMITNAME=btnFileListVALUE="BuildFileList"><BR>
<%
IFRequest.Form("btnFileList")""ORbtnREG""Then
SetRegisterFiles=NewclsRegister
RegisterFiles.EchoB("<B>SelectFile</B>")
CallRegisterFiles.init(frmFolderPath)
RegisterFiles.EchoB("<BR><INPUTTYPE=SUBMITNAME=btnREGVALUE="&Chr(34)_
&"REG/UNREG"&Chr(34)&">")
IFRequest.Form("btnREG")""Then
CallRegisterFiles.Register(frmFilePath,frmMethod)
EndIF
SetRegisterFiles=Nothing
EndIF
%>
</FIELDSET>
</TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>
<%
ClassclsRegister

Privatem_oFS

PublicPropertyLetoFS(objOFS)
m_oFS=objOFS
EndProperty

PublicPropertyGetoFS()
SetoFS=Server.CreateObject("Scripting.FileSystemObject")
EndProperty

Subinit(strRoot)RoottoSearch(c:,d:,e:)
DimoDrive,oRootDir
IFoFS.FolderExists(strRoot)Then
IFLen(strRoot)<3ThenMustBeaDrive
SetoDrive=oFS.GetDrive(strRoot)
SetoRootDir=oDrive.RootFolder
Else
SetoRootDir=oFS.GetFolder(strRoot)
EndIF
Else
EchoB("<B>Folder("&strRoot&")NotFound.")
ExitSub
EndIF
setRoot=oRootDir

Echo("<SELECTNAME="&Chr(34)&"frmDllPath"&Chr(34)&">")
CallgetAllDlls(oRootDir)
EchoB("</SELECT>")
BuildOptions
EndSub

SubgetAllDlls(oParentFolder)经由过程fso枚举一切的dll和ocx文件
DimoSubFolders,oFile,oFiles
SetoSubFolders=oParentFolder.SubFolders
SetopFiles=oParentFolder.Files

ForEachoFileinopFiles
IFRight(lCase(oFile.Name),4)=".dll"ORRight(lCase(oFile.Name),4)=".ocx"Then
Echo("<OPTIONVALUE="&Chr(34)&oFile.Path&Chr(34)&">"_
&oFile.Name&"</Option>")
EndIF
Next

OnErrorResumeNext
ForEachoFolderInoSubFoldersIterateAllFoldersinDrive
SetoFiles=oFolder.Files
ForEachoFileinoFiles
IFRight(lCase(oFile.Name),4)=".dll"ORRight(lCase(oFile.Name),4)=".ocx"Then
Echo("<OPTIONVALUE="&Chr(34)&oFile.Path&Chr(34)&">"_
&oFile.Name&"</Option>&q</p>楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。
作者: 精灵巫婆    时间: 2015-1-19 19:30
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
作者: 若天明    时间: 2015-1-24 15:36
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
作者: 小妖女    时间: 2015-1-25 20:24
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
作者: 若相依    时间: 2015-1-28 05:53
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
作者: 柔情似水    时间: 2015-2-5 12:11
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
作者: 飘飘悠悠    时间: 2015-2-11 19:08
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
作者: 活着的死人    时间: 2015-3-2 17:25
从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了
作者: 再现理想    时间: 2015-3-11 04:49
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
作者: 兰色精灵    时间: 2015-3-17 20:56
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
作者: 灵魂腐蚀    时间: 2015-3-25 02:34
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2