Специфические проблемы API


Функции файловой системы могут использовать или флажки CP_ACP или CP_OEMCP, которые могут устанавливаться через посредство функций SetFileApisToOEM и SetFileApisToANSI и запрашиваться через функцию AreFileApisANSI. Microsoft Layer for Unicode использует кодовую страницу, которая устанавливается. Однако, поскольку установочные параметры приходятся на один процесс, а Microsoft Layer for Unicode может использоваться в нескольких потоках, то возможны (но вряд ли) проблемы синхронизации между потоками, которые изменяют эти настройки.

Некоторые функции возвращают указатели  на память, которая распределена внутри в операционной системе, а не в памяти, которую распределяет вызывающая программа. Для этих функций, Microsoft Layer for Unicode не передает назад символьную строку операционной системы; вместо этого, модуль использует статические буфера, чтобы поддержать функцию. Эта техника используется ниже перечисленными функциями: GetClassInfo, GetClassInfoEx, GetClassLong, и GetStartupInfo, SetClassLong. А также, для всех этих функций, кроме GetStartUpInfo, последующие вызовы стирают результаты работы предыдущих вызовов.

Microsoft Layer for Unicode не преобразует сообщения, которые отправляются процедуре повторного вызова, заданной при помощи сообщений захвата изображения на экране WM_CAP_SET_CALLBACK_ERROR или WM_CAP_SET_CALLBACK_STATUS.

Назад в оглавление темы
На главную страницу темы

Hosted by uCoz