• 카테고리
    • 전체 글

    • 카테고리1
    • 카테고리2
    • 카테고리3
    • 카테고리4
  • 태그
  • 방명록

'분류 전체보기'에 해당되는 글 1249건

  • 2009.09.09 망할 1.8 ZiF to 1.8 IDE 젠더!!!!!
  • 2009.09.08 아!!!! 위험했다.
  • 2009.09.02 CQ Workflow Viewer - 1 Day.
  • 2009.08.28 UnitTest++ 사용하기. 2
  • 2009.08.18 휴가 후..
  • 2009.08.11 VBScript를 이용한 XmlHttpRequest 하기.
  • 2009.08.10 8월12일 펜션에서 독서를 프로젝트
  • 2009.08.09 "위대한 자들의 탄생" 리뷰? 1

망할 1.8 ZiF to 1.8 IDE 젠더!!!!!

잡글 2009. 9. 9. 16:03

작년 여름 경에 내 UMPC인 U1010에 SSD를 달았다.
그 때 MTRON에서 1.8’ 32기가 제품을 싸게 팔아서 그 때 질렀다.

아무것도 모른 채로 받은 제품은 ZiF 인터페이스였고,
나로써는 좌절이였다. 왜냐면 U1010은 CF 스타일의 IDE였던 것이였다.
그래서 이런저런 사이트들을 돌아다니다 보니 1.8 ZiF to 1.8 IDE 젠더가 그 때 당시
유일한 솔루션이였다. 그런데 간혹 그 젠더를 구성하다가 쇼트 나면 버닝한다는 이야기가
있었다. 그 때는 그냥 그런가 했다.

그.런.데.

결국 내 UMPC에도 그 현상이 발생하고 말았다.

어느날 HDD 부분이 무쟈게 뜨거워지길래 껐다가 한참 후 다시켜니깐 말짱해졌다.
그러나… 그것이 바로 모든 문제의 시작이였을 뿐이였다.
그 다음날 다시 켜고 동영상 보면서 출근을 했는데, 회사에 들어가기 전에
다시 켜보니 또 안됐다. 그래서 문제가 있나 싶어 드라이버로 안을 들여다 보았다.
얼라… 젠더의 컨넥터 부분이 타버렸다.
그래서 당황하고 다시 젠더를 새로운것을 구매했다.

그리고 오늘 연결해서 켰는데……

안된다. 안된다. 한참을 기다리니.. 이번에는 SSD 근처에서 연기가 모락모락…

내용물을 끄집어 내보니… 놋북의 HDD 데이는 부분이 시꺼멓게 타들어가버렸다.

아뜨…. 결국 SSD는 다이 하신것 같고. 22000원 주고 산 젠더는 무용지물.

그냥 SSD 버리시고, HDD로 전환이나 해야 겠다. 된장.

728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

아!!!! 위험했다.

잡글 2009. 9. 8. 10:30

U1010이라는 UMPC에 SSD를 연결하기 위해 ZIP to CF 라는 컨버터를 사용했다.
처음에 SSD를 구매했을때, U1010에는 연결되지 않아 상당한 낭패였는데,
어찌 어찌 구해서 간신히 연결할 수 있게 되었다.

그러다가 한동안은 못쓰고, 원피스 보기 위해 들고 다니면서 조금씩 쓰기 시작했다.
그런데 어느날, HDD 위치에서 미묘한 열기가 물씬 나는 것이였다.
원인도 모른채 일단 전원을 내리고, 드라이버가 없던 탓에, 내부 확인도 못하고 있었다.
그 날 Windows 7을 막 깔았던 시점인지라, 더욱더 막막했다. 또… 깔아야 되는가…라는..

혹시나 하는 마음에 다시 켜보았고, 다행이 잘 움직여 주었다.
기우였나 라는 마음이 지나가고, 그냥 넘어 갔다.
그리고 아침. 다시 원피스를 보면서 회사에 도착했다.
간단한 식사 겸해서 원피스를 켜는데 왠걸? 다시 안켜진다.
아무리 해도 안된다.
무엇이 문제일까…

회사에서 드라이버를 찾아 수소문 끝에 노트북 HDD 부분을 열어보았다.
그.러.자.

혹… 컨넥터가 노랗게 익어버렸다.
합선인지도 모르겠지만, 이거 상당히 당혹스러웠다. 싸구려 컨넥터 였던 것인가?
다행히 SSD는 완전 나간건 아니고… 해서 일단 사진만 찍고 치워놨다.
일단 다시 Auction을 찾았고, Zip To CF 제품 중 거의 일체형에 가까운 제품을 찾을 수 있었다.
이거 받아서 다시 껴보고 제대로 동작하는지 확인해봐야 겠다.

하여간… 무척 당혹스럽게 만든 제품인것 같다.

!!! 니 따위 컨넥터는 하나 걱정안해!!!! 단지 내 U1010과 SSD가 걱정된단 말이닷!!!!!!

728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

CQ Workflow Viewer - 1 Day.

잡글/작업로그 2009. 9. 2. 13:27

이 작업에서 기술적으로 풀어야 되는 최고의 숙제는 COM 개체를 CPP 코드를 이용하여 붙이는 작업이다.
그렇다고 COM 관련 API를 직접 붙여 만들기는 귀찮기도 하고, 기술적으로 능력이 딸리기 때문에, 힘들고, 대신 Visual Studio의 기능을 십분활용하는 방법으로 진행한다.

이 중 MFC 기반으로 만드는 응용 프로그램인 경우, 전체 프로그램의 사이즈는 커지지만,
그래도 편하게 작성할 수 있는 장점은 확실히 이용가능하다고 본다.
여기서 작업 결과물은 ActiveX로 나와야 겠지만, 먼저 COM 연결과 같은 테스트에 가까운 작업 부분에 대해서는 MFC 기반 응용 프로그램으로 만들어 직접 테스트와 디버깅을 하여 결과물을 만든 후 그 내용을 ActiveX로 붙이는 것이 좋을 것 같다.
이를 위해 하는 작업은 COM의 TypeLib를 사용하여 ProxyClass를 자동으로 생성하는 방법을 적용한다.
TypeLib에서 ProxyClass를 만드는 방법은 Visual Studio 버전에 따라 틀리지만, 여기서는 모든 작업을 Visual Studio 2005로 할 것이며, 이 방법을 중심으로 펼칠 예정이다.

Proxy Class 만들기.

  • 프로젝트에서 컨텍스트 메뉴를 띄우고 추가를 선택한다.
  • 추가 아래에서 클래스를 선택한다.
  • 클래스 추가라는 제목의 마법사가 뜨면, 그 중 MFC 항목을 선택한 후 템플릿 중 TypeLib의 MFC 클래스를 선택한다.
  • 사용 가능한 형식 라이브러리에서 원하는 COM을 선택한다. 여기서는 ClearQuest OleServer를 선택한다.
  • 그러면 이 COM에 딸린 각종 인터페이스들이 나열되는데, 그 중 필요한 인터페이스를 선택한다. 여기서는 CQ Workflow의 작업에 필요한 IOAdEntityDef, IOAdEntityDefs, IOAdSession 세가지가 필요하다. 그래서 그 클래스를 추가한다.
  • 그러면 프로젝트의 헤더 파일 목록에 위의 세가지에 대한 프락시 클래스 정의 내용이 담긴 헤더 파일(*.h) 파일이 추가된다.

 

일단 위의 헤더 파일이 만들어졌으면 1차적으로 완성된 것이다.

 

Proxy Class 활용하기.

COM에서 인터페이스를 이용하여 사용하려면, COM에 대한 인스턴스가 필요하다. 지금 위의 작업까지 된 부분은 운영체제 내 등록되어 있는 COM 자체의 설정 값들을 읽어온 것이 전부이다. 이 설정 값만으로는 실제 메모리 존재하는 것이 아니다. 그렇다고 단순하게 Proxy Class를 new 해서 만드는 것은 사실 아무 의미 없다. Proxy Class를 new해서 만드는 것 만큼이나, COM 자체에 대한 인스턴스를 만드는 것이 같이 병행 되어야 하고, 인스턴스화 된 COM 개체를 new해서 만드는 Proxy Class와 연결하면 되는 것이다. 이제 이 COM을 메모리에 올리고 new 해서 만드는 Proxy Class와 연결하는 작업을 수행할 것이다.

ClearQuest OleServer를 사용하려면, 최초 Session 이 필요하다. 즉 이 Session에 대한 인스턴스가 있다면, 이 인스턴스를 통해서 각종 하위 내용들을 끄집어 낼 수 있다. 즉 시작점 같은 의미를 하는 부분을 먼저 인스턴스화 하는 것이 핵심인 것이다.  그래서 다음과 같은 순서로 실행하면 된다.

먼저 Proxy Class를 new 해준다. 여기서는 시작 인스턴스로 사용할 IOAdSession 이라는 것을 먼저 시도하게 된다.
COAdSession *pSession = new COAdSession();

이제 만들어진 ProxyClass에 COM 인스턴스를 싣는다. 이 Proxy Class들은 모두 COleDispatchDriver를 상속받는데, 그 상위 클래스에 정의된 CreateDispatch 함수를 실행하면 된다. 이 때 Program ID 혹은 CLSID를 알아야 하는데, 이 중 제일 접근하기 쉬운 Program ID로 정의해서 넣는다.
pSession->CreateDispatch(_T(“CLEARQUEST.SESSION”));

이제 인터페이스에 정의된 매소드를 실행해 본다.
pSession->UserLogon(_T(“admin”), _T(“”),_T(“udb1”), 1L, _T(“7.0.0”));

 

정리를 하자면, 일단 TypeLib를 통해 ProxyClass를 만든다. 이 작업은 직접 만들 수 있지만, 귀찮으니, MFC에서 제공하는 자동화 도구를 사용해서 만든다. 그리고 난뒤, Proxy Class의 인스턴스를 만들고, 그 안에서 다시 COM 자체의 인터페이스를 생성한 뒤, 실제로 사용한다는 것이다.

728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

UnitTest++ 사용하기.

기술자료/CPP 2009. 8. 28. 18:02

계속 .NET으로 만들고 작성하다 보니, 어느새 VS 에 물이 들만큼 들어 Unit Test 할 때도 VS 에서 제공하는 Unit Test를 그럭저럭 사용할 수 있게 되었다. 그래서 어느새 C#을 이용한 프로젝트 생성시, VS의 UnitTest로 다양한 TDD 적용을 시도할 수 있었다. 게다가 UI나 기능도 나름대로 흡족했다.

 

그런데, 어느날 프로젝트의 구성을 Visual C++로 구성해야 될 일이 생겼다. 그런데 막상 VS의 테스트 기능을 보고 나니 VS에서 제공하는 UnitTest기능은 .NET의 Managed Code에서만 동작하는 반쪽짜리 UnitTest 였다. 그러니 MFC나 Win32 순수 API 프로그램에서는 VS의 UnitTest를 사용할 수 없었다. 다른 대안을 찾아야 되는 시점이 오고야 만 것이다.

만일 TDD를 몰랐다면, 예전 처럼 처음 부터 하나씩 다시 짤 생각이 꽉찼을지 모른다. (아직은 초보이긴 하지만)이미 TDD의 맛을 맛보고, 감동의 여운속에서 헤메는 나로써는 결국 결국 C++용 TDD를 찾기 시작했다.

C++ 언어를 위한 TDD Framework를 찾아보면 알겠지만, 무척 다양하다. 그래서 처음 찾아본 내 입장에서는 무엇이 좋고, 나쁜지를 명확히 알 수 없었다. 그 중 나름대로 평이 좋다는 이런 저런 블로그 이야기를 듣고
UnitTest++를 선택했다. ( http://unittest-cpp.sourceforge.net )


하지만 이 UnitTest 방법은 VS의 UnitTest와는 다른 형태였고, 어떻게 하는지 전혀 알 수 없었다. 겨우 겨우 하나씩 따라 갈 수 있을 정도까지 익히고 보니, 이젠 결과물이 문제였다. 실제로 샘플코드를 시작해보았더니 왠 까만 화면만 휙 나타나다 휙 사라져버렸다. 맨날 녹색 깃발이라고 불리는 테스트 All Green은 커녕, 오로지 텍스트 기반의 메시지 밖에 없을 뿐이였다. 


그러다가 찾은 것이 Visual UnitTest++( http://code.google.com/p/vutpp ) 이였다. 이 도구를 사용하면 UnitTest++의 결과를 Visual Studio에서 Add-on 형식으로 녹색깃발을 구경할 수 있다는 것이였다.

그래서 하나씩 적용해 보았고, 그 실행 결과에 대한 내용을 적어보록 한다.

 

기본작업 환경.

개발자들은 각 개발내용이나 프로젝트에 따라 개발자별 개발 환경이 다를 수 밖에 없다.
그래서 아마 이 작업을 할때도 그 변경된 사항이나 구성된 제품들에 따라 조금씩 다를 수 있다.
이에 이 작업이 성공한 환경을 먼저 언급하고 정리하도록 한다.


- 개발 운영 체제 : MS Windows 2003 Enterprise 한글판.
- 개발 도구 : MS Visual Studio 2005 Team Suite
- SDK : Windows SDK 6.0A

 

UnitTest++ 설치(?) 하기.

맨 먼저 다음 위치(http://sourceforge.net/projects/unittest-cpp/files/) 에서 최신 버전의 UnitTest++을 받도록 한다. 이거 압축 풀면 소스 밖에 없다. 즉 컴파일을 할 수 있어야 된다는 의미다. 지금까지 계속 Visual Studio로 개발을 해왔다면, 이런 형태의 결과물은 받자마자 많이 당혹스럽다.

 

일단 이 소스를 적당한 위치에 넣도록 한다. 여기서는 압축 푼 내용을 모두 D:\Works\UnitTest++\ 에 모두 복사했다. 복사된 결과값을 보면 그 안에, VS 2003과 2005용 솔루션 파일을 볼 수 있다. ( 2008은 솔루션과 프로젝트 파일을 업그레이드 한 뒤 작업을 해야 할 것 같은데, 아직 해본적은 없다.)

파일  들 중에, UnitTest++.vsnet2005.sln 파일이 VS 2005 솔루션 파일인데, 이 파일을 열도록 한다.

솔루션 탐색기에서 보면  다음과 같이 보일 것이다.

이 프로젝트 내용 중 “UnitTest++.vsnet2005”를 컴파일 하도록 한다. 그러면 폴더 아래 쪽에  debug 라는 폴더가 자동으로 만들어지면서, 그 안에 UnitTest++.vsnet2005.lib 파일이 생성된다. 이 파일이 이 UnitTest++의 핵심 파일인데, 이 파일의 위치를 나중에 넣어서 사용하니까, 명확히 경로를 기억하도록 하자.

여기 까지가 UnitTest++ 설치 작업이였다.

 

UnitTest VisualUnitTest++ 설치.

UnitTest의 메인은 위의 단계까지 하면 끝이긴 하다. 하지만, All Green Flag와 같은 Unit Test 만의 로망인 결과값을 보기가 어렵다. 모든 결과값이 텍스트로 Success와 Fail 밖에 없기 때문이다. 그래서 이 내용을 그림으로 보여고 싶으면 이런 별도의 솔루션을 설치하는 것이 좋다. ( 혹시 DOS 창에서 Success와 Fail 로 표시되는 Text에 로망이 가득하신 분은 무시해도 상관 없다.)

 

현재(2009/8/29 기준) 최신 버전은 0.4 버전으로 다양한 UnitTest 솔루션을 지원한다. 하지만 현재로 사용할 내용은 UnitTest++ 이며, 원래 이 Visual UnitTest++도 UnitTest++을 지원하기 위해 태어난 존재이기 때문에 호환에 아무런 문제가 없다.

일단 사이트에서 최신 버전을 다운로드 받는다. ( http://code.google.com/p/vutpp/downloads/list  )

여기서 꼭 받아야 되는 파일이 두가지인데, 한개는 확장자가 .msi 로 끝나는 파일로 이 파일이 Visual UnitTest++을 실행해주는 중요한 파일이다. 그리고 vuppsample.X.X.zip 파일을 받는다. ( X.X는 버전을 의미) 설치 파일이야 당연히 필요하지만, 대개  sample 파일은 잘 받지 않는 편이다. 하지만, 이 도구로 작업 결과를 보려면 sample 파일이 꼭 필요하다. 문서화가 조금 부실해 설명 내용으로 잘 이해되지 않는 부분이 많은데, 이런 부족한 설명은 바로 이 Sample을 보고 터득해야 되기 때문이다. 여튼 설치 파일과 Sample 파일은 꼭 받기를 바란다.

 

다운로드가 되었다면, 먼저 .msi를 실행하고 설치한다.

시스템에 문제가 없다면 정상적으로 설치되며 VS를 실행해서 메뉴 항목을 보면 다음 그림과 같이 도움말 옆에 떡하니 붙어 있게된다.

일단 실행하지 말고, 이제는 아까 받은 샘플 파일 압축을 풀도록 한다.
이건 굳이 정해져 있는 것이 아니기 때문에, 바탕화면과 같이 적당하게 풀고 그 프로젝트를 열도록 한다.
그러면 C++ 용 UnitTest Framework 별로 프로젝트가 달랑 달랑 붙어 있다.  자 여기서는 최소한 Unit Test가 어떻게 되는지를 보고, 설정이 제정신으로 되었는지를 체크하는데 그 주안점을 둘 예정이다. 그래서 다른 프로젝트는 일단 두고, 이 Samle 에서 제공하는 SampleUnitTest++.2005 만 이용하여 설정 관련 확인 작업을 할 예정이다.

자 이제 Unit Test를 그럴싸 하게 할 모든 준비가 되었다.
이제 본격적으로 진행할 시점만 나왔다.

 

UnitTest 프로젝트 생성.

이 UnitTes++은 그 프로그램이 무척 간단하기 때문에, Windows UI로 동작되는 부분이 전혀 없다. 그래서 이 Test용 프로젝트는 단순 “Win32 콘솔 응용 프로그램”로 생성해주면 된다.

자신이 진행 중인 솔루션이 있다면 그 솔루션에서 오른쪽 버튼을 클릭한 뒤, 새 프로젝트를 해주도록 한다.

그러면 생성할 새 프로젝트에 대한 템플릿들을 보여주는데, 그 중 Visual C++의 Win32 항목에 있는 Win 32 콘솔 응용 프로그램을 선택해주면 된다.

적당한 프로젝트 이름을 주고(가급적이면 맨 앞의 이름을 test 라고 붙이는게 좋을 것이다. ) 만들기 하면 정상적으로 완료될 것이다. 그러면 stdafx.h와 cpp 파일 그리고 프로젝트 이름과 동일한 CPP 파일이 생성된다.
일단 stdafx 파일들은 그냥 삭제하시고 프로젝트 이름의 cpp 파일만 남겨놓도록 한다.

이제 프로젝트를 수정하도록 한다.

제일 먼저 구성 속성의 C/C++의 일반 속성 에서 “추가 포함 디렉터리” 부분에 아까 압축을 풀어 넣었던 "UnitTest++” 프로젝트의 Src 경로를 걸어주도록 한다.

이제 C/C++ 트리 안쪽에 있는 전처리기 항목에 들어가 “전처리기 정의” 에서 VUTPP_UNITTEST++ 을 추가한다.

아래쪽에 있는 미리 컴파일된 헤더 항목으로 이동해서 이번엔 “미리 컴파일된 헤더 만들기/사용” 항목 중 미리 컴파일된 헤더 사용 안 함을 선택하도록 한다. ( 그래야 아까 뺀 stdafx.h 와 cpp 파일을 찾지 않는다. )

마지막으로 아래의 링커 부분에서 입력 부분에 들어가 “추가 종속성”에서 아까 만들어진 UnitTest++을 컴파일해서 만든 .lib 파일을 연결하도록 한다.

이렇게 한 뒤, 이제 마지막으로 프로젝트 이름의 .cpp 파일을 열도록 한다. 연 뒤에, Visual UnitTest++의 샘플 파일 중 VUTPPBind.cpp 파일 내용에서 전부 복사 해오도록 한다.

자 이제 테스트 로직을 하나 추가한다. 적당한 이름의 .cpp 파일을 만들고 아래의 코드로 넣도록 한다.

#include <windows.h>
#include "UnitTest++.h"

namespace
{
    TEST(testUnitTest)
    {
        bool bResult = true;
        CHECK(bResult);

    }
}

그리고 컴파일 해보자.


컴파일 오류가 났다면 에러의 내용을 보고 위의 내용을 참고하여 수정하도록 한다.

정상적으로 컴파일 되었다면, 이제 VS의 메뉴에 있는 VUTPP –> UnitTestBrowser를 실행하도록 한다.
화면 상에 VisualUnitTest++이 뜰 것이고, Run All을 하면 아래의 화면과 같은 결과를 볼 수 있다.

 


UPDATE : 2009 / 12 / 24

주의사신 님 댓글을 보고 저도 잠시 이 포스팅 내용을 조금 읽었습니다. 약간 쇼크.
제가 다시 보는데 이게 무슨 말이야… 라고 생각이 들었습니다.

조금 다듬어 보려고 했지만, 결과는 비슷한듯 싶군요.

단지 보기가 조금이나마 편하라고, 약간의 정리만 해봤습니다.

728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

휴가 후..

잡글 2009. 8. 18. 11:16
이번에 경기도 용인시 양지 쪽에 위치한 한 펜션(더 후)에 갔었다.
사실 전체 계획을 2박 3일로 잡았기 때문에, 그 짧음을 예감했고, 그다지 많은 신경은 안썼다.
사실 Full Time 하루라는 시간은 무척 짧기 때문이다. 그래도 잠시나마 자동차 소리에
시달리지 않고, 그나마 맑은 공기를 마실 수 있다는 그 맛에 가려고 생각했고,
생각한대로 행동에 옮겼다.

시작은 8월12일. 오전.
일단 각기 만나기로 했는데, 문제는 각기 챙긴 짐들이 의외로 많았다는 사실.
짐들은 대충 싣고 집결 장소를 이마트로 변경하여, 바로 음식물 부터 사러 갔다.
이런 저런 음식거리들과 잡스러운 물건들을 주섬주섬 샀다.
(2박3일의 짦음을 아직 이 친구들은 경험하지 않은 건지, 참 많이도 샀다.)
일단 간단하게 먹으려는 생각은 맥도널드까지 미치고, 각기 햄버거를 먹고,
결국 1시 좀 넘어서야 출발했다.
아무리 빨라야 1시간 30분은 족히 걸릴 거리.
약간의 착오와 길 헤멤 후에 간신히 도착했다. 도착했을때가 대략 3시 좀 넘어서...

인터넷이나, 기타 가구 배치나, 짐 정리를 하는데, 이거 원.... 여기 인터넷이 그닥 좋지 않은 상황이였다.
공유기가 반파된 상태였고, 예전 ADSL로 연결된 조금은 열악한 환경이였다.
떠나기전 공유기는 챙겨 왔기 때문에, 그거 설치해주고, 일단 간단하게나마 인터넷을 했다.
인터넷 시설이 꾸지다 보니, 컴퓨터로 무언가 하기는 틀린 것 같았고,
그냥 X-Box 360이나 돌렸다.
TV도 영 구닥다리라 그다지 명퀘한 것은 아니였지만, 그래도 이런 저런 시설덕에 일단
이용할 만했다. 난 책도 읽고, 음료수도 마시고, 커피도 마시면서 어떻게 있는게 편할까,
이런 저런 고민했다. 그렇게 하루.

2일째. 청소년 수련관쪽으로 간단하게 산책하고와서, 다시 책을 잡았다.
시원한 공기와 자연의 소리를 벗삼아, 차가운 커피 그리고 담배로 여유를 갖고 나니
무언가 충전되는 기분이였다.
오후는 뭐 이런 저런 오락하면서 시간을 보냈다.
그리고.. 밤 늦게.
고기를 궈먹었다. 이 때부터 음식물 치우기에 무슨 의무감 들기 시작한 그 시점이였다.

3일째. 이제 철수해야 되서, 짐 정리하느라, 변변히 먹는 것 없었다.
주섬 주섬 무언가 챙겨 먹었지만, 그다지....
게다가 남은 음식물도 꽤 많았고.
결국 나눠나눠 친구들이 가져갔고, 다시 차 2대에 나눠 타고는 서울로 돌아왔다.

나름대로 만족하지만 무언가 정말 무언가 부족한 휴가였다.
다음에는 5박6일로 여유있게 이동하여 여유있게 시간을 보낼 수 있도록 계획해봐야 겠다.
역시 무언가 쫒기면 싫다.
728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

VBScript를 이용한 XmlHttpRequest 하기.

기술자료/Web 2009. 8. 11. 13:01
지금 ClearQuest로 XMLHttpRequest를 해야 되는 경우가 발생되어 적용하는 중,
예제로 준 방법이 Perl 방법이라 난해 한데다 제대로 수행되지 않는 경우가 발생했다.
그래서 VBScript로 적용 선회를 했고 간신히 성공했다.
여기저기 사이트를 통해 알아본 결과 내용을 정리하면 아래와 같다.


맨 먼저 VB에서 HttpRequest 처리를 하려면, XMLHttpRequest를 지원하는 Object를 만들어야 한다.

Dim xmlhttp

xmlhttp = CreateObject("Microsoft.XMLHTTP")


위의 내용을 보면 Microsoft.XMLHTTP라는 오브젝트를 생성하게 되는데, 대개 위의 오브젝트를 생성하면 크게 버전문제와 상관 없이 동작할 것이다. 간혹 유사한 이름이긴 한데, 다른 형태의 XMLHTTP를 부르려면, XML 버전에 따라 지원하기도 하고 안하기도 하는 변덕을 구경하기 때문에, 그냥 위의 내용 처럼 적용해주면 된다.

xmlhttp.open "POST" "http://localhost/ReceiverForData.aspx", false


이번엔 위에서 정의해서 만든 HttpRequest 오브젝트로 실제 호출하기 위한 구성을 해준다.
POST 부분은 데이터가 어떻게 HttpRequest를 타고 전달되는지를 결정하게 되는데,
GET으로 하게 되면 주소값 내에 전달할 데이터가 담기게 되고, POST를 하게 되면 별도로 데이터를
추가해 넣을 수 있다. 이 때 데이터가 크거나 다양한 경우 가급적 POST로 전달하는게 좋다.

xmlhttp.setRequestHeader "Content-Type","application/x-www-form-urlencoded"

  
사실 HttpRequest는 일종의 숨겨진 웹브라우저를 띄워 웹서버를 호출 하는 것이다. 단지 사용자 눈에 브라우저가 뜬 것을 보지 못할 뿐, 뒤쪽에서는 마치 그런 짓을 하고 있는 것이다. 이 때 웹 서버를 호출하는 순간 웹서버에게 자신의 신분을 알려주는 작업을 해야 하는데, 이 작업에 해당하는게 바로 Header에 데이터를 넣는 것이다.
여기서는 현재 웹서버에 데이터를 전달 할때, form 기반으로 데이터를 전달하는 형태라는 것을 알리게 된다.

xmlhttp.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.2)"

  
위와 동일한 역할을 한다. 단지 이 부분은 현재 웹브라우저나, 컴퓨터 설정 상태들을 담는 내용이다. 완전히 웹서버를 속이고 자신이 마치 IE 8.0 인양 알려주는 작업이다. 간혹 일부 웹서버에서는 위와 같이 브라우저 버전이 IE, FireFox, 같은게 아니면 튕기는 작업을 당할 수 있기 때문에, 가급적 자신의 신분을 저렇게 숨겨 놓는게 제일 좋다.
xmlhttp.send "ID=OKSK&Name=OsakuSakurazo"

Post 형태의 데이터를 전송할 때 저렇게 한다. 보낼 데이터가 없으면 빼면 되고, 있다면, 변수이름=값 형태로 쭉 나열한다. 2개 이상의 값을 전송할 때는 사이에다 "&"를 넣어주도록 한다.

만일 결과물이 필요하다면....

xmlhttp.responseText


에서 빼오면 된다.(웹페이지 내에서 Text만 쭉 긁은 값이 나오게 된다.)

이 자료를 만드는데 사용한 Reference들은 다음과 같다.
http://web5.w3.org/TR/XMLHttpRequest/
http://msdn.microsoft.com/en-us/library/ms535874%28VS.85%29.aspx

728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

8월12일 펜션에서 독서를 프로젝트

잡글 2009. 8. 10. 17:55
친구들과 2박 3일 뒹굴 뒹굴 독서 겸 제멋대로 하기 휴가 계획을 짜봤다.
혼자가는게 아니다 보니 주섬 주섬 무언가 챙겨야 되는 입장이기에,
결국 계획레벨까지 올라왔다.
원체 즉흥적 레벨로 자주 놀아왔기에 이런 계획 짜는 것 자체가 거부감이 드는건 사실이지만,
가끔은 이런짓도 할만 한듯.

8월12일 ~ 8월 15일까지 갈 예정인데, 다른 휴가 즐기시는 분들은
맑은 하늘과 시원한 바람을 바라고 있겠지만,
난 그저 조용하고 책읽기 좋고, 담배핀다고 지랄하는 사람만 없으면 장땡인 것 같다.
그냥 조금 쉬고 싶다.


펜션 정보.

이름: 더펜션

주소 : 경기도 용인시 양지면 평창리 661-4 번지(기흥구)

전화 : 1544-0758. 010-2915-1441

객실명 평수 기준인원 최대인원
코지하우스 20평 6명 12명

TV, 식탁, 에어컨, 냉장고, DVD, 취사, 전자렌지, 욕실용품, 핫플레이트

방1, 거실1, 정수기


준비 물품

 고기 굽기 류

  • [구입] 고기 - 돼지, 소, 오리 상황에 따라 구매. 양도 즉흥적으로 ( 예상 2근?)
  • 고기 불판.
  • 휴대용 가스버너
  • [구입] 부탄가스 1줄
  • [구입] 마늘
  • [구입] 고추
  • [구입] 쌈장
  • [구입] 버섯
  • [구입] 알루미늄 호일

식사용품

  • [구입] 햇반
  • [구입] 라면
  • [구입] 김치
  • [구입] 냉동식품 ( 만두, 산적, 비엔나 소시지 등 )
  • [구입] 1회용 접시,  숟가락, 젓가락, 컵.

음료/주류

  • [구입] PET병 형 음료 7개 정도. 쥬스, 탄산계
  • [구입] 맥주, 소주 ( 술드시는 분들 취향대로 )

기타물품

  • [개인지참] 개인 세면도구
  • [개인지참] 갈아 입을 옷.
  • [KHJ] 모기향
  • [KHJ,KCW] 전기 모기향
  • [KHJ,KCW]커피메이커
  • [KHJ,KCW]커피원두
  • [KCW] 그라인더
  • [개인지참] 자기가 2박 동안 가지고 놀거.
  • [KHJ]랜선 15M, 1M짜리 4개
  • [KHJ]공유기

이 글은 스프링노트에서 작성되었습니다.

728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

"위대한 자들의 탄생" 리뷰?

잡글 2009. 8. 9. 10:10
흉기레벨은 아니지만, 나름대로 두께는 있는 편 - 400여 쪽 - 인 책이였다.
읽는데는 큰 부담은 없지만, 몇명 불편한 부분을 제외하고는
술술술 읽을만 했고 재미도 있었다.

이 책을 보고 있다보면, 여러 부분의 표현은 영화를 보듯 현란했다.
또, 각 등장인물의 독백들 역시 즐거웠다.
여러 대목들이 마음에 들었지만, 내 기억에 괴적을 남긴 부분이 두 군데 있었다.

하나는, 일행들이 도주 하기위해 지나치는 마포대교에서,
주인공이 문득 창밖의 광경을 바라보게 된다. 옛날 술한잔 걸치고 택시를 타고 가다 창밖에서
보이는 가로등의 괘적의 아름다움을 정말 미묘하게 표현했다.
도주중. 아무런 미래가 보이지 않는 상황 속에서 멍함 속에서 자신의 처지에 대한
만감 교차를 저렇게 재미있게 표현하는 모습은 공감과 함께, 글 속으로 깊게 들어가 주게해줬다.

그리고, 적측 분소에 쳐 들어가 무기나, 정보를 수집하기 위해 돌입했을 때다.
딱 한명의 리더이자 경험자를 제외한 초짜 친구들을 데리고 진짜 무기를 들고,
전투용 흥분제 하나 먹고 뛰어드는 무식한 그들의 처지를 명확하게 보여주는 결과물
역시 훌륭했다. 젊고 흥분제를 먹은 그들이지만, 결국 초짜들였고, 망설이고 두려워했다.
그리고 총알이 난무하고 누군가를 죽이고 다시 흥분되어 달려들고.
하지만, 계속 들뜬 상태의 영웅행각은 결국 미숙한 그들에게는 너무 큰짐.
상대는 이미 전문가들이기에 그들이 다시 재공격이 들어 가서는
모두 무력화에 빠졌다. 이 전형적인 흐름이 끊어지지 않게 술술술 풀어 버린 부분도
정말 마음에 들었다. 최대/최악의 의지력으로 무너진 팀을 홀로 끌고온
한 사람의 행동은 밴드오브브라더즈에서 본 것과 같은 감동 같은 느낌도
전해졌다.

그러나, 조금은 과하다고 생각한 부분이 있었다.
아, hysteric glamour 님이 불편하다고 한 내용은 그저 조금은 표현이 과격하다는 정도고
(그냥 성인물 영화 본 것 같아서, 그다지 불편하지는 않다.)
내가 말한 과한 부분은 작가의 풍부한 지식 때문인지, 그 지식을 쏟아 내지 않으면
터질 것 같은 느낌을 받은 점이다. 이야기가 3인칭이면서도 그 내면까지 모두 까발리는데
설명하는 글이 의외로 많다. 게다가 알 수없는 무기와 정황, 기술들을 소개하기 위해
적은 글도 만만치 않게 너무 많다. 이게 너무 불편했다.
마치 돈키호테가 풀플레이트 무장을 용병처럼 전혀 다른 제품들로 조립해서 입은 느낌?
그 전의 대화, 그 전의 상황, 그 전의 무언가를 표현하기 위해 공감을 얻기위한
설명이 너무 길었다.

그리고, 급하게 마무리를 지으려는 것 처럼, 다 보여주지 못한 실체를 전부 이야기하기 위해
강연이라는 이름으로 너무 많은 것을 쏟아 냈다. 아군이든 적군이든.....
음모론의 핵을 저렇게 요점 정리 해버리면, 즐거움이 너무 반감되는 것 아닌지....
책을 전편 후편으로 굳이 나누면 전편까지는 숨겨진 껍질을 깔듯 말듯 하다가,
후편에서는 아예 칼로 반토막 해버린 후 끝났지? 라고 말하는 것 같다.
허무.... 하단 느낌?

내가 잘 아는 사람 중 한명이 내는 책이여서 그런지 다시 보게 되었고, 읽었다.
이후에 만드는 책들도 대작이 되길 빈다.

PS. 고경오 군. 이 글을 볼리는 없지만, 이상한거 하나 적는데, 오기호가 훈련 받는 곳에서 뜬금없이
병남이 나타나드라. 엥??? 얘가 왜 갑자기 나타나지... 했어. ㅋㅋ 이거 오류지?




728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

  • «
  • 1
  • ···
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • ···
  • 157
  • »
250x250

블로그 내에 소스 코드 삽입 이사온 기념 스킨도... RSS 전문 기능 비활성화 관련. 스킨 바꾸어 보았습니다. 서버 파일 정리 좀 했습니다.

«   2025/12   »
일 월 화 수 목 금 토
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

친구 것 WSS 수 블로그 SharePoint java me2photo twi2me 불만 지름신 Tutorial Azure 협업 e-book 비스킷 me2dayzm 개발환경 Google Apps Engine MOSS 2007 좀 me2sms 매뉴얼 moss 인터파크 2010 오류 windows Buscuit Visual Studio

  • Total :
  • Today :
  • Yesterday :

Copyright © 2015-2025 Socialdev. All Rights Reserved.

Copyright © 2015-2025 Socialdev. All Rights Reserved.

티스토리툴바