봄이 왔어여 봄이 ~ 꽃놀이 가... ㄹ 사람이 없다 ㅠ.ㅠ


웹 서버를 Windows 2000 Server 환경에서 윈도우 2003 서버로 옮겨 타는 경우에 발생하는 문제이다.

#케이군의 잡담<펼치기>



■ 문제의 원인

윈도우 2000에서 윈도우 2003 서버로 갈아 타고 소스 카피 다 하고 APP설치 다 해주고 설정도 살짝 바꿔주고
SMTP 메일서버를 설치한 후에 메일 발송 테스트를 했는데 메일이 안 날아 갈 수가 있다.
웹 소스는 2000 서버에 적용했던 걸 그대로 썼기 때문에 발생 할 수 있는 문제다.

소스 코드를 찬찬히 들여다 보면 CDONTS 객체를 사용한 걸 발견 할 수도 있다.
CDONTS 는 Windows 2000 서버 까지만 지원해 주었던 거다.
Windows 2003 서버로 넘어 오면서 CDONTS 대신에 CDO 객체를 사용하게 됐다.

CDONTS를 사용한 소스에서는 아래와 같이 선언하는 부분이 있을 것이다.

Set ObjCDO = Server.CreateObjects("CDONTS.NewMail")

그러나 CDO를 사용하면 이렇게 살짝 바뀌게 된다.

Set ObjCDO = Server.CreateObjects("CDO.Message")

근데 사실 해 보지는 않았다..... 알잖아.. 케이군은 게으르다 =ㅠ=;;;;


■ 해결 방법

소스 코드를 고쳐야 되는데.. 사실상 그게 꽤나 귀찮고 짜증나는 문제이다
고로.. 소스를 그대로 가면서 CDONTS 를 사용하는 방법을 알아 보자.
뭘 별거는 아니다. 파일 하나 복사해서 붙여넣는거 뿐이다.


1. 메일이 잘 날라가던 Windows 2000 서버의 winnt/system32/cdonts.dll 파일을 복사한다.

2. 복사한 파일을 Windows 2003 서버의 windows/system32 폴더에 붙여 넣는다.

3. 시작 > 실행 에서 DLL을 등록 시킨다.
    regsvr32 cdonts.dll
    "cdonts.dll 의 DLLRegisterServer 성공" 이라는 메시지창이 뜨면 성공이다.


이제 메일이 잘 날라가나 테스트를 해 보자.
그래도 안 되면? ... 나도 몰라 -_- 쓰지마!!!
이올린에 북마크하기(0) 이올린에 추천하기(0)
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Keiz

트랙백 보낼 주소 :: http://keizwer.tistory.com/trackback/71 관련글 쓰기

댓글을 달아주세요:: 네티켓은 기본, 스팸은 사절


BLOG main image
변화를 시도한다. by Keiz

카테고리

:: Keiz Story :: (268)
TechNical Tips (144)
Another (117)
ENG, JPN Lang. (7)

Statistics Graph
Total : 136,096
Today : 4 Yesterday : 80

달력

«   2009/07   »
      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  

Google

글 보관함

0
hit counter
믹시