Microsoft MVP성태의 닷넷 이야기
XMLHTTP 에서 반환받은 non-XML 데이터를 보여주는 모듈 [링크 복사], [링크+제목 복사],
조회: 9171
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

뉴스그룹에 올라온 소스입니다.
VB 스크립트로 작성한 Binary -> ASCII 디코딩 소스인데, XMLHTTP 의 반환값을 해석하는 데에 유용하게 쓸 수 있습니다.

보통 XMLHTTP 가 XML 문서가 아닌 반환값에 대해서는 Binary 데이터만을 보여주어서 한글이 깨져 보이게 됩니다. 즉, 한글이 포함된 HTML 문서의 경우에는 아래에서 보여주는 BinDecode VB 함수를 사용하시면 됩니다.

한가지 주의하실 것은, 아무래도 Script 함수이다 보니 조금 긴 HTML 텍스트의 경우에는 과도한 루프와 문자열 연산때문에 CPU 부하가 너무 걸린다는 것이죠. 스크립트로는 극복할 수 없고, 만약 ActiveX 를 배포할 수 있는 상황이라면 VC++ COM 개체로 구현하시는 것도 좋은 방법일 수 있습니다.


<script language="javascript">

function ViewHtmlPage()
{
    var x = new ActiveXObject("Microsoft.XMLHTTP")
    x.open("get","test.asp",false);
    x.send();
    var strv = x.responseBody;
    document.body.innerHTML = BinDecode(strv);
}
</script>

<script language="vbscript">
'-----------------------------------------
' BinDecode (바이너리 -> 아스키 변환)
' mongmong - 2003. 2
'-----------------------------------------
    Public Function BinDecode(byVal binData)
        Dim i, byteChr, strV
        For i = 1 to LenB(binData)
            byteChr = AscB(MidB(binData,i,2))
            If byteChr > 127 Then
                i = i + 1
                strV = strV & Chr("&H" & Hex(byteChr) & Hex(AscB(MidB(binData,i,2))))
            Else
                strV = strV & Chr(byteChr)
            End if
        Next
        BinDecode = strV
    End Function
</script>









[최초 등록일: ]
[최종 수정일: 2/15/2004]


비밀번호

댓글 작성자
 




... 16  17  18  19  20  21  22  23  24  25  26  27  28  [29]  30  ...
NoWriterDateCnt.TitleFile(s)
475정성태11/8/200610035개발 환경 구성: 42. VHD 파일을 가상 하드 디스크로 설정하는 방법파일 다운로드1
474정성태10/17/20069841개발 환경 구성: 41. Getting Linq to work outside of a Linq project template
473정성태10/16/20069289개발 환경 구성: 40. Source/Documentation for Simple ASP.NET 2.0 SQL Providers Published
472정성태10/12/200610118개발환경 구성 : 39. Microsoft .NET Framework 버전 3.0 배포
471정성태10/12/20069736개발환경 구성 : 38. 서명되지 않은 어셈블리를 서명.
470정성태10/11/20069375.NET : 23. FxCop: SuppressMessage 특성에 Expiry 값 설정
469정성태10/29/200610116개발환경 구성 : 37. XSDClassgen = XSDObjectGen + .net framework 2.0
468정성태10/10/20069874.NET : 22. 잘 정리된 .NET Tips
467정성태10/10/200610246개발환경 구성 : 36. The Differences Between Rijndael and AES
466정성태10/9/20069691TFS : 42. TFS 도움말 업데이트 - 버전 61004
465정성태10/29/20069495Visual C++ : 3. COM 심층 분석(한기용님)파일 다운로드1
464정성태10/7/200610549개발환경 구성 : 35. Ngen 을 적용한 응용 프로그램을 디버깅하는 방법
463정성태10/7/200610260.NET : 21. C# - lock keyword == Monitor 사용
462정성태10/6/20069940.NET : 20. 명시적으로 Dispose 를 호출하도록 유도.
461정성태10/5/20069425TFS : 41. Configuring SSL and the ISAPI filter in TFS SP1 Beta
460정성태10/5/200610499TFS : 40. Team Build 에서 특정 폴더 제외하는 방법
459정성태10/5/200610072.NET : 19. LINQ 관련 링크 목록
458정성태10/1/200610944TFS : 39. Team System Source Code: Unlocking Checed Out Files
457정성태9/30/20069843개발환경 구성 : 34. Visual Studio 2005 Team Edition for (unmanaged) C++ Developers
456정성태9/30/200610403TFS : 38. Draft Documentation for Visual Studio 2005 Service Pack 1 Beta
455정성태9/30/200610509.NET : 18. Orcas CTP now includes STL/CLR
454정성태9/28/200610549개발환경 구성 : 33. Managed Lex and Yacc
453정성태10/20/200610241Vista : 11. A Vista update: integration between System.Transactions and the transacted file system and registry
452정성태9/28/20069776개발환경 구성 : 32. Simple Sharing Extensions for RSS and OPML
451정성태9/28/20069910.NET : 17. Enterprise Library v3: The Plan
450정성태9/28/20069622.NET : 16. ADO.NET vNext Entity Data Model Designer Prototype, CTP
... 16  17  18  19  20  21  22  23  24  25  26  27  28  [29]  30  ...