mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
152 lines
2.5 KiB
152 lines
2.5 KiB
|
|
/*++
|
|
|
|
Copyright (c) 1990 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
util.c
|
|
|
|
Abstract:
|
|
|
|
Battery Class Installer utility routines
|
|
|
|
Author:
|
|
|
|
Scott Brenden
|
|
|
|
Environment:
|
|
|
|
Notes:
|
|
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
|
|
#include "proj.h"
|
|
|
|
|
|
|
|
|
|
#if defined(DEBUG)
|
|
|
|
|
|
DWORD BattDebugPrintLevel = TF_ERROR | TF_WARNING;
|
|
|
|
|
|
|
|
void
|
|
CPUBLIC
|
|
CommonDebugMsgW(
|
|
DWORD Flag,
|
|
LPCSTR Message,
|
|
...
|
|
)
|
|
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
This is the wide char version of CommonDebugMsgA
|
|
|
|
Arguments:
|
|
|
|
Flag - Debug print level for message
|
|
|
|
Message - Format string for message
|
|
|
|
... - Arguments for the format string
|
|
|
|
Return Value:
|
|
|
|
|
|
|
|
--*/
|
|
{
|
|
WCHAR tmpBuffer[DEBUG_PRINT_BUFFER_LEN]; // Largest path plus extra
|
|
va_list variableArgs;
|
|
|
|
|
|
|
|
if (Flag & BattDebugPrintLevel)
|
|
{
|
|
int wideCharCount;
|
|
int tmpInt;
|
|
WCHAR wideBuffer[MAX_BUF];
|
|
|
|
lstrcpyW (tmpBuffer, L"BATTERY CLASS INSTALLER: ");
|
|
wideCharCount = lstrlenW (tmpBuffer);
|
|
va_start(variableArgs, Message);
|
|
|
|
// (We convert the string, rather than simply input an
|
|
// LPCWSTR parameter, so the caller doesn't have to wrap
|
|
// all the string constants with the TEXT() macro.)
|
|
|
|
tmpInt = MultiByteToWideChar(CP_ACP, 0, Message, lstrlenA (Message), wideBuffer, MAX_BUF);
|
|
if (!tmpInt) {
|
|
lstrcatW (tmpBuffer, L"Debug string too long to print\n");
|
|
|
|
} else {
|
|
wvsprintfW (&tmpBuffer[wideCharCount-sizeof(WCHAR)], wideBuffer, variableArgs);
|
|
}
|
|
|
|
va_end(variableArgs);
|
|
OutputDebugStringW(tmpBuffer);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void
|
|
CPUBLIC
|
|
CommonDebugMsgA(
|
|
DWORD Flag,
|
|
LPCSTR Message,
|
|
...
|
|
)
|
|
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
Debug spew
|
|
|
|
Arguments:
|
|
|
|
Flag - Debug print level for message
|
|
|
|
Message - Format string for message
|
|
|
|
... - Arguments for the format string
|
|
|
|
Return Value:
|
|
|
|
|
|
|
|
--*/
|
|
{
|
|
UCHAR tmpBuffer[DEBUG_PRINT_BUFFER_LEN]; // Largest path plus extra
|
|
va_list variableArgs;
|
|
|
|
|
|
if (Flag & BattDebugPrintLevel)
|
|
{
|
|
int charCount;
|
|
|
|
lstrcpyA (tmpBuffer, "BATTERY CLASS INSTALLER: ");
|
|
charCount = lstrlenA (tmpBuffer);
|
|
va_start(variableArgs, Message);
|
|
|
|
wvsprintfA (&tmpBuffer[charCount-1], Message, variableArgs);
|
|
va_end(variableArgs);
|
|
OutputDebugStringA(tmpBuffer);
|
|
}
|
|
}
|
|
|
|
|
|
#endif // #if defined(DEBUG)
|