asp โฟลเดอร์พิเศษบางรายการไม่สามารถแสดงได้อย่างสมบูรณ์ แต่สามารถลบได้ผ่านเส้นทาง unc แต่หลักฐานก็คือต้องทราบเส้นทางที่แน่นอน ขณะนี้ยังมีบางกรณีที่ไม่สามารถแสดงได้ ดูเหมือนจะไม่เห็นวิธีแก้ปัญหาที่ดีกว่านี้ โปรดละทิ้งการวิจัยในขณะนี้ และเพื่อนๆ ที่ทราบวิธีแก้ปัญหาที่สมบูรณ์อาจต้องการตอบกลับ
ขั้นแรก ให้แนบ bat เพื่อสร้างไดเร็กทอรีที่มีรูปแบบไม่ถูกต้อง คัดลอกและบันทึกโค้ดต่อไปนี้เป็น a.bat:
คัดลอกรหัสรหัสดังต่อไปนี้:
เอ็มดี aux//
เอ็มดีคอม1//
เอ็มดี com2//
เอ็มดีพรน//
เอ็มดีคอน//
MD ไม่มีค่า//
md จุด...//
md onedot..//
รหัสโปรแกรม
คัดลอกรหัสรหัสดังต่อไปนี้:
<%@LANGUAGE=รหัส VBSCRIPT=65001%>
-
ตัวเลือกที่ชัดเจน
response.charset = UTF-8
session.codepage = 65001
เซสชั่น.หมดเวลา = 1440
เซิร์ฟเวอร์สคริปต์หมดเวลา = 9999
-
'ชื่อ: คลาสรายการไดเรกทอรี
'ผู้เขียน: อี้ปิน
วันที่: 28-4-2553
'เว็บไซต์: www.vevb.com
'คำอธิบาย: คลาสรายการไดเร็กทอรี รองรับชื่อไดเร็กทอรีที่มีรูปแบบไม่ถูกต้อง
-
คลาส FsoCls
เอกชน
สาธารณะ FsoObj
คลาสย่อยส่วนตัว_เริ่มต้น
ตั้งค่า Fso=CreateObject(Scripting.FileSystemObject)
ตั้งค่า FsoObj=Fso
จบหมวดย่อย
Class_Terminate ย่อยส่วนตัว
ตั้งค่า Fso=ไม่มีอะไร
ตั้งค่า FsoObj=ไม่มีอะไร
จบหมวดย่อย
ฟังก์ชั่น IsFolderExists (FolderPath)
ถ้า fso.FolderExists(FolderPath) แล้ว
IsFolderExists = จริง
อื่น
IsFolderExists = เท็จ
สิ้นสุดถ้า
ฟังก์ชันสิ้นสุด
ฟังก์ชั่น FolderItem (ByVal FolderDir)
ถ้า Instr(FolderDir,:/)>0 แล้ว
FolderDir=//?/&FolderDir&/
อื่น
FolderDir=//?/&Server.MapPath(FolderDir)&/
สิ้นสุดถ้า
ถ้า IsFolderExists(FolderDir) = False แล้ว
FolderItem=เท็จ
ออกจากฟังก์ชัน
จบถ้า
Dim FolderObj, รายการโฟลเดอร์, F, i
ผม=1
ตั้งค่า FolderObj=Fso.GetFolder(FolderDir)
ตั้งค่า FolderList=FolderObj.SubFolders
FolderItem=จำนวนไดเรกทอรีทั้งหมด: &FolderObj.SubFolders.Count&<hr> & vbcrlf
FolderItem=FolderItem&จำนวนไฟล์ทั้งหมด: &FolderObj.Files.count&<hr> & vbcrlf
สำหรับแต่ละ F ใน FolderList
'การตอบสนองเขียน F.ShortName
'Response.Write (instr(1,F.ShortName,~,1))
ถ้า IsFolderExists(FolderDir&F.Name) = True จากนั้น Response.Write (T<br> & vbcrlf)
If(instr(1,F.Name,.,0)>0) จากนั้น
การตอบสนองเขียน(T)
F.Name=แทนที่(F.Name,.,-)
จบถ้า
FolderItem=FolderItem&i&├─โฟลเดอร์→&F.Name&<br> & vbcrlf
ฉัน=ฉัน+1
ต่อไป
ตั้งค่า FolderList=ไม่มีอะไร
ตั้งค่า FolderObj=ไม่มีอะไร
ฟังก์ชันสิ้นสุด
จบคลาส
-
<!DOCTYPE html สาธารณะ -//W3C//DTD XHTML 1.0 การเปลี่ยนผ่าน//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
<html xmlns=http://www.w3.org/1999/xhtml xml:lang=zh-cn>
<หัว>
<meta http-equiv=เนื้อหาประเภทเนื้อหา=ข้อความ/html; charset=utf-8 />
<title>คลาสรายการไดเร็กทอรีรองรับชื่อไดเร็กทอรีที่มีรูปแบบไม่ถูกต้อง</title>
</หัว>
<ร่างกาย>
-
Dim F: ตั้งค่า F = FsoCls ใหม่
Response.write F.FolderItem(/)
-
</ร่างกาย>
</html>