IME 개발을 위한 Win32 다국어 IME 개요
버전 1.32
최종 수정일: 1998년 4월 1일, 번역: Luciano Jeong
IME 파일 포맷과 데이터 구조체 (Part 1)
아래는 IME가 사용하는 IME 파일 포맷과 데이터 구조체에 대해 설명합니다.
IME 파일 포맷
IME는 아래 필드들을 리소스의 버전 정보에서 정확히 지정할 필요가 있습니다. 이는 고정된 파일 정보 부분과 가변 길이 정보 부분으로 구성되어 있습니다. 리소스의 버전 정보에 관한 상세한 내용은 Microsoft Platform SDK를 참조하십시오.
아래는 IME 파일이 포함해야 하는 상세 정보 설정입니다.
dwFileOS
&nsbp;dwFileOS는 버전 정보의 최상위 블록에 명시되어야 하며 Windows 95 및 Windows NT/Windows 2000 IME를 위해서는 VOS__WINDOWS32로 지정되어야 합니다.
dwFileType
dwFileType는 버전 정보의 최상위 블록에 명시되어야 하며 항상 VFT_DRV여야 합니다.
dwFileSubType
dwFileSubType는 버전 정보의 최상위 블록에 명시되어야 하며 항상 VFT2_DRV_INPUTMETHOD여야 힙니다.
FileDescription
FileDescription는 버전 정보의 특정 언어 블록에 명시되어야 합니다. 이는 IME의 이름과 버전을 포함하여야 합니다. 이 문자열은 화면에 보여주기 위한 용도로만 쓰이며 현재는 최대 32개의 TCHAR가 가능합니다. 차기 버전에서는 좀 더 증가할 수 있습니다.
ProductName
ProductName는 버전 정보의 특정 언어 블록에 명시되어야 합니다.
Charset ID 및 Language ID
코드 페이지(character set ID)과 언어 ID는 버전 정보 리소스의 가변 정보 블록에 명시되어야 합니다. 코드 페이지가 여러 종류이고 언어 ID가 블록에 명시되어있다면 IME는 화면에 표시하기 위해 첫 번째 코드 페이지 ID를 사용하며 IME 언어로는 첫 번째로 명시된 언어 ID를 사용합니다. 리소스 언어 대신 IME가 처리하고자 하는 언어에 맞춰져야 합니다. IME의 파일 이름은 8.3 규칙을 따라야 합니다.
IME 개발을 위한 리소스 스크립트의 예
/* Version */ VS_VERSION_INFO VERSIONINFO FILEVERSION 4,0,0,0 PRODUCTVERSION 4,0,0,0 FILEFLAGSMASK 0x3fL FILEFLAGS 0xaL FILEOS 0x4L // dwFileOS FILETYPE 0x3L // dwFileType FILESUBTYPE 0xbL // dwFileSubType BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "041103A4" BEGIN VALUE "CompanyName", "Microsoft Corporation\0" VALUE "FileDescription", "FAKEIME 4.0 Unicode Edition\0" // FileDescription VALUE "FileVersion", "4.00\0" VALUE "InternalName", "Fake Input Method Editor\0" VALUE "LegalCopyright", "Copyright (C) Microsoft Corp. \0" VALUE "OriginalFilename", "FAKEIME.IME\0" VALUE "ProductName", "FAKEIME\0" // ProductName VALUE "ProductVersion", "4.00\0" END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x411, 932 END END
IME 레지스트리 내용
HKEY_CURRENT_USER 레지스트리는 "Input Method" 이름의 키(Key)를 갖습니다. 아래 표는 여러분이 개발할 Input Method에 대해 키가 가져야 할 내용을 설명합니다. IME의 캐럿과 관련된 작동은 이 값들을 참조하여 수행되는데 생략할 경우 시스템에서 기본으로 정의된 값을 기준으로 수행됩니다.
키(Key) | 내용 |
Input Method | 4개의 값을 포함합니다: Perpendicular Distance, Parallel Distance, Perpendicular Tolerance, Parallel Tolerance.
|
IME는 사용자 개별 설정을 아래 위치에 둘 수 있습니다.
HKEY_CURRENT_USER\Software\(회사명)\Windows\CurrentVersion\(IME명)
IME는 컴퓨터 수준의 설정을 아래 위치에 둘 수 있습니다.
HKEY_LOCAL_MAACHINE\Software\(회사명)\Windows\CurrentVersion\(IME명).