Метод CHString::Format(UINT,...) (chstring.h)

[Класс CHString является частью платформы поставщика WMI, которая теперь рассматривается в окончательном состоянии, и никакие дальнейшие разработки, улучшения или обновления не будут доступны для проблем, не связанных с безопасностью, влияющих на эти библиотеки. API mi mi следует использовать для всех новых разработок.]

Метод Format форматирует и сохраняет ряд символов и значений в строке CHString .

Синтаксис

void  throw(CHeap_Exception) Format(
  UINT nFormatID,
  ...  
);

Параметры

nFormatID

Строковый идентификатор ресурса, содержащий строку элемента управления форматом.

...

Список аргументов.

Возвращаемое значение

CHeap_Exception

Комментарии

Каждый необязательный аргумент (при наличии) преобразуется и выводится в соответствии с соответствующей спецификацией формата в lpszFormat или из строкового ресурса, определяемого nFormatID.

Примечание Чтобы снизить уязвимость к атакам системы безопасности, всегда используйте строку формата для параметра Формат. Например, format(input) является эксплуатируемым, а Format("%s", input) — нет. Никогда не используйте предоставленную пользователем строку для строки форматирования. Если строка формата хранится для таких целей, как локализация, убедитесь, что она защищена от несанкционированного доступа на запись. Если функция выполняет запись в строку, а не в стандартные выходные данные, может потребоваться избежать использования в строке форматирования символа "%s".

Если строковый объект предлагается в качестве параметра format, вызов завершается ошибкой. Например, следующий код приводит к непредсказуемым результатам.

Примеры

CHString str = L"Some Data";

// Attention: str is also used in the parameter list.
str.Format(L"%s%d", str, 123);

Примечание При передаче символьной строки в качестве необязательного аргумента необходимо явно привести ее как LPCWSTR. Аргумент format имеет ту же форму и функцию, что и аргумент формата для функции printf . Символ NULL добавляется в конец записанных символов.

Требования

Требование Значение
Заголовок chstring.h

См. также раздел

CHString

CHString::GetBuffer