본문 바로가기
프로그래밍/ASP

[본문스크랩] 속성..[ ATL ]Asp Component 만들기

by 백룡화검 2010. 4. 23.

Active Server Componet 윈도우 팁

1 . Asp필수 사용 문법

             Ex] asp component load

           dim mathod1

             set myevent = Server.CreateObject("imagemagic.resize")

             myevent.defaultSize "460","450","95"

             fileName = replace(upfile, ".jpg", "R.jpg")

             OrifileName = "e:\\\"&userId&"\\" & upfile

             RefileName = "e:\ & fileName

             mathod1 = myevent.runResize (OrifileName , RefileName)

             Height = myevent.getHeight()

             Width = myevent.getWidth()

             set myevent = nothing

             Ex] print

             response.write ("로그인 처리가 정상적으로 이루어지지 않았습니다 주십시오.")

2. DLL 등록 / 삭제

[등록]

regsvr32 /C D:\Project\ATL\AniGifMaker\Release\AniGifMaker.dll

[삭제]

regsvr32 /u D:\Project\ATL\JasterWapUtil\Release\JasterWapUtil.dll

3. Debug

regsvr32 를 실행하게 되면 자동으로 그때 그때 dll 파일을 com 에 등록 시켜 준다. 하지만 문제는 컴파일시 dll 이 삭제되지 않는데 있다.

한가지 팁은 iis rebooting 하는것이다.

초기 regsvr32를 했다면 더 이상 이부분은 실행 안해도 된다.

(물론 다른 디버그 방법이 있다 하지만 시간도 없고 그렇게 효율적이라 생각 되지 않는다.)

Active Server component 구현

1.       Page_level event method
WebServer(IIS)
component 를 확인하였을 때 다음과 같은 일을 시행한다.
- Component
IDispatch interface OnStartPage OnEndPage method 를 지원하는 지 여부를 확인한다
.
- OnStartPage()
호출 -> asp(active Server Page) 실행 -> OnEndPage() 호출


2.       Atl 프로젝트 -> 클래스생성(Active Server Page) 생성 한다.

3.       Class View 를 선택 방금 생성한 인터페이스가 생성 됐다.

4.       클래스에 메소드를 삽입한다.

5.       코딩을 시작한다. 개인적으로 정적 라이브러리를 개발 한다음 ATL 프로젝트에 Include 시키는 방법을 추천 한다.

간단하게 설명했지만 Asp Component 를 생성하는데는 많은 신경을 안써도 된다. 이는 .net에서 많은 부분을 스스로 코딩하기 때문이다.  하지만 전반적인 COM 에 이해가 있어야만 유지 보수나 퍼포먼스 개선이 가능 할것이다. 병선씨 책 한번 읽기를 권한다.