2017-01-01 8 views
0

POSIXy 환경 (특히 FreeBSD에서 libusb를 사용하고 있지만 상당히 휴대하기를 바랍니다).로켈에서 USB로 매핑 LANGID

libusb_get_string_descriptor을 사용하여 USB 장치에서 일부 문자열을 가져 오려고하지만 어떤 값을 langid에 사용해야하는지 잘 모르겠습니다. 나는 http://www.usb.org/developers/docs/USB_LANGIDs.pdf에서 공식 명부를 알고있다. 그러나 예를 들면의 결과 사이에지도로 나타 내기 쉬운 방법이있다. setlocale(LC_MESSAGES, NULL) 및이 PDF의 LANGID는 무엇입니까?

올바른 방법이 맞습니까? 내가 본 샘플 코드는 모두 언어 선택에 대해 걱정하지 않고 첫 번째 문자열을 가져 오는 것으로 보입니다.

+0

POSIX는 로켈 ID의 형식을 지정하지 않습니다. 그래서 휴대용이 아닙니다. (나는 다양한 로케일 식별자를 사용하는 다양한 시스템을 보았다) –

답변

0

당신이 설명한 것처럼 매핑을 찾을 수 없었습니다. 언어 이름이 OS마다 표준이 아니기 때문에 누구나 만들었습니다.

필자의 경험에 비추어 볼 때 장치는 랭글을 무시하는 경향이 있으며 지정된 인덱스에 대해 항상 동일한 문자열을 반환합니다. 그러나 저는 미국에 있으며 여러 언어를 지원하도록 설계된 장비에 대한 액세스 권한이 없으므로 전 세계적으로 사실이 아닐 수 있습니다.

즉, 문자열 설명자를 지원하는 모든 USB 장치는 문자열 인덱스 0에 적어도 하나의 지원되는 langid를 제공해야하므로 처음에는 (langid 0을 사용하여) 기본값으로 사용할 수 있습니다 .