Поделиться через


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

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

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

Синтаксис

void  throw(CHeap_Exception) Format(
  LPCWSTR lpszFormat,
  ...     
);

Параметры

lpszFormat

Строка управления форматом.

...

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

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

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