2007~2011/Windows Platform2008. 11. 25. 13:00

IIS 6 서버에서 FSO를 이용한 파일 쓰기 실패 스크립트 오류가 발생하였습니다. FileSystemObject 사용을 위한 라이브러리 모듈 점검과 관련하여 아래와 같이 정리하였습니다. 
 

[환경]

IIS 6


[현상]
FileSystemObject (scrrun.dll) 를 사용하여 파일 생성에 실패하였습니다.ASP 파일을 실행하였을 때 아래와 같은 오류가 발생하였습니다.

"E:IISDATA\DATA.TXT
WriteFileData:개체가 필요합니다."


현재의 시스템 환경에서 FileSystemObject(scrrun.dll) 사용이 가능한가?


[원인]
FileSystemObject는 Scrrun.dll 에서 찾을 수 있으며 Scrrun.dll 파일이 시스템에 정상적으로 로드되어 있습니다. 또한 FSO를 사용하여 Text 파일을 생성하는 스크립트를 실행하였을 때 정상적으로 수행되었습니다.


[해결방법]
오류가 발생한 개체의 소스 코드 분석을 통해 오류를 확인해야 합니다.


[분석결과]
1. FSO Library 확인 - 정상적으로 모듈이 로드되어 있습니다.

C:\> TASKLIST /m scrrun.dll


이미지 이름    PID     모듈
===============================
w3wp.exe      1234    scrrun.dll
w3wp.exe      4556    scrrun.dll
w3wp.exe      7890    scrrun.dll


2. FSO를 이용하여 파일을 생성하는 아래의 스크립트를 실행하였을 때, 정상적으로 수행됩니다.

<%
Dim objFSO, objCreatedFile, objOpenedFile
Const ForReading = 1, ForWriting = 2, ForAppending = 8
 
'Create the FSO.
Set objFSO = CreateObject("Scripting.FileSystemObject")
 
Set objCreatedFile = objFSO.CreateTextFile("E:\IISDATA\HowToDemoFile.txt", True)
 
'Use objCreatedFile and objOpenedFile to manipulate the corresponding files.
objCreatedFile.Close
 
%>



[참고자료]
FileSystemObject를 사용한 파일 액세스
http://msdn.microsoft.com/ko-kr/library/aa711216(VS.71).aspx

Reading and Writing Text Files
http://www.microsoft.com/technet/scriptcenter/guide/sas_scr_iikh.mspx?mfr=true

ASP 페이지에서 텍스트 파일을 조작하는 방법
http://support.microsoft.com/kb/300982/ko


작성자 : Lai Go / 작성일자 : 2008.11.25

Posted by Lai Go