●คำอธิบาย: คลาสอัปเกรดออนไลน์ของ ASP ●เวอร์ชัน: 1.0.0
●ผู้เขียน: เซียว เยว่เหิง (xiaoyuehen)
●MSN: xiaoyuehen(at)msn.com
●กรุณาแทนที่ (at) ด้วย @●Copyright: เนื่องจากมีการแบ่งปัน ลิขสิทธิ์จึงไม่มีความสำคัญ แต่จะต้องจำกัดอยู่เพียงการเผยแพร่ทางออนไลน์ และไม่สามารถใช้ในสื่อแบบดั้งเดิมได้!
● ฉันจะยินดีเป็นอย่างยิ่งหากคุณปฏิบัติตามคำแนะนำเหล่านี้ได้!
●หากคุณมีการเพิ่มประสิทธิภาพโค้ดที่ดีขึ้นและการปรับปรุงที่เกี่ยวข้อง โปรดอย่าลืมบอกฉัน ขอบคุณมาก!
●แนวคิด:
1. ค้นหารายการเวอร์ชัน => 2. เปรียบเทียบความแตกต่างของเวอร์ชัน => 3. รับรายการอัปเดตของเวอร์ชันที่สูงกว่าถัดไป หากไม่มีเวอร์ชันที่สูงกว่า ให้ข้ามไปยังขั้นตอนที่ 5 => 4. อัปเดต => กลับสู่ขั้นตอนที่ 3
5. ออกจากการอัปเดต ●คำแนะนำอื่นๆ: อัปเกรดส่วนเพิ่ม
●นอกประเด็น: ใช้เวลาทั้งหมดประมาณ 7 ชั่วโมง มีการเร่งรีบเล็กน้อยและโค้ดยังไม่ได้รับการปรับปรุงเพียงพอ ในระหว่างการทดสอบในตัวเครื่อง ใช้เวลาเกือบ 1 วินาทีในการอัปเดต 2 เวอร์ชันและทั้งหมด 4 ไฟล์
ฉันไม่เคยทำอะไรแบบนี้มาก่อน เลยไม่สามารถพูดถึงอัลกอริทึมใดๆ ได้เลย เพื่อนๆ ที่เคยทำมาแล้ว โปรดแสดงความคิดเห็นด้วย ขอบคุณ!
●รหัสนี้มีวัตถุประสงค์เพื่อสื่อสารระหว่างกัน●
●ก่อนที่คุณจะเริ่มต้น โปรดอ่านคำแนะนำต่อไปนี้อย่างละเอียด
● ข้อกำหนดฝั่งเซิร์ฟเวอร์:
1. ผู้จัดการไซต์ คุณสามารถเข้าถึงเวอร์ชันและข้อมูลการอัปเกรดที่เกี่ยวข้องผ่านทางที่อยู่ URL
2. ไฟล์ข้อมูลเวอร์ชัน เช่น Version.asp
3. แต่ละเวอร์ชันจะต้องอยู่ภายใต้ไดเร็กทอรีที่ระบุโดย UrlUpdate (ดูคำอธิบายด้านล่าง) ตัวอย่างเช่น UrlUpdate คือ http://Localhost/__Jxc/Update/
หากเวอร์ชันเป็น 1.0.8 ไฟล์อัปเกรดของเวอร์ชันนี้จะต้องอยู่ที่ http://Localhost/__Jxc/Update/108/
4. ข้อมูลที่ส่งคืนโดยข้อมูลเวอร์ชันคือรายการ แต่ละบรรทัดแสดงถึงข้อมูลเวอร์ชัน (ไม่อนุญาตให้มีบรรทัดว่าง) และเวอร์ชันที่สูงกว่าจะอยู่ด้านบนสุด รูปแบบจะเป็นดังนี้:
1.1.0
1.0.8
1.0.0
5. รูปแบบข้อมูลการอัพเดตไฟล์ของบางเวอร์ชันคือการลบหมายเลขหลังหมายเลข + FileType (ดูคำอธิบายด้านล่าง) และวางไว้ใต้ UrlUpdate เช่น: http://Localhost/__Jxc/Update/110.asp , และมีรูปแบบเนื้อหาดังนี้
3.htm|ทดสอบ/ทดสอบ/3.asp
4.htm|ทดสอบ/ทดสอบ/4.asp
5.htm|ทดสอบ/5.asp
6.htm|ทดสอบ/6.asp
แยกไฟล์ต้นฉบับและไฟล์ปลายทางด้วย | ไฟล์ต้นฉบับจะถูกอ่านจากไดเร็กทอรีเวอร์ชันที่เกี่ยวข้อง ดังที่แสดงไว้ด้านบน ที่อยู่ที่เกี่ยวข้องของ 3.htm ควรเป็น
http://Localhost/__Jxc/Update/110/3.htm
หาก UpdateLocalPath = "/" ปลายทางการอัปเดตที่เกี่ยวข้องของ Test/Test/3.asp คือ /Test/Test/3.asp ในระหว่างกระบวนการอัปเดต โปรแกรมจะสร้างไดเร็กทอรีที่ไม่มีอยู่จริงโดยอัตโนมัติ
และเขียนทับไฟล์เป้าหมาย
●ความต้องการของลูกค้า:
IIS 5.0 หรือสูงกว่า
รองรับ FSO (สำหรับการสร้างไฟล์)
รองรับ Adobe.Stream (สำหรับการแปลงการเข้ารหัส)
รองรับ Microsoft.XMLHTTP (สำหรับการดึงข้อมูลระยะไกล)
●คุณสมบัติ:
ข้อมูล รับข้อมูลล่าสุดระหว่างกระบวนการอัปเกรด ●คำอธิบายพารามิเตอร์:
UrlVersion ●จำเป็น● URL ที่สมบูรณ์ของข้อมูลเวอร์ชัน โดยขึ้นต้นด้วย http://
UrlUpdate ●Required● อัปเกรด URL เริ่มต้นด้วย http:// และลงท้ายด้วย /
UpdateLocalPath ●จำเป็น● ไดเร็กทอรีอัพเดตในตัวเครื่อง เริ่มต้นด้วย / และลงท้ายด้วย / เริ่มต้นด้วย / สำหรับการอัปเดตไซต์ปัจจุบัน ●ค่าเริ่มต้น ● /
UrlHistory ●จำเป็น● ชื่อไฟล์ของไฟล์ประวัติซอฟต์แวร์ที่สร้างขึ้น
LocalVersion ●จำเป็น● ข้อมูลเวอร์ชันปัจจุบัน ●ค่าเริ่มต้น ● 1.0.0
ประเภทไฟล์ ●จำเป็น● ส่วนต่อท้ายข้อมูลเวอร์ชัน ●ค่าเริ่มต้น● .asp
●คำอธิบายวิธีการ:
ทำการอัพเดตการอัพเกรด
หลังจากตั้งค่าพารามิเตอร์ที่เกี่ยวข้องแล้ว คุณสามารถเริ่มต้นระดับยาวได้ด้วยวิธีนี้ ●คำแนะนำอื่นๆ: หมายเลขเวอร์ชันจะต้องประกอบด้วยตัวเลข 0-9 และ . และหลักแรกต้องไม่ต่ำกว่า 1 ความยาวของแต่ละเวอร์ชัน จะต้องเหมือนกัน เช่น 1.0 .0 และ 1.2.2 หรือ 1.2.04 และ 1.2.78
●ตัวอย่าง:
รหัสโปรแกรม
<!--#include file="../__Inc/Cls_OnlineUpdate.asp"-->
-
ติ่ม objUpdate
ตั้งค่า objUpdate = Cls_oUpdate ใหม่
ด้วย objUpdate
.UrlVersion = " http://Localhost/__Jxc/Update/Version.asp "
.UrlUpdate = " http://Localhost/__Jxc/Update/ "
.UpdateLocalPath = "/"
.LocalVersion = "1.0.0"
.doอัปเดต
ตอบกลับเขียน(.ข้อมูล)
จบด้วย
ตั้งค่า objUpdate = ไม่มีเลย
-
ไฟล์คลาส:
รหัสโปรแกรม
-
######################################################################## ## ##################################
Rem ## คำสั่งคลาสอัปเกรดออนไลน์
คลาส Cls_oUpdate
######################################################################## ## ##############
Rem ## คำอธิบาย: ASP คลาสอัปเกรดออนไลน์
Rem ## เวอร์ชัน: 1.0.0
เรม ## ผู้เขียน: เซียวหยูเหริน
เรม ## MSN: xiaoyuehen(at)msn.com
Rem ## กรุณาแทนที่ (at) ด้วย @
Rem ## ลิขสิทธิ์: เนื่องจากมีการแชร์จึงไม่มีลิขสิทธิ์ แต่จะต้องจำกัดอยู่เพียงการเผยแพร่ทางออนไลน์และไม่สามารถใช้ในสื่อแบบดั้งเดิมได้!
Rem ## หากคุณสามารถรักษาคำแนะนำเหล่านี้ได้ ฉันจะขอบคุณมากยิ่งขึ้น!
Rem ## หากคุณมีการเพิ่มประสิทธิภาพโค้ดที่ดีขึ้นและการปรับปรุงที่เกี่ยวข้อง โปรดอย่าลืมบอกฉัน ขอบคุณมาก!
######################################################################## ## ##############
LocalVersion สาธารณะ, LastVersion, ประเภทไฟล์
UrlVersion สาธารณะ, UrlUpdate, UpdateLocalPath, ข้อมูล
ประวัติ URL สาธารณะ
sstrVersionList ส่วนตัว, sarrVersionList, sintLocalVersion, sstrLocalVersion
sstrLogContent ส่วนตัว, sstrHistoryContent, sstrUrlUpdate, sstrUrlLocal
######################################################################## ## ##############
Class_Initialize ส่วนตัว ()
Rem ## URL ที่สมบูรณ์ของข้อมูลเวอร์ชัน เริ่มต้นด้วย http://
Rem ## ตัวอย่าง: http://localhost/software/Version.htm
UrlVersion = ""
Rem ## อัปเกรด URL เริ่มต้นด้วย http:// และลงท้ายด้วย /
Rem ## ตัวอย่าง: http://localhost/software/
URL อัปเดต = ""
Rem ## Local update directory เริ่มต้นด้วย / และลงท้ายด้วย / เริ่มต้นด้วย / ใช้สำหรับอัปเดตไซต์ปัจจุบัน
Rem ## โปรแกรมจะตรวจสอบว่ามีไดเร็กทอรีอยู่หรือไม่ หากไม่มี มันจะถูกสร้างขึ้นโดยอัตโนมัติ
UpdateLocalPath = "/"
Rem ## ไฟล์ประวัติซอฟต์แวร์ที่สร้างขึ้น
UrlHistory = "history.htm"
Rem ## ข้อความแจ้งล่าสุด
ข้อมูล = ""
Rem ## เวอร์ชั่นปัจจุบัน
เวอร์ชันท้องถิ่น = "1.0.0"
Rem ## เวอร์ชั่นล่าสุด
เวอร์ชันล่าสุด = "1.0.0"
Rem ## ชื่อส่วนต่อท้ายของไฟล์ข้อมูลแต่ละเวอร์ชัน
ประเภทไฟล์ = ".asp"
จบหมวดย่อย
######################################################################## ## ##############
######################################################################## ## ##############
Class_Terminate ส่วนตัวย่อย ()
จบหมวดย่อย
######################################################################## ## ##############
Rem ## ดำเนินการอัปเกรด
######################################################################## ## ##############
ฟังก์ชั่นสาธารณะ doUpdate()
doUpdate = เท็จ
UrlVersion = ตัดแต่ง (UrlVersion)
UrlUpdate = ตัดแต่ง (UrlUpdate)
Rem ## อัปเกรดการตรวจจับ URL
ถ้า (ซ้าย(UrlVersion, 7) <> "http://") หรือ (ซ้าย(UrlUpdate, 7) <> "http://") จากนั้น
ข้อมูล = "URL การตรวจหาเวอร์ชันว่างเปล่า URL อัปเกรดว่างเปล่าหรือมีรูปแบบไม่ถูกต้อง (#1)"
ฟังก์ชั่นออก
สิ้นสุดถ้า
ถ้าใช่(UrlUpdate, 1) <> "/" จากนั้น
sstrUrlUpdate = อัปเดต URL & "/"
อื่น
sstrUrlUpdate = UrlUpdate
สิ้นสุดถ้า
ถ้าใช่(UpdateLocalPath, 1) <> "/" จากนั้น
sstrUrlLocal = UpdateLocalPath & "/"
อื่น
sstrUrlLocal = UpdateLocalPath
สิ้นสุดถ้า
Rem ## ข้อมูลเวอร์ชันปัจจุบัน (หมายเลข)
sstrLocalVersion = LocalVersion
sintLocalVersion = แทนที่ (sstrLocalVersion, ".", "")
sintLocalVersion = toNum (sintLocalVersion, 0)
Rem ## Version Detection (เริ่มต้นข้อมูลเวอร์ชันและเปรียบเทียบ)
ถ้า IsLastVersion ให้ออกจากฟังก์ชัน
Rem ## เริ่มการอัพเกรด
doUpdate = ตอนนี้อัพเดต()
LastVersion = sstrLocalVersion
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
http://bizhi.downcodes.com/
Rem ## ตรวจสอบว่าเป็นเวอร์ชันล่าสุดหรือไม่
######################################################################## ## ##############
ฟังก์ชั่นส่วนตัว IsLastVersion()
Rem ## เริ่มต้นข้อมูลเวอร์ชัน (เริ่มต้นอาร์เรย์ sarrVersionList)
ถ้า iniVersionList แล้ว
Rem ## ถ้าสำเร็จเทียบเวอร์ชั่นครับ
ดิม ไอ
IsLastVersion = จริง
สำหรับ i = 0 ถึง UBound (sarrVersionList)
ถ้า sarrVersionList(i) > sintLocalVersion แล้ว
Rem ## หากมีเวอร์ชั่นล่าสุดให้ออกจากวงครับ
IsLastVersion = เท็จ
ข้อมูล = "เป็นเวอร์ชันล่าสุดแล้ว!"
ออกเพื่อ
สิ้นสุดถ้า
ต่อไป
อื่น
Rem ## มิฉะนั้นให้ส่งคืนข้อความแสดงข้อผิดพลาด
IsLastVersion = จริง
ข้อมูล = "เกิดข้อผิดพลาดในการรับข้อมูลเวอร์ชัน!(#2)"
สิ้นสุดถ้า
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
Rem ## ตรวจสอบว่าเป็นเวอร์ชันล่าสุดหรือไม่
######################################################################## ## ##############
ฟังก์ชั่นส่วนตัว iniVersionList()
iniVersionList = เท็จ
Dim strVersion
strVersion = getVersionList()
Rem ## หากค่าที่ส่งคืนว่างเปล่า การเริ่มต้นจะล้มเหลว
ถ้า strVersion = "" แล้ว
ข้อมูล = "ข้อผิดพลาด......"
ฟังก์ชั่นออก
สิ้นสุดถ้า
sstrVersionList = แทนที่ (strVersion, " ", "")
sarrVersionList = แยก (sstrVersionList, vbCrLf)
iniVersionList = จริง
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
Rem ## ตรวจสอบว่าเป็นเวอร์ชันล่าสุดหรือไม่
######################################################################## ## ##############
ฟังก์ชั่นส่วนตัว getVersionList()
getVersionList = GetContent(UrlVersion)
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
Rem ## เริ่มอัพเดตครับ
######################################################################## ## ##############
ฟังก์ชั่นส่วนตัว NowUpdate()
ดิม ไอ
สำหรับ i = UBound(sarrVersionList) ถึง 0 ขั้นตอน -1
โทร doUpdateVersion (sarrVersionList (i))
ต่อไป
ข้อมูล = "อัปเกรดเสร็จสมบูรณ์! <a href=""" & sstrUrlLocal & UrlHistory & """>ดู</a>"
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
http://qqface.downcodes.com/
Rem ## เนื้อหาเวอร์ชันอัปเดต
######################################################################## ## ##############
ฟังก์ชั่นส่วนตัว doUpdateVersion (strVer)
doUpdateVersion = เท็จ
ติ่มอินท์เวอร์ชั่น
intVer = toNum(แทนที่(strVer, ".", ""), 0)
Rem ## หากเวอร์ชันที่อัปเดตมีขนาดเล็กกว่าเวอร์ชันปัจจุบัน ให้ออกจากการอัปเดต
ถ้า intVer <= sintLocalVersion แล้ว
ฟังก์ชั่นออก
สิ้นสุดถ้า
Dim strFileListContent, arrFileList, strUrlUpdate
strUrlUpdate = sstrUrlUpdate & intVer & ประเภทไฟล์
strFileListContent = GetContent(strUrlUpdate)
ถ้า strFileListContent = "" แล้ว
ฟังก์ชั่นออก
สิ้นสุดถ้า
Rem ## อัพเดตหมายเลขเวอร์ชันปัจจุบัน
sintLocalVersion = intVer
sstrLocalVersion = strVer
ติ่มซำ arrTmp
Rem ## รับรายการไฟล์อัพเดต
arrFileList = แยก (strFileListContent, vbCrLf)
Rem ## อัพเดตบันทึก
sstrLogContent = ""
sstrLogContent = sstrLogContent & strVer & quot; & vbCrLf
Rem ## เริ่มอัพเดตครับ
สำหรับ i = 0 ถึง UBound (arrFileList)
Rem ## อัปเดตรูปแบบ: หมายเลขเวอร์ชัน/file.htm|ไฟล์ปลายทาง
arrTmp = แยก(arrFileList(i), "|")
sstrLogContent = sstrLogContent & vbTab & arrTmp(1)
โทร doUpdateFile (intVer & "/" & arrTmp (0), arrTmp (1))
ต่อไป
Rem ## เขียนลงไฟล์บันทึก
sstrLogContent = sstrLogContent & ตอนนี้() & vbCrLf
response.Write("<pre>" & sstrLogContent & "</pre>")
โทร sDoCreateFile (Server.MapPath (sstrUrlLocal & "Log" & intVer & ".htm"), _
"<pre>" & sstrLogContent & "</pre>")
โทร sDoAppendFile(Server.MapPath(sstrUrlLocal & UrlHistory), "<pre>" & _
strVer & "_______" & ตอนนี้() & "</pre>" & vbCrLf)
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
Rem ## อัพเดตไฟล์
######################################################################## ## ##############
ฟังก์ชั่นส่วนตัว doUpdateFile (strSourceFile, strTargetFile)
Dim strContent
strContent = GetContent (sstrUrlUpdate & strSourceFile)
Rem ## อัปเดตและเขียนลงในบันทึก
ถ้า sDoCreateFile(Server.MapPath(sstrUrlLocal & strTargetFile), strContent) จากนั้น
sstrLogContent = sstrLogContent & "ความสำเร็จ" & vbCrLf
อื่น
sstrLogContent = sstrLogContent & "ล้มเหลว" & vbCrLf
สิ้นสุดถ้า
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
Rem ## รับเนื้อหาจากระยะไกล
######################################################################## ## ##############
ฟังก์ชั่นส่วนตัว GetContent (strUrl)
รับเนื้อหา = ""
Dim oXhttp, strContent
ตั้งค่า oXhttp = Server.CreateObject("Microsoft.XMLHTTP")
'เมื่อเกิดข้อผิดพลาด ดำเนินการต่อต่อไป'
ด้วย oXhttp
. เปิด "GET", strUrl, False, "", ""
.ส่ง
ถ้า .readystate <> 4 จากนั้นออกจากฟังก์ชัน
strContent = .การตอบสนองร่างกาย
strContent = sBytesToBstr (strContent)
จบด้วย
ตั้งค่า oXhttp = ไม่มีเลย
ถ้า Err.Number <> 0 แล้ว
การตอบสนองเขียน(ข้อผิดพลาดคำอธิบาย)
ผิดพลาด.เคลียร์
ฟังก์ชั่นออก
สิ้นสุดถ้า
GetContent = strContent
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
######################################################################## ## ##############
Rem ## การเข้ารหัสการแปลงไบนารี่ => สตริง
ฟังก์ชั่นส่วนตัว sBytesToBstr(vIn)
dimobjStream
ตั้ง objStream = Server.CreateObject("adodb.stream")
objStream.Type = 1
objStream โหมด = 3
objStream.เปิด
objStream.เขียน vIn
objStream.ตำแหน่ง = 0
objStream.Type = 2
objStream.Charset = "GB2312"
sBytesToBstr = objStream.ReadText
objStream ปิด
ตั้งค่า objStream = ไม่มีเลย
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
######################################################################## ## ##############
Rem ## การเข้ารหัสการแปลงไบนารี่ => สตริง
ฟังก์ชั่นส่วนตัว sDoCreateFile (strFileName, ByRef strContent)
sDoCreateFile = เท็จ
Dim strPath
strPath = ซ้าย(strFileName, InstrRev(strFileName, "", -1, 1))
Rem ## ตรวจสอบความถูกต้องของเส้นทางและชื่อไฟล์
ถ้าไม่ใช่(CreateDir(strPath)) ให้ออกจากฟังก์ชัน
'ถ้าไม่ใช่ (CheckFileName(strFileName)) ให้ออกจากฟังก์ชัน
'response.Write (strFileName)
Const ForReading = 1, ForWriting = 2, ForAppending = 8
สลัว fso, f
ตั้งค่า fso = CreateObject("Scripting.FileSystemObject")
ตั้งค่า f = fso.OpenTextFile (strFileName, ForWriting, True)
ฉ. เขียน strContent
ฉ.ปิด
ตั้งค่า fso = ไม่มีเลย
กำหนดให้ f = ไม่มีเลย
sDoCreateFile = จริง
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
######################################################################## ## ##############
Rem ## การเข้ารหัสการแปลงไบนารี่ => สตริง
ฟังก์ชั่นส่วนตัว sDoAppendFile (strFileName, ByRef strContent)
sDoAppendFile = เท็จ
Dim strPath
strPath = ซ้าย(strFileName, InstrRev(strFileName, "", -1, 1))
Rem ## ตรวจสอบความถูกต้องของเส้นทางและชื่อไฟล์
ถ้าไม่ใช่(CreateDir(strPath)) ให้ออกจากฟังก์ชัน
'ถ้าไม่ใช่ (CheckFileName(strFileName)) ให้ออกจากฟังก์ชัน
'response.Write (strFileName)
Const ForReading = 1, ForWriting = 2, ForAppending = 8
สลัว fso, f
ตั้งค่า fso = CreateObject("Scripting.FileSystemObject")
ตั้งค่า f = fso.OpenTextFile(strFileName, ForAppending, True)
ฉ. เขียน strContent
ฉ.ปิด
ตั้งค่า fso = ไม่มีเลย
กำหนดให้ f = ไม่มีเลย
sDoAppendFile = จริง
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
Rem ## โปรแกรมสำหรับสร้างไดเร็กทอรี หากมีไดเร็กทอรีหลายระดับ ให้สร้างทีละระดับ
######################################################################## ## ##############
ฟังก์ชั่นส่วนตัว CreateDir (ByVal strLocalPath)
หรี่ฉัน, strPath, objFolder, tmpPath, tmptPath
หรี่ arrPathList, intLevel
'เมื่อเกิดข้อผิดพลาด ดำเนินการต่อต่อไป'
strPath = แทนที่(strLocalPath, "", "/")
ตั้งค่า objFolder = server.CreateObject("Scripting.FileSystemObject")
arrPathList = แยก(strPath, "/")
intLevel = UBound(arrPathList)
สำหรับฉัน = 0 ถึง intLevel
ถ้าฉัน = 0 แล้ว
tmptPath = arrPathList(0) & "/"
อื่น
tmptPath = tmptPath & arrPathList(I) & "/"
สิ้นสุดถ้า
tmpPath = ซ้าย (tmptPath, Len (tmptPath) - 1)
หากไม่ใช่ objFolder.FolderExists(tmpPath) จากนั้น objFolder.CreateFolder tmpPath
ต่อไป
ตั้ง objFolder = ไม่มีเลย
ถ้า Err.Number <> 0 แล้ว
CreateDir = เท็จ
ผิดพลาด.เคลียร์
อื่น
CreateDir = จริง
สิ้นสุดถ้า
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
Rem ## การแปลงจำนวนเต็มยาว
######################################################################## ## ##############
ฟังก์ชั่นส่วนตัว toNum (s, ค่าเริ่มต้น)
ถ้า IsNumeric(s) และ s <> "" แล้ว
toNum = CLng
อื่น
toNum = ค่าเริ่มต้น
สิ้นสุดถ้า
สิ้นสุดฟังก์ชัน
######################################################################## ## ##############
จบคลาส
######################################################################## ## ##################################
-