일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 자바기초
- wap
- sql랭킹
- WML
- JavaScript
- VarType
- ERD
- join
- XML
- sql순위
- VARIABLE
- instr
- array
- injection
- 인젝션
- sql업데이트
- 한글입력체크
- inner join
- jdbc driver
- xmldom
- update
- FileSystemObject
- 이미지가로길이
- SPLIT
- MSSQL보안
- tempDB
- javascript 한글입력체크
- 정규식
- 이미지세로길이
- asp함수
- Today
- Total
3초기억력
ASP - ASP에서 바이너리 데이터를 읽고 표시하려면? 본문
대부분의 ASP 개발자들은 FSO(File System Object)를 이용하여 파일 시스템 핸들링 하는 방법에 대해 어느 정도 알고 있다. 하지만 FSO를 이용하여서는 바이너리 데이터가 들어 있는 파일을 읽고 표시하기는 어렵다. ASP는 매크로가 들어 있는 엑셀 파일이나, PDF 파일, 이미지 파일 등 바이너리 데이터가 들어 있는 파일을 다루기 위한 방법을 지원하지 않고 있다. 하지만 비주얼 베이직을 이용하여 이 부분을 보완할 만한 컴포넌트를 직접 작성할 수 가 있다.
여기서 다룰 내용을 직접 해보고자 한다면 비주얼 베이직 5.0 이상이 필요하다.
이제부터 바이너리 데이터가 들어 있는 파일을 읽어들이는 MyObject라는 ActiveX DLL을 비주얼 베이직을 통해 직접 만들어 보도록 하자.
우선 비주얼 베이직 5.0 이상에서 ActiveX DLL 프로젝트를 하나 생성한다.
그 프로젝트의 이름을 MyObject라고 변경한다.
그 클래스 모듈의 이름을 BinRead로 변경한다.
클래스 모듈의 General Declarations 부분에 다음과 같은 코드를 삽입한다:
Function readBinFile(ByVal bfilename As String) As Variant
Dim fl As Long
Dim FileNum As Long
Dim binbyte() As Byte
Dim binfilestr As String
On Error GoTo errHandler
FileNum = FreeFile
Open bfilename For Binary Access Read As #FileNum
fl = FileLen(bfilename)
ReDim binbyte(fl)
Get #FileNum, , binbyte
Close #FileNum
readBinFile = binbyte
Exit Function
errHandler:
Exit Function
End Function
이 프로젝트를 저장한다.
비주얼 베이직의 파일 메뉴에서 Make MyObject.dll을 선택하여 DLL 파일을 만든다.
만일 지금 만든 DLL의 파일 위치와 웹서버의 위치가 서로 틀리다면 이 DLL 파일을 웹서버로 옮긴 후 Regsvr32를 이용하여 이 DLL 파일을 웹서버 시스템에 등록시킨다.
(예: regsvr32 c: empmyobject.dll)
위와 같은 방법으로 바이너리 데이터가 들어 있는 파일을 읽어 들이는 ActiveX DLL 파일을 만들고 시스템에 정상적으로 등록시켰다면 다음과 같이 ASP 코드에서 원하는 바이너리 파일을 읽어들일 수 있다. 아래 예는 매크로가 들어 있는 엑셀 파일을 읽어 들이는 예이다:
<%
Response.buffer = TRUE
Response.ContentType = "application/x-msexcel"
Dim vntStream
Set oMyObject = Server.CreateObject("MyObject.BinRead")
vntStream = oMyObject.readBinFile("c: emp emp.xls")
Response.BinaryWrite(vntStream)
Set oMyObject = Nothing
Response.End
%>
출처 : http://dojeun.egloos.com/318101
'플밍_ASP' 카테고리의 다른 글
ASP - 외부 URL 이미지 가져오기 (0) | 2011.03.25 |
---|---|
ASP - binary 이미지 등 읽기 function (0) | 2011.03.25 |
ASP - 저장된 이미지를 바이너리로 변환하여 보여주는 소스 (0) | 2011.03.25 |
asp - 문자열 instr, mid 사용하여, 어디에서 어디까지 사이의 것들 뽑아내기 (0) | 2010.04.15 |
ASP TimeOut Error(408 Error) (0) | 2010.04.01 |