如何程序控制选择打印机纸盒? - C++ Builder / Windows SDK/API
要控制激光打印机,纸盒有两个,三个或者更多。如何用程序控制选择用哪个纸盒的纸???打印机驱动已经装好了,UE、word等工具软件都可以打印设置中选择纸匣。
十万火急,谢谢!
[解决办法]
char Device[CCHDEVICENAME];
char Driver[MAX_PATH];
char Port[32];
PDevMode pDev;
THandle hDev;
TPrinter *Prntr = Printer();
HANDLE hPrinter;
Prntr->GetPrinter(Device,Driver,Port,hDev);
if(hDev!=0)
{
pDev =(PDevMode)GlobalLock((void*)hDev);
if(pDev!=NULL)
{
pDev->dmDefaultSource = 你的纸盒号;
}
ResetDC(Prntr->Handle,pDev);
GlobalUnlock((void*)hDev);
}
Prntr->BeginDoc();
Prntr->Title="打印测试";//有的打印机如果没有标题是无法打印数据的,所以标题一定要有
Prntr->Canvas->Font->Size = 20;
Prntr->Canvas->TextOutA(100,100,"打印测试代码");
Prntr->EndDoc();
绝对可行,刚刚网上找的,实际测试用过了。困扰了我三天
[解决办法]