一部の特殊フォルダー ASP は完全には表示できませんが、unc パスを使用して削除できます。ただし、正確なパスがわかっていることが前提となります。
この問題が表示されない場合がまだいくつかあります。msdn を調べてみましたが、これ以上の解決策は見つからなかったので、完全な解決策を知っている方は回答していただければ幸いです。 。
まず、bat をアタッチして不正な形式のディレクトリを作成し、次のコードをコピーして .bat として保存します。
次のようにコードをコピーします。
md aux//
md com1//
mdcom2//
md prn//
MDコン//
md null//
md ドット...//
md onedot..//
プログラムコード
次のようにコードをコピーします。
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
明示的なオプション
応答.charset = "UTF-8"
セッション.コードページ = 65001
セッション.タイムアウト = 1440
サーバー.スクリプトタイムアウト = 9999
「****************************」
'名前: ディレクトリ リスト クラス
作者:イーピン
'日付: 2010-4-28
'URL:
'説明: ディレクトリ リスト クラス、不正な形式のディレクトリ名をサポートします
「****************************」
クラスFsoCls
プライベート FSO
パブリック FsoObj
プライベートサブクラス_初期化
Set Fso=CreateObject("Scripting.FileSystemObject")
FsoObj=Fso を設定します
エンドサブ
プライベートサブクラス_Terminate
Fso=何も設定しない
FsoObj=何も設定しない
エンドサブ
関数 IsFolderExists(FolderPath)
fso.FolderExists(FolderPath) の場合
IsFolderExists = true
それ以外
IsFolderExists = false
終了の場合
終了機能
関数 FolderItem(ByVal FolderDir)
Instr(FolderDir,":/")>0 の場合
FolderDir="//?/"&FolderDir&"/"
それ以外
FolderDir="//?/"&Server.MapPath(FolderDir)&"/"
終了の場合
IsFolderExists(FolderDir) = False の場合
FolderItem=False
終了関数
次の場合に終了
Dim FolderObj,FolderList,F,i
i=1
FolderObj=Fso.GetFolder(FolderDir) を設定します。
FolderList=FolderObj.SubFolders を設定します。
FolderItem="ディレクトリの総数:"&FolderObj.SubFolders.Count&"<hr>" & vbcrlf
FolderItem=FolderItem&"ファイルの総数:"&FolderObj.Files.count&"<hr>" & vbcrlf
FolderList の各 F について
'Response.Write 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) then
Response.Write("T")
F.Name=Replace(F.Name,".","-")
次の場合に終了
FolderItem=FolderItem&i&"§─フォルダ→"&F.名前&"<br>" & vbcrlf
i=i+1
次
FolderList=Nothing を設定します
FolderObj=Nothing を設定します
終了機能
終了クラス
%>
<!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">
<頭>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ディレクトリ リスト クラスは不正な形式のディレクトリ名をサポートします</title>
</head>
<本文>
<%
Dim F: F = 新しい FsoCls を設定します。
Response.write F.FolderItem("/")
%>
</body>
</html>