?? install.asp
字號:
.Mode = adModeReadWrite
.Open
.Charset = strCharset
.Position = objStream.Size
.WriteText = strContent
.SaveToFile strFullName,adSaveCreateOverWrite
.Close
End With
Set objStream = Nothing
Err.Clear
End Function
'*********************************************************
Function UpdateDateBase()
If IsNeedUpdateDataBase=False Then Exit Function
Dim tmpSng
Dim ZC_DATABASE_PATH
tmpSng=LoadFromFile(BlogPath & "/c_custom.asp","utf-8")
Call LoadValueForSetting(tmpSng,True,"String","ZC_DATABASE_PATH",ZC_DATABASE_PATH)
Dim strDbPath
strDbPath=BlogPath & ZC_DATABASE_PATH
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDbPath
If Not CheckUpdateDB("[log_IsTop]","[blog_Article]") Then
objConn.execute("ALTER TABLE [blog_Article] ADD COLUMN [log_IsTop] YESNO DEFAULT FALSE")
objConn.execute("UPDATE [blog_Article] SET [log_IsTop]=FALSE")
End If
If Not CheckUpdateDB("[log_Tag]","[blog_Article]") Then
objConn.execute("ALTER TABLE [blog_Article] ADD COLUMN [log_Tag] VARCHAR(255)")
End If
If Not CheckUpdateDB("[tag_ID]","[blog_Tag]") Then
objConn.execute("CREATE TABLE [blog_Tag] (tag_ID AutoIncrement primary key,tag_Name VARCHAR(255),tag_Intro text,tag_ParentID int,tag_URL VARCHAR(255),tag_Order int,tag_Count int)")
End If
If Not CheckUpdateDB("[coun_ID]","[blog_Counter]") Then
objConn.execute("CREATE TABLE [blog_Counter] (coun_ID AutoIncrement primary key,coun_IP VARCHAR(20),coun_Agent text,coun_Refer VARCHAR(255),coun_PostTime TIME DEFAULT Now())")
End If
If Not CheckUpdateDB("[key_ID]","[blog_Keyword]") Then
objConn.execute("CREATE TABLE [blog_Keyword] (key_ID AutoIncrement primary key,key_Name VARCHAR(255),key_Intro text,key_URL VARCHAR(255))")
End If
If Not CheckUpdateDB("[ul_Quote]","[blog_UpLoad]") Then
objConn.execute("ALTER TABLE [blog_UpLoad] ADD COLUMN [ul_Quote] VARCHAR(255)")
objConn.execute("ALTER TABLE [blog_UpLoad] ADD COLUMN [ul_DownNum] int DEFAULT 0")
End If
UpdateDataBaseMsg= "數據庫升級成功" & vbcrlf
Dim objRS,log_Intro,log_Content,log_ID
Set objRS=objConn.Execute("SELECT [log_ID],[log_Intro],[log_Content] FROM [blog_Article] WHERE [log_Intro] LIKE '%UPLOAD%' OR [log_Content] LIKE '%UPLOAD%' ")
If (Not objRS.bof) And (Not objRS.eof) Then
Do While Not objRS.EOF
log_ID=Update_Replace16betaUploadStr(objRS("log_ID"))
log_Intro=Update_Replace16betaUploadStr(objRS("log_Intro"))
log_Content=Update_Replace16betaUploadStr(objRS("log_Content"))
objConn.Execute("UPDATE [blog_Article] SET [log_Intro]='"&FilterSQL(log_Intro)&"',[log_Content]='"&FilterSQL(log_Content)&"' WHERE [log_ID]="&log_ID)
objRS.MoveNext
Loop
End If
Set objRS=Nothing
objConn.Close
Set objConn=Nothing
End Function
'*********************************************************
' 目的:
'*********************************************************
Function Update_Replace16betaUploadStr(str)
Dim objRegExp,Matches,i,FileID,objRS,tmpstr
Set objRegExp = New RegExp
objRegExp.IgnoreCase = True
objRegExp.Global = True
objRegExp.Pattern = "\[UPLOAD=(\d+)\]"
Set Matches = objRegExp.Execute(Str)
For i = 0 To Matches.Count - 1
FileID=Matches(i).SubMatches(0)
Set objRS=objConn.Execute("SELECT [ul_ID],[ul_FileName] FROM [blog_UpLoad] WHERE [ul_ID]="&FileID&" ")
If (Not objRS.bof) And (Not objRS.eof) Then tmpstr=objRS("ul_FileName")
Set objRS=Nothing
str=Replace(str,"[UPLOAD="&FileID&"]","<a href="""&ZC_BLOG_HOST&"upload/"&tmpstr&""">"&tmpstr&"</a>")
UpdateDataBaseMsg=UpdateDataBaseMsg&"完成由[UPLOAD="&FileID&"]--><a href="""&ZC_BLOG_HOST&"upload/"&tmpstr&""">"&tmpstr&"</a>的轉換<br/>"
Next
Set Matches = Nothing
Set objRegExp=Nothing
Update_Replace16betaUploadStr=str
End Function
'*********************************************************
'*********************************************************
' 目的:
'*********************************************************
Function CheckUpdateDB(a,b)
Err.Clear
On Error Resume Next
Dim Rs
Set Rs=objConn.execute("SELECT "&a&" FROM "&b)
Set Rs=Nothing
If Err.Number=0 Then
CheckUpdateDB=True
Else
Err.Clear
CheckUpdateDB=False
End If
End Function
'*********************************************************
'*********************************************************
' 目的: 檢查引用
' 輸入: SQL值(引用)
' 返回:
'*********************************************************
Function FilterSQL(strSQL)
FilterSQL=CStr(Replace(strSQL,chr(39),chr(39)&chr(39)))
End Function
'*********************************************************
%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-cn" lang="zh-cn">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="zh-cn" />
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache,must-revalidate">
<meta http-equiv="expires" content="0">
<title>Z-Blog自動安裝升級程序</title>
<style type="text/css">
<!--
*{
font-size:12px;
}
body{
margin:0;
padding:0;
color: #000000;
font-size:12px;
background:#EDF5FB;
font-family:"宋體","黑體";
}
h1,h2,h3,h4,h5,h6{
font-size:18px;
padding:0;
margin:0;
}
a{
text-decoration: none;
}
a:link {
color:#0066CC;
text-decoration: none;
}
a:visited {
color:#0066CC;
text-decoration: none;
}
a:hover {
color:#FF7F50;
text-decoration: underline;
}
a:active {
color:#FF7F50;
text-decoration: underline;
}
p{
margin:0;
padding:5px;
}
table {
border-collapse: collapse;
border:1px solid #333333;
background:#ffffff;
margin-top:10px;
}
td{
border:1px solid #333333;
margin:0;
padding:3px;
}
img{
border:0;
}
hr{
border:0px;
border-top:1px solid #666666;
background:#666666;
margin:2px 0 4px 0;
padding:0;
height:0px;
}
img{
margin:0;
padding:0;
}
form{
margin:0;
padding:0;
}
#frmLogin{
position:absolute;
left: 50%;
top: 40%;
margin: -150px 0px 0px -300px;
padding:0;
overflow:hidden;
width:600px;
height:400px;
background-color:white;
border:1px solid #B3C3CD;
}
#frmLogin h3{
padding:12px 0 8px 0;
margin:1px 1px 0 1px;
text-align:center;
color:black;
background:#A1B0B9;
font-size:22px;
height:30px;
}
#divHeader{
background:#CFD9DF;
margin:0 1px 0 1px;
padding:8px;
}
#divMain{
height:300px;
}
#divFooter{
border-top:1px solid #A1B0B9;
margin:0 1px 0 1px;
text-align:center;
padding:2px;
}
#divMain_Top{
padding:8px;
padding-bottom:0;
}
#divMain_Center{
padding:5px;
}
#divMain_Bottom{
text-align:right;
padding:5px;
}
#txaContent{
border:1px solid #A1B0B9;
background:#FFFFFF;
}
-->
</style>
</head>
<body>
<form id="frmLogin" method="post" action="install.asp?ok=true">
<h3>Z-Blog <%=ZB_VERSION%> 自動安裝程序</h3>
<div id="divHeader"><a href="http://www.rainbowsoft.org/zblog/" target="_blank">Z-Blog主頁</a> | <a href="http://bbs.rainbowsoft.org" target="_blank">Zblogger社區</a> | <a href="http://wiki.rainbowsoft.org/" target="_blank">Z-Wiki</a> | <a href="http://blog.rainbowsoft.org/" target="_blank">菠蘿閣</a> | <a href="http://show.rainbowsoft.org/" target="_blank">菠蘿秀</a> | <a href="http://download.rainbowsoft.org/" target="_blank">菠蘿的海</a> | <a href="http://host.rainbowsoft.org/" target="_blank">DBS博客主機</a></div>
<div id="divMain">
<%
Dim ok
ok=Request.QueryString("ok")
If TypeName(ok)="Empty" Then
%>
<div id="divMain_Top">Z-Blog軟件最終用戶許可協議:</div>
<div id="divMain_Center">
<textarea id="txaContent" readonly="readonly" style="width:585px;height:220px;">
本《Z-Blog軟件最終用戶許可協議》(以下簡稱《協議》)是您與RainbowSoft Studio之間關于下載、安裝、使用、復制Z-Blog軟件的法律協議。本《協議》描述RainbowSoft Studio與您之間關于Z-Blog許可使用及相關方面的權利義務。
請您仔細閱讀本《協議》,用戶可選擇不使用Z-Blog,用戶使用Z-Blog的行為將被視為對本《協議》全部內容的認可,并同意接受本《協議》各項條款的約束。
1 知識產權聲明
1.1 Z-Blog是由RainbowSoft Studio的Z-Blog團隊開發,表情圖片由2S-SPACE STUDIO友情提供。Z-Blog的一切版權等知識產權,以及與Z-Blog相關的所有信息內容,包括但不限于:文字表述及其組合、商標、圖標圖飾、界面設計、版面框架、有關數據、印刷材料、電子文檔等均受著作權法和國際著作權條約以及其他知識產權法律法規的保護。除了任何軟件作者授權許可協議所提供的明確書面許可外,擁有本Z-Blog并不賦予您任何有關這些專利、商標、版權或其它知識產權的許可。
2 Z-Blog授權范圍
2.1 對每份許可協議,用戶可以在一臺計算機、終端機、工作站或其他數字電子儀器(下簡稱“計算機”)上安裝、使用、顯示、運行本Z-Blog。
2.2 保留權利:未明示授權的其他一切權利仍歸RainbowSoft Studio所有,用戶使用其他權利時須另外取得RainbowSoft Studio的書面同意。
3 用戶使用須知
3.1 用戶在遵守法律及本協議的前提下可依據本《協議》使用本Z-Blog。用戶無權實施包括但不限于下列行為:
3.1.1 不得刪除本Z-Blog及其他副本上所有關于版權的信息、內容;
3.1.2 對于本Z-Blog的源代碼、文字、圖片等相關信息,未經RainbowSoft Studio書面同意,用戶不得借助Z-Blog發展與之有關的衍生產品、作品、服務,不得向任何第三方公開發布修改后的軟件。
3.1.3 用戶不得利用本Z-Blog發表、傳播、儲存侵害他人知識產權、商業秘密權等合法權利的內容。
3.2 本Z-Blog同大多數Blog系統一樣,可能受到各種安全問題的侵擾。如:下載安裝其它軟件中含有“特洛伊木馬”等病毒,威脅到用戶計算機信息和數據的安全,繼而影響本Z-Blog的正常使用等。用戶應加強信息安全意識,注意加強密碼保護以免遭致損失。
3.3 用戶自行下載、安裝、使用非RainbowSoft Studio開發并正式發布的其它任何由本Z-Blog衍生的軟件將可能導致不可預知的風險,建議用戶不要輕易下載、安裝、使用,由此產生的一切法律責任與糾紛一概與RainbowSoft Studio無關。
3.4 RainbowSoft Studio保留在任何時候為您提供本Z-Blog的修改、升級版本的權利,以及為修改或升級服務收取費用的權利。
4 法律責任與免責
4.1 RainbowSoft Studio特別提請用戶注意,RainbowSoft Studio擁有隨時自行修改或中斷軟件授權而不需通知用戶的權利,如有必要,修改或中斷會以通告形式公布于RainbowSoft Studio網站重要頁面上。
4.2 用戶違反本協議或相關的服務條款的規定,RainbowSoft Studio有權視用戶的行為性質采取包括但不限于中斷使用許可、停止提供服務、限制使用、法律追究等措施。同時,RainbowSoft Studio會視司法部門的要求,協助調查。
4.3 使用本Z-Blog涉及到互聯網服務因素,可能會受到各個環節不穩定因素的影響,存在因不可抗力、計算機病毒、黑客攻擊、系統不穩定、用戶所在位置、用戶關機以及其他任何網絡、技術、通信線路等原因造成的服務中斷或不能滿足用戶要求的風險,用戶須明白并自行承擔以上風險。在適用法律允許的最大范圍內,RainbowSoft Studio在任何情況下不就因使用或不能使用本Z-Blog產品及所發生的特殊的、意外的、非直接或間接的損失承擔賠償責任,即使用戶已事先被RainbowSoft Studio告知該損害發生的可能性。
4.4 用戶因第三方如電信部門的通訊線路故障、技術問題、網絡、電腦故障、系統不穩定性及其他各種不可抗力原因而遭受的經濟損失,RainbowSoft Studio不承擔責任。
4.5 因技術故障等不可抗事件影響到服務的正常運行的,RainbowSoft Studio承諾在第一時間內與相關單位配合及時處理進行修復,但用戶因此而遭受的經濟損失,RainbowSoft Studio不承擔責任。
</textarea>
</div>
<%If IsEmpty(Request.QueryString("update")) Then%>
<div id="divMain_Bottom">
<input name="chkRemember" id="chkRemember" type="checkbox" onclick="if(this.checked==true){document.getElementById('btnUpt').disabled=false;document.getElementById('btnNew').disabled=false;}else{document.getElementById('btnUpt').disabled=true;document.getElementById('btnNew').disabled=true;}" /><label for="chkRemember">我已閱讀并同意</label>
<input class="button" id="btnUpt" disabled type="button" value="自動升級BLOG程序>>" onclick="window.location='install.asp?update'"/>
<input class="button" id="btnNew" disabled type="submit" value="全新安裝BLOG程序>>" onclick='return window.confirm("全新安裝模式將覆蓋您所有已存在文件并且不進行備份,按[確定]繼續安裝");'/>
</div>
<%Else%>
<div id="divMain_Bottom">
請選擇您當前的Z-BLOG版本:
<select Name="CurrentVersion" id="CurrentVersion" >
<option selected value="12">Z-Blog 1.2</option>
<option value="13">Z-Blog 1.3</option>
<option value="14">Z-Blog 1.4</option>
<option value="15">Z-Blog 1.5</option>
<option value="15Plus">Z-Blog 1.5 Plus</option>
<option value="16Beta">Z-Blog 1.6 Beta</option>
<option value="16Final">Z-Blog 1.6 Final</option>
<option value="17Squirrel">Z-Blog 1.7 Squirrel</option>
<option value="17Laputa">Z-Blog 1.7 Laputa</option>
<option value="18Terminator">Z-Blog 1.8 Terminator</option>
<option value="18Devo">Z-Blog 1.8 Devo</option>
<option value="18Spirit">Z-Blog 1.8 Spirit</option>
<option value="18Spirit">Z-Blog 1.8 Arwen</option>
</select>
<input class="button" type="button" value="開始升級BLOG程序>>" onclick="var ver=document.getElementById('CurrentVersion').options[document.getElementById('CurrentVersion').selectedIndex].value;if(window.confirm('您選擇了'+document.getElementById('CurrentVersion').options[document.getElementById('CurrentVersion').selectedIndex].text+',按[確定]開始升級')){window.location='install.asp?ok=true&ver='+ver;}"/>
</div>
<%End If%>
<%
Else
Select Case Request.QueryString("ver")
Case "12"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "13"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "14"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "15"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "15Plus"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "16Beta"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "16Final"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "17Squirrel"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "17Laputa"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "18Terminator"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=True
Case "18Devo"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=False
Case "18Spirit"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=False
Case "18Arwen"
IsNeedUpdateDataBase=True
IsNeedCreateCustom=False
IsNeedCreateOption=False
Case Else
IsNeedUpdateDataBase=False
IsNeedCreateCustom=True
IsNeedCreateOption=True
End Select
%>
<div id="divMain_Top">創建目錄和釋放文件到當前空間:</div>
<div id="divMain_Center">
<textarea method="POST" id="txaContent" readonly="readonly" style="width:585px;height:220px;">
<%
Call UpdateDateBase()
Call UpdateFiles()
Call UpdateCustom()
Call DelXML()
%>
</textarea>
</div>
<div id="divMain_Bottom">
<%
If Request.QueryString("ver")=Empty Or Request.QueryString("ver")="" Then
%>
<input class="button" type="button" value="進入BLOG設置向導>>" onclick="window.location='default.asp'"/>
<%
Else
%>
<input class="button" type="button" value="進入BLOG>>" onclick="window.location='default.asp'"/>
<%
End If
%>
</div>
<%
End If
%>
</div>
<div id="divFooter">Powered By <a href="http://www.rainbowsoft.org/" target="_blank" title="RainbowSoft Studio">RainbowSoft Studio</a></div>
</form>
</body>
</html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -