Fehler bei SelectObject()
-
Hallo
meine Druckausgabe funktioniert nicht.
Der kommt mir ständig mit der Fehlermeldung, dass SelectObject nicht ausgeführt wurde
hier der gemaste druckcode
CPrintDialog dlgPrint(FALSE,PD_ALLPAGES,this); //dlgPrint.GetDefaults(); if (dlgPrint.DoModal() == IDOK) { CDC pDC_print; // Den Drucker-DC vom Dialogfeld mit einem // CDC-Objekt verbinden pDC_print.Attach(dlgPrint.GetPrinterDC()); // Eine DOCINFO-Struktur erzeugen und füllen DOCINFO myPrintJob; myPrintJob.cbSize = sizeof(myPrintJob); myPrintJob.lpszDocName = "MeinDruckAuftrag"; myPrintJob.lpszOutput = NULL; myPrintJob.lpszDatatype = NULL; myPrintJob.fwType = NULL; pDC_print.SetMapMode(MM_LOMETRIC); if (pDC_print.StartDoc(&myPrintJob)>=0) { // Eine Seite beginnen pDC_print.StartPage(); CBitmap bmp; if ( bmp.LoadBitmap(IDB_LOGO) == 0 ) MessageBox("Fehler bei Laden",NULL,MB_OK); BITMAP bm; if ( bmp.GetBitmap(&bm) == NULL ) MessageBox("Fehler2",NULL,MB_OK); CDC sdc; if ( sdc.CreateCompatibleDC(&pDC_print) == 0 ) MessageBox("Fehler",NULL,MB_OK); if ( sdc.SelectObject(bmp) == NULL ) MessageBox("Fehler3",NULL,MB_OK); const int nBreite = (int)(bm.bmWidth * 1.5); const int nHoehe = (int)(bm.bmHeight * 1.5); if ( pDC_print.StretchBlt(pDC_print.GetWindowExt().cx - nBreite, 0, nBreite, -nHoehe, &sdc, 0, 0, bm.bmWidth, bm.bmHeight, SRCCOPY) == 0 ) MessageBox("Nicht gedruckt",NULL,MB_OK); // Seite auswerfen pDC_print.EndPage(); // Dokument schließen pDC_print.EndDoc(); } // Druckergerätekontext löschen pDC_print.DeleteDC(); }
Wenn ich
[cpp]
SelectObejct(&)
[/cpp]mache, macht er es aber auch nicht
ich weiß nicht, woran es liegt