錯誤信息:
技術信息(用於支持人員)
- 錯誤類型:
ADODB.Stream (0x800A0BBC)
寫入文件失敗。
/myProject1/fileMng/upload.asp, 第 203 行 - 瀏覽器類型:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; CIBA) - 網頁:
POST 53903 ??? /myProject1/fileMng/upload.asp - POST Data:
錯誤 '80020009'
發生意外。
/iisHelp/common/500-100.asp,行 219
打印出文件的路徑如下:
經過各種測試,發現只要文件在c:/inetpub/wwwroot/……中,即在服務器端的目錄中,就會發生寫入文件錯誤。
如果認爲在寫入文件前把文件路徑改爲比如:c:/test/pics/20110415.jpg,就不會發生錯誤。分析原因,可能有二:
1、 沒有寫入權限。
但是【右擊文件夾】-》【屬性】-》【Web共享】,改爲共享後任然不行。網上有如下說法:
幫你查了下錯誤。大多是系統的分區格式爲ntfs,造成的寫權限沒有打開。 |
但是,我在文件夾的屬性裏面(我是XP系統),沒有發現安全標籤。
我想有肯能是IIS服務器爲了保證系統的安全性,不讓客戶端的用戶向c:/inetpub/wwwroot/目錄中上傳文件。
2、由於我在IIS的myProject1目錄(工程目錄)是虛擬目錄,而可能系統不讓:往虛擬目錄中寫入文件卻不往實際目錄中寫入文件。
基於這一推測,我將文件路徑改爲:
FullPath="F:/Project/ASP/chapter8/myProject1/myProject1_Local/fileMng/pics/20110415.jpg"
也就是往我的工程的實際目錄中寫入圖片,結果能夠寫入成功:
但是,這時候我通過Visual InterDev 6.0打開的工程中的pics文件夾中並沒有更新20110415.jpg文件,必須手動添加。
綜上所述,我覺得1、2兩種情況都是有可能的。