C6381
Обновлен: Ноябрь 2007
C6381
Предупреждение C6381. API отключения <функция> требует действительных dwReason или lpMessage
Данное предупреждение возникает при вызове функции InitiateSystemShutdownEx, если выполняется одно из следующих условий.
Не передается допустимая причина завершения работы (dwReason). Если параметр dwReason равен нулю, то по умолчанию такое завершение работы считается неопределенным. Кроме того, этот незапланированное завершение работы. Следует использовать для этого параметра один из кодов причины завершения работы системы.
Не передается сообщение о завершении работы (lpMessage).
Рекомендуется использовать при вызове этой функции API соответствующие параметры, чтобы помочь системным администраторам определить причину завершения работы.
Пример
В следующем коде создается данное предупреждение, поскольку значение dwReason равно нулю, а значение lpMessage не передается:
void f()
{
//...
BOOL bRet;
bRet = InitiateSystemShutdownEx( NULL,
NULL, // message
0,
FALSE,
TRUE,
0); // shutdown reason
// ...
}
Для устранения этого предупреждения укажите значения dwReason и lpMessage, как показано в следующем коде:
#include <windows.h>
void f()
{
//...
BOOL bRet;
bRet = InitiateSystemShutdownEx( NULL,
"Hardware Failure", // message
0,
FALSE,
TRUE,
SHTDN_REASON_MAJOR_HARDWARE ); // reason
// ...
}