Function MyVbsMsgBox( strTitle, strPrompt, nButton ) Dim bRet If 1 = nButton Then nButton = vbYesNo OR vbQuestion OR vbDefaultButton1 ElseIf 2 = nButton Then nButton = vbYesNo OR vbQuestion OR vbDefaultButton2 End If bRet = false If vbYes = MsgBox( strPrompt, nButton, strTitle ) Then bRet = true End If MyVbsMsgBox = bRet End Function Function GetSystemVer() dim tmp assistant.EasyFunction ID_REPAIR_GETSYSTEMINFO, 0, "", tmp GetSystemVer = tmp End Function Sub SetListCheck( nIndex, strCheck ) dim tmp assistant.EasyFunction ID_REPAIR_SETCHECK, nIndex, CStr(strCheck), tmp End Sub Function GetSpecValue( strString, strItemName ) On Error Resume Next Dim strSchName dim ArrTemp dim i dim strRetVal strSchName = strItemName & "=" strRetVal = "" ArrTemp = split( strString, "->|||<-" ) for i = 0 to UBound(ArrTemp) nPos = InStr( ArrTemp(i), strSchName ) if nPos > 0 then strRetVal = mid( ArrTemp(i), nPos + Len(strSchName) ) exit for end if Next GetSpecValue = strRetVal If err Then err.clear End If End Function Function EacapeStr( str ) dim retVal retVal = str if len(retVal) > 0 then 'retVal = replace( retVal, """", "\""" ) retVal = replace( retVal, "\", "\\" ) retVal = replace( retVal, "'", "\'" ) retVal = replace( retVal, "&", "&" ) End if EacapeStr = retVal End Function Function GetFileVersion( strFile ) On Error Resume Next Dim tmp AutoLive.Action "Assist", 1, strFile, "", tmp GetFileVersion = tmp If err Then err.clear End Function Function CheckIsUpdate( strDll, strVer ) On Error Resume Next Dim bRet, tmp bRet = false AutoLive.Action "#HKLMAssist", 1002, "#s" & strDll, "", tmp If tmp < strVer Then bRet = true End If CheckIsUpdate = bRet If err Then err.clear End Function '//////////////////////////////////////////////////////////// ' 更新历史 ' 2005-5-11 17:11 1.0.2.4 -> 1.0.3.1127 [刘其星] ' 2005-5-31 10:54 ierepairn.dat 1.0.2.0 -> 1.0.2.1 [CZW] ' 2005-5-31 10:54 iebwlist.dat 1.0.1.0 -> 1.0.1.1 [CZW] ' 2005-6-9 11:18 ierepairn.dat 1.0.2.1->1.0.2.2 [LQX] ' 2005-6-9 11:18 iebwlist.dat 1.0.1.1->1.0.1.2 [LQX] ' 2005-6-9 12:12 repair.dll 1.0.3.1127->1.0.4.1000 [LQX] ' 2005-6-9 11:18 ierepairn.dat 1.0.2.1->1.0.2.3 [LQX] ' 2005-6-9 11:18 iebwlist.dat 1.0.1.2->1.0.1.3 [LQX] ' 2005-6-9 11:18 ierepairn.dat 1.0.2.3->1.0.2.4 [CZW] ' 2005-6-29 14:19 ierepairn.dat 1.0.2.4->1.0.2.5 [CZW] ' 2005-7-1 09:05 ierepairn.dat 1.0.2.5->1.0.2.6 [CZW] ' 2005-7-1 09:05 iebwlist.dat 1.0.1.3->1.0.1.4 [CZW] ' 2005-7-21 10:13 ierepairn.dat 1.0.2.6->1.0.2.7 [CZW] ' 2005-7-21 10:13 iebwlist.dat 1.0.1.4->1.0.1.5 [CZW] ' 2005-7-21 10:13 iebwlist.dat 1.0.1.5->1.0.1.6 [CZW] ' 2005-9-16 13:58 ierepairn.dat 1.0.2.7->1.0.2.8 [DXH] ' 2005-9-30 18:50 yierepairn.dat 1.0.2.8->1.0.2.9 [DXH] ' 2005-10-14 18:50 yierepairn.dat 1.0.2.9->1.0.3.0 [DXH] ' 2005-10-20 13:50 yierepairn.dat 1.0.3.0->1.0.3.1 [DXH] ' 2005-10-27 11:20 yierepairn.dat 1.0.3.1->1.0.3.2 [DXH] ' 2005-11-02 16:40 yierepairn.dat 1.0.3.2->1.0.3.3 [DXH] ' 2005-11-02 16:40 yiebwlist.dat 1.0.1.6->1.0.1.7 [DXH] ' 2005-11-09 23:10 yierepairn.dat 1.0.3.3->1.0.3.4 [DXH] ' 2005-11-16 23:10 yierepairn.dat 1.0.3.4->1.0.3.5 [DXH] ' 2005-11-16 16:40 yiebwlist.dat 1.0.1.7->1.0.1.8 [DXH] ' 2005-11-24 10:10 yierepairn.dat 1.0.3.5->1.0.3.6 [DXH] ' 2005-11-30 10:10 yierepairn.dat 1.0.3.6->1.0.3.7 [DXH] ' 2005-12-07 18:39 yierepairn.dat 1.0.3.7->1.0.3.8 [DXH] ' 2005-12-15 10:39 yierepairn.dat 1.0.3.8->1.0.3.9 [DXH] ' 2005-12-15 16:40 yiebwlist.dat 1.0.1.8->1.0.1.9 [DXH] ' 2005-12-21 16:40 yiebwlist.dat 1.0.1.9->1.0.2.0 [CZW] ' 2005-12-21 10:39 yierepairn.dat 1.0.3.9->1.0.4.0 [DXH] ' 2005-12-28 10:39 yierepairn.dat 1.0.4.0->1.0.4.1 [DXH] ' 2006-01-10 10:39 yierepairn.dat 1.0.4.1->1.0.4.2 [DXH] ' 2005-12-21 16:40 yiebwlist.dat 1.0.2.0->1.0.2.1 [CZW] ' 2006-01-10 10:39 yierepairn.dat 1.0.4.2->1.0.4.3 [DXH] ' 2005-12-21 16:40 yiebwlist.dat 1.0.2.1->1.0.2.2 [CZW] ' 2006-01-25 10:39 yierepairn.dat 1.0.4.3->1.0.4.4 [DXH] ' 2006-02-15 10:39 yierepairn.dat 1.0.4.4->1.0.4.5 [DXH] ' 2006-03-15 16:00 yierepairn.dat 1.0.4.5->1.0.4.6 [SHL] Function GetInsModulesList( vvdllRet, vvverRet ) On Error Resume Next Dim bRet Dim tidll, tiver bRet = false Dim i Dim ArrDll(9), ArrVer(9) ArrDll(0) = FN_YASSIST_DLL ArrVer(0) = VV_YASSIST_DLL ArrDll(1) = FN_YREPAIR_DLL ArrVer(1) = VV_YREPAIR_DLL ArrDll(2) = FN_YASFSKS_DLL ArrVer(2) = VV_YASFSKS_DLL ArrDll(3) = FN_YIEREPAIRN_DAT ArrVer(3) = VV_YIEREPAIRN_DAT ArrDll(4) = FN_YIEBWLIST_DAT ArrVer(4) = VV_YIEBWLIST_DAT ArrDll(5) = FN_YASIESEC_DLL ArrVer(5) = VV_YASIESEC_DLL ArrDll(6) = FN_YASIERRES_DLL ArrVer(6) = VV_YASIERRES_DLL ArrDll(7) = FN_YIEREPAIRN_DAT ArrVer(7) = VV_YIEREPAIRN_DAT ArrDll(8) = FN_YIEBWLIST_DAT ArrVer(8) = VV_YIEBWLIST_DAT For i = 0 to UBound(ArrDll) tidll = ArrDll(i) :: tiver = ArrVer(i) If Len(tidll) > 0 And Len(tiver) > 0 Then If CheckIsUpdate( tidll, tiver ) Then vvdllRet = vvdllRet & "," & tidll :: vvverRet = vvverRet & "," & tiver End If End If Next vvdllRet = Trim( vvdllRet ) vvverRet = Trim( vvverRet ) If Len(vvdllRet) > 0 and Len(vvverRet) > 0 Then If "," = Left( vvdllRet, 1 ) Then vvdllRet = Right( vvdllRet, Len(vvdllRet)-1 ) End If If "," = Left( vvverRet, 1 ) Then vvverRet = Right( vvverRet, Len(vvverRet)-1 ) End If End If bRet = true GetInsModules = bRet End Function '---------------------------------------- ' 安装新IE修复专家 '---------------------------------------- Function InstallIefixNew() On Error Resume Next Dim RETA, bRet Dim strFile, vvdll, vvver, tidll, tiver, strUrl Dim tmp bRet = false RETA = 1000 If NOT Install( 1 ) Then Exit Function End If Call InsAutolive() If IsObject( AutoLive ) Then vvdll = "" :: vvver = "" Call GetInsModulesList( vvdll, vvver ) ' update now ... If Len(vvdll) > 0 and Len(vvver) > 0 and _ ( UBound(split(vvdll,",")) = UBound(split(vvver,",")) ) Then RETA = AutoLive.Action( "assist", 2, vvdll, g_IniInstall, vvver ) Else RETA = 0 if GetFileVersion("yrepair.dll") <= "1.0.1.3" then RETA = 1 end if End If If 0 = RETA Then bRet = true ' 成功 ElseIf 1 = RETA Then if GetFileVersion( "yrepair.dll" ) < "1.0.2.0" then strFile = getFileNameFromUrl( location.href ) If "iefix02.htm" = strFile Then location.href = "iefixold02.htm" Else location.href = "safe_ok.htm?title=请重新启动您的电脑&func=您的IE修复专家已被更新到最新版本,但您需要重新启动您的电脑才能使新功能生效。&fb=" & strFile & "&picture1=dot_information.gif&picture2=ok_rstrt.gif" End If end if ElseIf 2 = RETA Then location.href = "install_fail02.htm?fb=" & getFileNameFromUrl(location.href) Else location.href = "install_fail03.htm?fb=" & getFileNameFromUrl(location.href) End If dim temp assistant.EasyFunction &H10000, 0, "", temp Else strUrl = PAGE_ASSIST_INSTALL & "?oldPage=" & getFileNameFromUrl( location.href ) location.href = strUrl End If ' 返回 InstallIefixNew = bRet If err Then err.clear End If End Function Function GetFileInfo( nIndex ) On Error Resume Next assistant.EasyFunction ID_REPAIR_GETFILEINFO, nIndex, "", tmp If err Then err.clear End Function Function FixSpecOne( nIndex ) On Error Resume Next If 0 = assistant.EasyFunction( ID_REPAIR_FIX, nIndex, "", tmp ) Then FixSpecOne = true Else FixSpecOne = false End If If err Then err.clear End Function