垃圾引用防治补丁以及发送引用修正补丁的自动安装程序

2019-01-14 00:07:45王旭

Private Function SaveFile(ByVal strBody,ByVal File)
    Dim objStream
    Dim RText
    RText=""
    Set objStream = Server.CreateObject("ADODB.Stream")
    If Err Then 
        RText=array(Err.Number,Err.Description)
        Err.Clear
        exit function
    End If
    With objStream
        .Type = 2
        .Open
        .Charset = "utf-8"
        .Position = objStream.Size
        .WriteText = strBody
        .SaveToFile Server.MapPath(File),2
        .Close
    End With
    RText="ok"
    SaveFile=RText
    Set objStream = Nothing
End Function

Private Function replaceStr(FileName,IntStr,FinStr)
Dim loadStr
loadStr=LoadFile(FileName)
if instr(loadStr,IntStr)<>0 then
   SaveFile loadStr,FileName&"_temp" 'backup!
   loadStr=replace(loadStr,IntStr,FinStr)
   SaveFile loadStr,FileName
   replaceStr=true
Else
   replaceStr=false
End if
loadStr=""
End Function 

Private Function DeleteFile(FilePath)
  Dim FSO
  Set FSO=Server.CreateObject("Scripting.FileSystemObject")
  IF FSO.FileExists(server.mapPath(FilePath)) Then
    FSO.DeleteFile server.mapPath(FilePath),True
    DeleteFile = True
  Else
    DeleteFile = false
  End IF
  Set FSO = Nothing
End Function


If request("act")="go" then
    '=====Start============

    Dim TempStr,result,aspOpen,aspClz,Er
    Er=""
    result=""
    aspOpen=chr(60)&chr(37)
    aspClz=chr(37)&chr(62)

    if Er="" then
       result=replaceStr("trackback.asp","    If Conn.Execute(""SELECT count(tb_ID) FROM blog_Trackback WHERE blog_ID=""&tbID&"" AND tb_URL='""&tbURL&""' AND tb_Title='""&tbTitle&""' AND tb_Intro='""&tbExcerpt&""' AND tb_Site='""&tbBlog&""'"")(0)>0 Then","if StrComp(Request.QueryString(""key""),blog_tbKey)=0 Then"&vbcrlf&_
""&vbcrlf&_    
"    If Conn.Execute(""SELECT count(tb_ID) FROM blog_Trackback WHERE blog_ID=""&tbID&"" AND tb_URL='""&tbURL&""' AND tb_Title='""&tbTitle&""' AND tb_Intro='""&tbExcerpt&""' AND tb_Site='""&tbBlog&""'"")(0)>0 Then")
       if not result then Er=Er&"trackback.asp 文件修改第一步出错!<br>"
    End if