16 TRACE(
"AdvancedSetupDialog(%p, %d, %p, %p)\n",
hWnd,
Unknown, pDevModeOutput, pDevModeInput);
29 TRACE(
"AdvancedDocumentPropertiesA(%p, %p, %s, %p, %p)\n",
hWnd, hPrinter, pDeviceName, pDevModeOutput, pDevModeInput);
37 TRACE(
"AdvancedDocumentPropertiesW(%p, %p, %S, %p, %p)\n",
hWnd, hPrinter, pDeviceName, pDevModeOutput, pDevModeInput);
49 TRACE(
"DeletePrinterDataA(%p, %s)\n", hPrinter, pValueName);
74 TRACE(
"DeletePrinterDataExA(%p, %s, %s)\n", hPrinter, pKeyName, pValueName);
101 TRACE(
"DeletePrinterDataExW(%p, %S, %S)\n", hPrinter, pKeyName, pValueName);
109 TRACE(
"DeletePrinterDataW(%p, %S)\n", hPrinter, pValueName);
121 TRACE(
"DeletePrinterKeyA(%p, %s)\n", hPrinter, pKeyName);
140 TRACE(
"DeletePrinterKeyW(%p, %S)\n", hPrinter, pKeyName);
148 TRACE(
"EnumPrinterDataA(%p, %lu, %s, %lu, %p, %p, %p, %lu, %p)\n", hPrinter, dwIndex, pValueName, cbValueName, pcbValueName, pType,
pData, cbData,
pcbData);
162 TRACE(
"EnumPrinterDataExA(%p, %s, %p, %lu, %p, %p)\n", hPrinter, pKeyName, pEnumValues, cbEnumValues, pcbEnumValues, pnEnumValues);
164 if (pKeyName ==
NULL || *pKeyName == 0)
171 ERR (
"MultiByteToWideChar failed with code %i\n",
ret);
178 ERR (
"GetProcessHeap failed\n");
183 if (pKeyNameW ==
NULL)
185 ERR (
"Failed to allocate %i bytes from process heap\n",
193 ERR (
"MultiByteToWideChar failed with code %i\n",
ret);
194 if (
HeapFree (hHeap, 0, pKeyNameW) == 0)
199 ret =
EnumPrinterDataExW (hPrinter, pKeyNameW, pEnumValues, cbEnumValues, pcbEnumValues, pnEnumValues);
203 if (
HeapFree (hHeap, 0, pKeyNameW) == 0)
205 TRACE (
"EnumPrinterDataExW returned %i\n",
ret);
209 if (
HeapFree (hHeap, 0, pKeyNameW) == 0)
212 ERR (
"HeapFree failed with code %i\n",
ret);
216 if (*pnEnumValues == 0)
220 for (dwIndex = 0; dwIndex < *pnEnumValues; ++dwIndex)
224 if (dwBufSize < ppev->cbValueName)
227 if ( dwBufSize < ppev->cbData &&
232 FIXME (
"Largest Unicode name or value is %i bytes\n", dwBufSize);
237 ERR (
"Failed to allocate %i bytes from process heap\n", dwBufSize);
241 for (dwIndex = 0; dwIndex < *pnEnumValues; ++dwIndex)
252 ERR (
"WideCharToMultiByte failed with code %i\n",
ret);
260 TRACE (
"Converted '%s' from Unicode to ASCII\n",
pBuffer);
271 ERR (
"WideCharToMultiByte failed with code %i\n",
ret);
279 TRACE (
"Converted '%s' from Unicode to ASCII\n",
pBuffer);
280 TRACE (
" (only first string of REG_MULTI_SZ printed)\n");
286 ERR (
"HeapFree failed with code %i\n",
ret);
296 TRACE(
"EnumPrinterDataExW(%p, %S, %p, %lu, %p, %p)\n", hPrinter, pKeyName, pEnumValues, cbEnumValues, pcbEnumValues, pnEnumValues);
304 TRACE(
"EnumPrinterDataW(%p, %lu, %S, %lu, %p, %p, %p, %lu, %p)\n", hPrinter, dwIndex, pValueName, cbValueName, pcbValueName, pType,
pData, cbData,
pcbData);
312 TRACE(
"EnumPrinterKeyA(%p, %s, %s, %lu, %p)\n", hPrinter, pKeyName, pSubkey, cbSubkey, pcbSubkey);
320 TRACE(
"EnumPrinterKeyW(%p, %S, %S, %lu, %p)\n", hPrinter, pKeyName, pSubkey, cbSubkey, pcbSubkey);
328 TRACE(
"GetPrinterDataA(%p, %s, %p, %p, %lu, %p)\n", hPrinter, pValueName, pType,
pData,
nSize,
pcbNeeded);
345 TRACE(
"GetPrinterDataExA(%p, %s, %s, %p, %p, %lu, %p)\n", hPrinter, pKeyName, pValueName, pType,
pData,
nSize,
pcbNeeded);
356 ERR(
"HeapAlloc failed!\n");
372 ERR(
"HeapAlloc failed!\n");
431 ERR(
"HeapAlloc failed!\n");
492 return dwReturnValue;
498 const WCHAR wszEmptyString[] =
L"";
505 TRACE(
"GetPrinterDataExW(%p, %S, %S, %p, %p, %lu, %p)\n", hPrinter, pKeyName, pValueName, pType,
pData,
nSize,
pcbNeeded);
514 pKeyName = wszEmptyString;
539 TRACE(
"GetPrinterDataW(%p, %S, %p, %p, %lu, %p)\n", hPrinter, pValueName, pType,
pData,
nSize,
pcbNeeded);
546 TRACE(
"SetPrinterDataA(%p, %s, %lu, %p, %lu)\n", hPrinter, pValueName,
Type,
pData, cbData);
559 TRACE(
"SetPrinterDataExA(%p, %s, %s, %lu, %p, %lu)\n", hPrinter, pKeyName, pValueName,
Type,
pData, cbData);
570 ERR(
"HeapAlloc failed!\n");
586 ERR(
"HeapAlloc failed!\n");
600 ERR(
"HeapAlloc failed!\n");
607 cbData *=
sizeof(
WCHAR);
622 return dwReturnValue;
628 const WCHAR wszEmptyString[] =
L"";
633 TRACE(
"SetPrinterDataExW(%p, %S, %S, %lu, %p, %lu)\n", hPrinter, pKeyName, pValueName,
Type,
pData, cbData);
640 pKeyName = wszEmptyString;
659 TRACE(
"SetPrinterDataW(%p, %S, %lu, %p, %lu)\n", hPrinter, pValueName,
Type,
pData, cbData);
ACPI_SIZE strlen(const char *String)
DWORD WINAPI DeletePrinterDataW(HANDLE hPrinter, PWSTR pValueName)
DWORD WINAPI EnumPrinterDataExW(HANDLE hPrinter, PCWSTR pKeyName, PBYTE pEnumValues, DWORD cbEnumValues, PDWORD pcbEnumValues, PDWORD pnEnumValues)
DWORD WINAPI DeletePrinterDataExW(HANDLE hPrinter, PCWSTR pKeyName, PCWSTR pValueName)
DWORD WINAPI SetPrinterDataW(HANDLE hPrinter, PWSTR pValueName, DWORD Type, PBYTE pData, DWORD cbData)
DWORD WINAPI DeletePrinterKeyW(HANDLE hPrinter, PCWSTR pKeyName)
DWORD WINAPI SetPrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName, LPCWSTR pValueName, DWORD Type, LPBYTE pData, DWORD cbData)
DWORD WINAPI GetPrinterDataW(HANDLE hPrinter, LPWSTR pValueName, LPDWORD pType, LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded)
DWORD WINAPI EnumPrinterKeyW(HANDLE hPrinter, PCWSTR pKeyName, PWSTR pSubkey, DWORD cbSubkey, PDWORD pcbSubkey)
DWORD WINAPI EnumPrinterDataW(HANDLE hPrinter, DWORD dwIndex, PWSTR pValueName, DWORD cbValueName, PDWORD pcbValueName, PDWORD pType, PBYTE pData, DWORD cbData, PDWORD pcbData)
DWORD WINAPI GetPrinterDataExW(HANDLE hPrinter, LPCWSTR pKeyName, LPCWSTR pValueName, LPDWORD pType, LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded)
DWORD _RpcSetPrinterDataEx(WINSPOOL_PRINTER_HANDLE hPrinter, const WCHAR *pKeyName, const WCHAR *pValueName, DWORD Type, BYTE *pData, DWORD cbData)
DWORD _RpcGetPrinterDataEx(WINSPOOL_PRINTER_HANDLE hPrinter, const WCHAR *pKeyName, const WCHAR *pValueName, DWORD *pType, BYTE *pData, DWORD nSize, DWORD *pcbNeeded)
LONG WINAPI AdvancedSetupDialog(HWND hWnd, INT Unknown, PDEVMODEA pDevModeInput, PDEVMODEA pDevModeOutput)
LONG WINAPI AdvancedDocumentPropertiesA(HWND hWnd, HANDLE hPrinter, PSTR pDeviceName, PDEVMODEA pDevModeOutput, PDEVMODEA pDevModeInput)
DWORD WINAPI GetPrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName, LPCSTR pValueName, LPDWORD pType, LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded)
DWORD WINAPI EnumPrinterDataA(HANDLE hPrinter, DWORD dwIndex, PSTR pValueName, DWORD cbValueName, PDWORD pcbValueName, PDWORD pType, PBYTE pData, DWORD cbData, PDWORD pcbData)
DWORD WINAPI SetPrinterDataExA(HANDLE hPrinter, LPCSTR pKeyName, LPCSTR pValueName, DWORD Type, LPBYTE pData, DWORD cbData)
DWORD WINAPI DeletePrinterKeyA(HANDLE hPrinter, PCSTR pKeyName)
DWORD WINAPI DeletePrinterDataExA(HANDLE hPrinter, PCSTR pKeyName, PCSTR pValueName)
DWORD WINAPI GetPrinterDataA(HANDLE hPrinter, LPSTR pValueName, LPDWORD pType, LPBYTE pData, DWORD nSize, LPDWORD pcbNeeded)
DWORD WINAPI EnumPrinterDataExA(HANDLE hPrinter, PCSTR pKeyName, PBYTE pEnumValues, DWORD cbEnumValues, PDWORD pcbEnumValues, PDWORD pnEnumValues)
DWORD WINAPI EnumPrinterKeyA(HANDLE hPrinter, PCSTR pKeyName, PSTR pSubkey, DWORD cbSubkey, PDWORD pcbSubkey)
LONG WINAPI AdvancedDocumentPropertiesW(HWND hWnd, HANDLE hPrinter, PWSTR pDeviceName, PDEVMODEW pDevModeOutput, PDEVMODEW pDevModeInput)
DWORD WINAPI DeletePrinterDataA(HANDLE hPrinter, PSTR pValueName)
DWORD WINAPI SetPrinterDataA(HANDLE hPrinter, PSTR pValueName, DWORD Type, PBYTE pData, DWORD cbData)
#define ERROR_NOT_ENOUGH_MEMORY
#define ERROR_INVALID_PARAMETER
#define ERROR_NOT_SUPPORTED
#define HeapFree(x, y, z)
#define ERROR_INVALID_HANDLE
#define WideCharToMultiByte
#define MultiByteToWideChar
static const WCHAR Cleanup[]
#define EXCEPTION_EXECUTE_HANDLER
#define memcpy(s1, s2, n)
static DWORD DWORD void LPSTR DWORD cch
_Check_return_ _CRTIMP int __cdecl _wcsicmp(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)
#define RpcExceptionCode()
ULONG dwOSVersionInfoSize
BYTE dmDeviceName[CCHDEVICENAME]
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
_In_z_ PCWSTR pwszValueName
struct _SPOOLER_HANDLE * PSPOOLER_HANDLE
DWORD WINAPI GetLastError(void)
*nSize LPSTR _Inout_ LPDWORD nSize
_In_ DWORD _Out_writes_bytes_to_opt_ pcbData void _Inout_ DWORD * pcbData
_In_ DWORD _Out_ PDWORD pcbNeeded
WINBOOL WINAPI OpenPrinterA(LPSTR pPrinterName, LPHANDLE phPrinter, LPPRINTER_DEFAULTSA pDefault)
#define SPLREG_OS_VERSIONEX
struct _PRINTER_ENUM_VALUESW * PPRINTER_ENUM_VALUESW
#define SPLREG_OS_VERSION
WINBOOL WINAPI ClosePrinter(HANDLE hPrinter)
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList
struct _OSVERSIONINFOA OSVERSIONINFOA
struct _OSVERSIONINFOEXW * POSVERSIONINFOEXW
struct _OSVERSIONINFOEXA OSVERSIONINFOEXA
struct _OSVERSIONINFOEXA * POSVERSIONINFOEXA