-
Windows Mobile에서 키패드 변경공장 이야기 2010. 4. 19. 14:29
_GetKeyPadState() - 현재 상태 구하는 넘
_KeyPadChange(int nType) - 키패드 변경 하는 넘...
그냥 바로 코드 나갑니다.
int _GetKeyPadState()
{
CLSID clsidCurrent = { 0, };
CLSID clsidDefault = { 0x8d018493, 0x3945, 0x4c6a, { 0xa3, 0xb1, 0xba, 0xba, 0xee, 0xc5, 0x68, 0xd6 } }; // MS 디폴트
CLSID clsidMoaKey = { 0x4ddfd05a, 0xae44, 0x41aa, { 0x95, 0xe9, 0x78, 0xb9, 0x84, 0x7b, 0x60, 0x37 } }; // 모아키
CLSID clsidCJI = { 0x427bcef5, 0x245b, 0x4f72, { 0x91, 0x43, 0x77, 0x3a, 0x27, 0xda, 0x35, 0x8f } }; // 천지인
CLSID clsidDioPen = { 0x92429690, 0xbe04, 0x21d0, { 0xa4, 0xf8, 0x00, 0xaa, 0x00, 0xa7, 0x49, 0xb9 } }; // 디오펜if(FALSE == ::SipGetCurrentIM(&clsidCurrent))
return -1;if(IsEqualCLSID(clsidCurrent, clsidDefault))
return 0;
if(IsEqualCLSID(clsidCurrent, clsidMoaKey))
return 1;
if(IsEqualCLSID(clsidCurrent, clsidCJI))
return 2;
if(IsEqualCLSID(clsidCurrent, clsidDioPen))
return 3;return -1;
}BOOL _KeyPadChange(int nType)
{
BOOL bResult = FALSE;CLSID clsidDefault = { 0x8d018493, 0x3945, 0x4c6a, { 0xa3, 0xb1, 0xba, 0xba, 0xee, 0xc5, 0x68, 0xd6 } }; // MS 디폴트
CLSID clsidMoaKey = { 0x4ddfd05a, 0xae44, 0x41aa, { 0x95, 0xe9, 0x78, 0xb9, 0x84, 0x7b, 0x60, 0x37 } }; // 모아키
CLSID clsidCJI = { 0x427bcef5, 0x245b, 0x4f72, { 0x91, 0x43, 0x77, 0x3a, 0x27, 0xda, 0x35, 0x8f } }; // 천지인
CLSID clsidDioPen = { 0x92429690, 0xbe04, 0x21d0, { 0xa4, 0xf8, 0x00, 0xaa, 0x00, 0xa7, 0x49, 0xb9 } }; // 디오펜switch(nType)
{
case 0:
bResult = ::SipSetCurrentIM(&clsidDefault);
break;
case 1:
bResult = ::SipSetCurrentIM(&clsidMoaKey);
break;
case 2:
bResult = ::SipSetCurrentIM(&clsidCJI);
break;
case 3:
bResult = ::SipSetCurrentIM(&clsidDioPen);
break;
}return bResult;
}'공장 이야기' 카테고리의 다른 글
Windows Mobile에서 Mouse Hook... (0) 2010.08.13 Process Kill (0) 2010.04.22 SIP 제어... (0) 2010.01.22 Stack fault 와 Stack overflow (0) 2009.12.15 아 지롤 같은 Data Abort... (0) 2009.11.23