Функция LoadString загружает ресурс строки из исполняемого файла связанного с заданным модулем, копирует строку в буфер и добавляет в конец символ завершающего нуля.
int LoadString( HINSTANCE hInstance, UINT uID, LPTSTR lpBuffer, int nBufferMax ); |
[in] Дескриптор экземпляра модуля, исполняемый файл которого содержит в себе ресурс строки. Чтобы получить дескриптор прикладной программы непосредственно, используйте функцию GetModuleHandle (NULL).
uID[in] Указывает целочисленный идентификатор строки, которая будет загружена.
lpBuffer[out] Указатель на буфер, который примет строку.
nBufferMax[in] Определяет размер буфера, в TCHARs. Это относится к байтам для ANSI версий функции или WCHARs для версий Unicode. Строка обрезается и завершается NULL, если она длиннее, чем указанное число символов.
Если функция завершается успешно, то возвращаемое значение - число TCHARs, скопированного в буфер, включая символ завершающего нуля, или нуль, если ресурс строки не существует. Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.
Предупреждение защиты Используя эту функцию неправильно, можно поставить под угрозу обеспечение безопасности Вашего приложения. Неправильное использование включает в себя определение ошибочного размера параметра nBufferMax. Например, если параметр lpBuffer указывает, что буфер szBuffer, который объявлен как TCHAR, szBuffer [100], тогда как sizeof (szBuffer) дает размер буфера в байтах, что может привести к переполнению буфера для функции версии Unicode. Ситуация переполнения буфера - это причина многих проблем для защиты в прикладных программах. В этом случае, использование sizeof (szBuffer)/sizeof (TCHAR) или sizeof (szBuffer)/sizeof (szBuffer [0]) дало бы правильный размер буфера. |
Windows 95/98/Me: LoadStringW поддерживается программой Microsoft Layer for Unicode (MSLU). Чтобы использовать ее, Вы должны добавить некоторые файлы к вашему приложению, как изложено в описании Microsoft Layer for Unicode для системы Windows 95/98/Me.
Пример смотри в статье Создание дочернего окна.
Обзор Строки, Функции, используемые строками, FormatMessage, LoadAccelerators, LoadBitmap, LoadCursor, LoadIcon, LoadMenu, LoadMenuIndirect
Размещение и совместимость LoadString |
||
К | Windows XP | Да |
л | Windows 2000 Professional | Да |
и | Windows NT Workstation | Да версии 3.1 |
е | Windows Me | Да |
н | Windows 98 | Да |
т | Windows 95 | Да |
С | Windows Server 2003 | Да |
е | Windows 2000 Server | Да |
р | Windows NT Server | Да версии 3.1 |
в | ||
е | ||
р | ||
Используемая библиотека | User32.lib | |
Используемая DLL | user32.dll | |
Заголовочный файл | ||
- объявлено в | Winuser.h | |
- включено в | Windows.h | |
Unicode | Реализуются как версии Unicode и ANSI. | |
Замечания по платформе | Не имеется |