程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> asp.net創建文件夾的IO類的問題

asp.net創建文件夾的IO類的問題

編輯:關於ASP.NET

C#中.net中得IO類雖然功能很強大,但是正是因為功能強大,所以在很多虛擬服務商的服務器上並不實用 。因為IO.Directory和IO.DirectoryInfo在應用文件夾操作中,會遍歷網站所在的硬盤的磁盤跟目錄,一般虛擬服務商並不會給這個磁盤的Network service用戶開啟讀取權限,所以在操作文件夾的時候,使用IO下的這兩個類會出現如下錯誤

未找到路徑“E:\”的一部分。

說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。

異常詳細信息: System.IO.DirectoryNotFoundException: 未找到路徑“E:\”的一部分。

源錯誤:

執行當前 Web 請求期間生成了未處理的異常。可以使用下面的異常堆棧跟蹤信息確定有關異常原因和發生位置的信息。

堆棧跟蹤:

[DirectoryNotFoundException: 未找到路徑“E:\”的一部分。] 

System.IO.__Error.WinIOError(Int32 errorCode, String str) +287 

System.IO.Directory.InternalCreateDirectory(String fullPath, String path) +489 

System.IO.Directory.CreateDirectory(String path) +195

-----------------------

版本信息: Microsoft .NET Framework 版本:1.1.4322.2300; ASP.NET 版本:1.1.4322.2300

其中未找到路徑E:/,E盤就是服務器上磁盤路徑,可能會因為服務器的不同而不同。面對這個問題,服務商又不肯給你多開權限的情況下,應該怎麼解決呢?

呵呵,可能是因為我基礎比較差,於是上網尋求解答,但是苦苦找不到答案。偶然的一次,發現asp可以應用fso創建文件夾。於是想到用asp.net調用window中得fso組件。呵呵,居然成功了,特寫這篇文章給那些苦於此問題不得解決的朋友和兄弟。

項目->引用 浏覽 COM組件 Microsoft Scripting Runtime

Scripting.FileSystemObject fso=new Scripting.FileSystemObjectClass();

fso.CreateFolder(Path)

就可以了,不過此種解決方法的前提是虛擬服務商開啟了FSO

至於IO操作文件夾得兩個類為什麼會遍歷磁盤根目錄還在研究中,不過問題終於解決了,希望了解此的人能給大家一個答案。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved