根据previous question的建议我试图使用GetDefaultPrinter()然后再使用CreateDC(),但VC6一直在说
error C2065: 'GetDefaultPrinter' : undeclared identifier
我试过谷歌,但许多人面临同样的问题,但没有一个是富有成效的。这是使用GetDefaultPrinter()的正确方法。
包括Winspool.h和Windows.h。
答案 0 :(得分:1)
你可能有一个非常旧的SDK。检查winspool.h文件中是否定义了GetDefaultPrinter
。如果没有,这里有定义:
BOOL
WINAPI
GetDefaultPrinterA (
LPSTR pszBuffer,
LPDWORD pcchBuffer
);
BOOL
WINAPI
GetDefaultPrinterW (
LPWSTR pszBuffer,
LPDWORD pcchBuffer
);
#ifdef UNICODE
#define GetDefaultPrinter GetDefaultPrinterW
#else
#define GetDefaultPrinter GetDefaultPrinterA
#endif // !UNICODE
BOOL
WINAPI
SetDefaultPrinterA (
LPCSTR pszPrinter
);
BOOL
WINAPI
SetDefaultPrinterW (
LPCWSTR pszPrinter
);
#ifdef UNICODE
#define SetDefaultPrinter SetDefaultPrinterW
#else
#define SetDefaultPrinter SetDefaultPrinterA
#endif // !UNICODE