|
ASP에서 Base64 암호화를 하기 위해 일반 ASP로 개발시 즐겨쓰는 대표적인 라이브러리인 Base64.dll에 관련된 노하우 입니다. 해결하고 나서 저만 이런 문제점에 부딫이는 게 아닐꺼다 라는 생각이 들어 올려봅니다.. ^^; 아~ 물론 저는 ASP.NET, ASP 둘 다 병행하는 개발자 입니다.
그럼 본론으로..
Base64.dll 라이브러리 파일은 이미 regsvr32 툴을 이용하여 등록을 마친 상태이고 <% Dim objCrypt strTest = "This is the Test code" %>
이렇게 코딩을 하였을때 간혹..
------- ------- ------- ------- ------- ------- ------- ------- ------- ------- Microsoft VBScript 런타임 오류 error '800a000d' 형식이 일치하지 않습니다.: 'Encode' /WebLinkage/include/inc_dbserver.asp, line 11 ------- ------- ------- ------- ------- ------- ------- ------- ------- -------
위와 같은 오류를 만날 수 있습니다.
이럴때는..
문제가 생긴 메쏘드 지정 라인인 "strEnc = objCrypt.Encode(strTest)" 코딩 라인에서 Encode 메쏘드에 인자값인 strTest 를 스트링 변환 함수인 CStr()함수로 한번 감싸주시면 됩니다. 그러므로 수정된 코드는..
"strEnc = objCrypt.Encode(CStr(strTest))" 해주시면 되겠습니다..
극히 간단하게 해결된 것이지만 의문점을 많이 자아내는 오류인 것 같습니다.. 보니까 TypeName 함수로 strTest 변수를 찍어봐도 String 형식이라고 나오는데 왜 굳이 String 형으로 한번 변환해줘야지 들어가는 것일까요..(아직 밝혀내지는못했습니다ㅜㅠ) 아~ 참고로 저 Encode 메쏘드의 인자값과 리턴형식 모두 String입니다.. 전혀 문제 될 것이 없는 상태인데 말이지요.. |
|