pekfos Temat założony przez niniejszego użytkownika |
Drukowanie przez WinAPI » 2010-12-19 12:10:17 co jest nie tak z tym kodem? kompiluje się ale przy uruchamianiu wyrzuca błąd przy StartDoc (i oczywiście przy wszystkich innych :P). #include <windows.h>
int main() { PRINTER_INFO_5 * pinfo; DWORD dwsize, dwcount; EnumPrinters( PRINTER_ENUM_DEFAULT, NULL, 5, NULL, 0, & dwsize, & dwcount ); pinfo =( PRINTER_INFO_5 * ) malloc( dwsize ); EnumPrinters( PRINTER_ENUM_DEFAULT, NULL, 5,( PBYTE ) pinfo, dwsize, & dwsize, & dwcount ); HDC hdc = CreateDC( NULL, NULL, pinfo->pPrinterName, NULL ); DOCINFO di; di.cbSize = sizeof( DOCINFO ); di.lpszDocName = "testdoc"; di.lpszOutput = NULL; di.lpszDatatype = NULL; di.fwType = 0; if( StartDoc( hdc, & di ) <= 0 ) MessageBox( NULL, "nie mozna rozpoczac dokumentu", "wtf?", MB_ICONERROR ); if( StartPage( hdc ) <= 0 ) MessageBox( NULL, "nie mozna rozpoczac strony", "wtf?", MB_ICONERROR ); LPCSTR buf = "wtf?! wydrukowalo.."; TextOut( hdc, 10, 10, buf, strlen( buf ) ); if( EndPage( hdc ) <= 0 ) MessageBox( NULL, "nie mozna zakonczyc strony", "wtf?", MB_ICONERROR ); if( EndDoc( hdc ) <= 0 ) MessageBox( NULL, "nie mozna zakonczyc dokumentu", "wtf?", MB_ICONERROR ); DeleteDC( hdc ); free( pinfo ); return 0; } z góry dzięki za pomoc. pewnie to wina jakiegoś głupiego błędu |
|
malan |
» 2010-12-19 13:58:54 Sprawdzałeś, czy GetLastError coś krzyczy? |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2010-12-19 15:01:16 wartość GetLastError to 0 |
|
malan |
» 2010-12-19 21:21:30 A EnumPrinters zwraca true? |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2010-12-20 15:13:30 obydwa wywołania zwracają TRUE |
|
DejaVu |
» 2010-12-20 18:56:09 hdc!=NULL? |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2010-12-20 19:26:34 trafiony. zwraca NULL. jaka może być przyczyna?
chyba nazwa drukarki powinna być jako druga, zaraz sprawdzę.. |
|
malan |
» 2010-12-20 19:29:56 CreateDCReturn Values
The handle to a device context for the specified device indicates success. NULL indicates failure. To get extended error information, call GetLastError.
|
|
|
« 1 » 2 |