이 문서는 3단계 : SDK 생성 및 SDK설치와 VS2005 설정 의 내용을 담고 있습니다
기존의 내용을 보시려면 아래의 링크를 클릭하세요
이 SDK 생성방법은 다음 링크의 문서의 순서대로 설치한 다음에 적용되는 내용입니다
1단계 : Platform Builder5 - Workspace생성
2단계 : OS Design
참고 문서 : Platform Builder 5 설치
3단계로 PB5에서 생성한 릴리즈 파일과 바이너리 이미지로 SDK를 생성하고 설치하여, VS2005에서 설정하는 내용입니다
이 문서의 내용은 MS에서 제공한 Using the Windows CE 5.0 DeviceEmulator BSP for ARMV4I의 문서를 참고하여 정리하였습니다
주1 : 이 문서는 CountS가 직접 작성한 내용으로 퍼가실 때는 꼭 트랙백을 남겨주시기 바랍니다
주2 : 주관적인 방향이 많이 제시되어 있기 때문에 여러분께서 다른 좋은 방법이 있으시면 그것을 선택하시는 것이 좋습니다
1. SDK 마법사 실행
Menu – Platform->SDK->New SDK 실행
저는 WinCE5_SDK_Ver_Korean.msi 를 생성하기 위해 정의하였고 이름은 _를 제외하여 작성하였습니다
버전은 처음하는거라 1이라 입력했습니다만, 기본은 5로 입력되어있습니다
SDK에 추가될 언어를 선택합니다 MFC를 사용하기 위해서는 MFC for Windows CE Applications 를 선택해 주셔야 합니다
설정이 완료되었습니다 [Finish]눌러 마법사를 종료합니다
2. SDK 세부설정
Menu – Platform->SDK->Configure SDK 실행
[Install] 탭에는 SDK가 생성될 경로와 VS2005에서 추가될 이름, 그리고 MSI 파일이름을 정의할 수 있습니다
눈치 채셨을지 모르지만, OS design name은 Workspace이름이 입력됩니다
아래 Compress files into the MSI database file (more compact)옵션에 선택되어 있는것을 볼 수 있습니다
이는 단일 MSI파일로 생성할 꺼냐 아니면 MSI파일과 설치 폴더로 생성할꺼냐를 선택하는 옵션입니다
[Development Languages]탭은 SDK Wizard에서 설정했던 것과 동일하게 되어 있습니다
지원하는 언어의 관련 SDK를 추가하는 것 인데, 마법사에서 혹시 놓치신 내용이 있으면 선택해주시면 됩니다
[Transports]탭은 플랫폼과 통신하기 위한 방법을 설정합니다.
기본으로 선택되어 있도록 하시면 됩니다
그외 여러가지 기능이 있으니 확인 하시기 바랍니다
설정이 완료되었으면 [확인]버튼을 눌러 SDK설정을 빠져나옵니다
※주 : 가급적이면 SDK 설정을 한번에 완료하는 것이 좋습니다. 이유는 아래에 설명드리겠습니다
3. Release Directory 확인 및 ExportSDK.sdkcfg 편집
Menu – Build OS->Open Release Directory 실행
다음과 같은 화면이 나옵니다.
이곳에서 릴리즈 디렉토리의 경로를 확인하신 수 탐색기로 이동합니다
다른 파일 탐색 프로그램이 있으시면 그걸 이용하셔도 무방합니다
탐색기에서 두단계 위로 올라가시면 우리가 생성한 Workspace이름의 폴더를 찾으실 수 있습니다
이곳에서 ExportSDK.sdkcfg 파일을 백업해 둡니다 (Ex : 사본 – ExportSDK.sdkcfg)
그리고 ExportSDK.sdkcfg를 취향에 맞는 텍스트 편집기를 이용하여 불러옵니다
저는 메모장을 이용합니다
화면과 같은 XML파일을 보실 수 있습니다.
이곳에서는 SDK Configure보다 세세한 설정을 하기 좋습니다
단, 초보자 분들은 가급적이면 주의하시기 바랍니다
4. 에뮬레이션 설정 – No Custom Skin
이부분이 가장 중요한 내용입니다.
저는 이부분을 잘못 이해하고 넘어갔다가 수십번 빌드와 설치 그리고 삭제를 반복하였습니다
화면에서 보시면 PropertyBag Name이 DeviceEmulation 과 Emulation 두가지 있습니다
우리는 아무것도 없는 DeviceEmulation에 정보를 입력할 것 입니다
아래에 Emulation에 동일한 내용이 있다고 이곳을 수정하시면 안됩니다
전혀 VS2005 장치 에뮬레이터 관리자에서 인식을 하지 못합니다
저는 지금 커스텀 스킨이 없는 상황이기 때문에 아래와 같은 내용으로 입력하게 됩니다
만약, 사용자가 디바이스와 같은 스킨을 원하신다면 MSDN을 참고하여 주시기 바라고,
입력되는 내용은 참고문서 : Using the Windows CE 5.0 DeviceEmulator BSP for ARMV4I 를 참조해 주시기 바랍니다
DeviceEmuation에 다음과 같은 내용을 입력합니다
노란색으로 하이라이트 된 영역은 사용자의 조건에 맞게 수정하시면 됩니다
특히 VMID는 다음과 같은 절차로 입력해야 합니다
이것은 장치의 고유ID를 지정해 줘야 하기 때문에 GUIDgen으로 생성해야 합니다
다른 guidgen을 사용하셔도 무방합니다만 저는 VS2005의 guidgen을 이용하였습니다
VS2005를 정상적으로 설치하셨으면 다음과 같은 경로에 있습니다
C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\guidgen.exe
Create GUID를 실행하면 중복되지 않는 고유의 GUID를 생성하여 줍니다
Registry Format으로 설정하시고 생성하시면 뒤 Copy하신다음 아래와 같이 입력합니다
<Property NAME="VMID">{ADE7C817-40CE-460d-98F9-EDAA47B38D54}</Property>
상단의 붉은색 하이라이트 부분이 새로 입력된 부분 입니다
우선 임시로 저장합니다.
5번 단계 이후 다시 추가 작업이 이루어지기 때문입니다.
5. BIN파일 추가
생성되는 SDK에는 에뮬레이터가 추가되기 때문에 ROM Image가 필요합니다
우리는 이미 이것을 2단계에서 생성하였고, 릴리즈 폴더에 보시면 nk.bin파일이 있음을 확인하실 수 있습니다
상단의 3. Release Directory 에서 위치를 확인하시고 이동하시면 됩니다
확인된 nk.bin 파일을 다음과 같은 경로에 폴더를 새로 생성하여 복사합니다
C:\WINCE500\PBWorkspaces\WinCE5_SDK_Korean\BIN
이유는 다음과 같습니다
디바이스 에뮬레이션 nk.bin 파일이지만 폴더라고 생각하면 된다. by. Jaegeol Kim |
이러한 이유로 nk.bin파일을 BIN이라는 폴더를 생성해서 복사하였습니다
다시 ExportSDK.sdkcfg 편집으로 돌아갑니다
ExportSDK.sdkcfg파일 아래에 보면 <PropertyBag NAME="Added Files"/>이러한 테그를 보실 수 있습니다
이것은 사용자가 추가로 다른 파일들을 SDK에 추가할 것인지를 묻는 내용으로 SDK Configure에서 수정이 가능합니다만, 관련 환경변수가 많기 때문에우리는 이것을 수작업으로 추가하도록 하겠습니다.
앞서 말씀드린 바와 같이 이것은 No Custom Skin용 입니다.
Custom Skin을 이용하실 경우 상단의 링크를 통하여 다른 소스를 참고하시기 바랍니다
{3B388597-0924-4102-ADFA-2519D2C3E11B}속성백은 에뮬레이터의 이미지를 가리키는 속성백이라 보시면 됩니다
노란색 하이라이트 부분을 아까 nk.bin을 복사한 파일 경로로 입력해 주시기 바랍니다
위와같은 작업을 마치셨으면 저장하고 텍스트 편집도구를 종료합니다
6. SDK 생성
Menu – Platform->SDK->Build SDK 실행
※ 주 : 가급적이면 5,6단계를 진행한 상태에서는 Configure SDK를 이용하여 수정하지 마시기 바랍니다
가끔 앞서 입력된 내용들이 손상을 입는 경우가 발생되어 재수정해야 하는 경우가 발생됩니다
진행 중 SDK에 릴리즈된 파일들과 어플리케이션 개발에 필요한 언어가 포함되는 것을 보실 수 있습니다
에러없이 정상적으로 SDK가 생성되면 위와 같은 화면이 출력 됩니다
7. SDK 설치
C:\WINCE500\PBWorkspaces\WinCE5_SDK_Korean\SDK 경로에 보시면 위에서 설정한 이름으로
WinCE5_SDK_Korean_SDK.msi가 생성된 것을 보실 수 있습니다
8. Visual Studio 2005 설정
Visual Studio – 메뉴 – 도구->옵션 실행
옵션 트리에서 장치도구->장치 선택을 하시면
장치에 우리가 작성한 WinCE5 verKorean이 설치된 것을 보실 수 있습니다
이곳에 입력된 이름은 ExportSDK.sdkcfg의 DeviceEmuation 속성백의 1번 속성백에 있는
ImageName 속성에 정의한 이름이 나오게 됩니다
WinCE5 verKorean을 선택 후 [속성]버튼을 누릅니다
속성 창에서 [전송]을 DMA 전송으로 선택 후 [에뮬레이터 옵션] 버튼을 누릅니다
에뮬레이터 속성의 [일반]탭에는 이미지의 위치와 RAM 크기 지정을 할 수 있습니다
또한 공유 폴더를 지정하여 SD카드를 추가한 것처럼 이용할 수 있습니다
어플리케이션 개발시 PC의 자료를 에뮬레이터로 저장할 때 유용하게 사용됩니다
[표시]탭에서는 스킨과 비디오를 선택 할 수 있는데 우리는 Custom Skin을 이용하지 않았기 때문에
비디오를 선택하고 화면너비와 화면 높이, 색상 수를 정의 합니다
[네트워크]탭에서는 NE200 PCMCIA 네트워크 어댑터를 활성하여 다음에 바인딩 이라는 설정이 있습니다
이는 우리가 1단계에서 추가한 네트워크 어댑터로 개발PC의 네트워크 카드와 바인딩을 통하여
인터넷을 지원하는 기능입니다
이것을 선택 하지 않으면 에뮬레이터 상태에서 크래들에 접속해 ActiveSync를 통하여 인터넷을 지원하는 방법도 있습니다
[확인] 버튼을 눌러 설정을 마무리 합니다
9. VS2005 장치 에뮬레이터 관리자 동작 시험
Visual Studio – 메뉴 – 도구->장치 에뮬레이터 관리자 실행
장치 에뮬레이터 관리자를 실행하면 우리가 생성하여 설치한 WinCE5_SDK_Korean과
에뮬레이터 이름 WinCE5 verKorean을 보실 수 있습니다
※ 주 : 만약 보이지 않으면 [새로 고침]을 눌러보세요
WinCE5 verKorean을 선택 후 오른쪽 마우스 클릭으로 팝업 메뉴를 띄워 [연결]을 누릅니다
Device Emulator – 내 장치-Storage Card가 설치된 것을 보실 수 있습니다
개발PC의 폴더의 파일과 동일한 정보가 들어가 있는 것을 볼 수 있습니다
내장된 인터넷 익스플로어로 네이버 PDA사이트에 접속한 모습입니다
자체 장치인 Ethernet Card를 추가해 둔 상태이기 때문에 ActiveSync와 접속이 안되어도 인터넷이 됩니다
10. 마치며...
이상으로 PB5를 이용하여 VS2005의 에뮬레이터 SDK를 생성하여 설치하는 것을 보았습니다
사실 이 문제가 해결되지 않아 약 한달간 고생하였습니다.
정확하게는 설명문서를 잘 읽지 않았다는 것이 가장 큰 이유중 하나 입니다
기본적인 환경을 한번 직접 해 본다면 그 다음부터는 많은 성장에 도움이 될 것 입니다
이 글을 작성한 계기는 자신에 대한 백업 이기도 하고, 또 이런 문제로 고생하시는 분들께 도움이 될까 해서 입니다
변변찮은 글을 읽어주셔서 감사합니다