我正在尝试访问PRINTER_INFO_2结构的友好名称属性。但我根本不知道如何在 C++ 中做到这一点。
所以下面的代码以十六进制返回名称...
int _tmain(int argc, _TCHAR* argv[])
{
DWORD dwNeeded = 0, dwPrintersR = 0, Level = 2;
PRINTER_INFO_2* prninfo=NULL;
int retValue = 0;
//Find required buffer size
EnumPrinters( PRINTER_ENUM_NAME, NULL, Level, NULL, 0, &dwNeeded, &dwPrintersR );
prninfo = (PRINTER_INFO_2*) GlobalAlloc(GPTR,dwNeeded);
EnumPrinters( PRINTER_ENUM_NAME, NULL, Level, (LPBYTE) prninfo, dwNeeded, &dwNeeded, &dwPrintersR );
cout << "# of printers:" << dwPrintersR << "\n";
for(int i = 0; i<dwPrintersR; i++){
cout << "Printer Name: " << prninfo[i].pPrinterName << "\n";
}
_getch();
return 0;
}
我想使用 PRINTER_ATTRIBUTE_FRIENDLY_NAME,但我不知道该怎么做。
我是 C++ 和编译语言的新手。非常感谢你。