Scratch Geschrieben 23. Oktober 2002 Geschrieben 23. Oktober 2002 Hi, ich möchte meine LPT-Schneittstelle ansprechen, jetzt meine Frage ist das genauso wie mit der Com-Schnittstelle mit CreateFile() oder ist das eigentlich das selbe ?? thx für jede Hilfe ! Zitieren
Crush Geschrieben 23. Oktober 2002 Geschrieben 23. Oktober 2002 Entweder so (CFile ist die einfachste Methode) oder über einen PrinterDeviceContext. Dort kann man den Port und alles weitere direkt angeben und so nicht nur Text, sondern auch Grafik anstatt auf normale DCs einfach zum Drucker durchschicken. HDC hdcPrint; // printer DC handle char szDevString[120]; // array for WIN.INI data char *szPrinter, *szDriver; // printer and driver names char *szPort; // port name // Retrieve the printer, printer driver, and // output-port names from WIN.INI. GetProfileString("windows", "device", ",,,", szDevString, 120); // Parse the string of names, setting ptrs as required // If the string contains the required names, use them to // create a device context. if ((szPrinter = strtok(szDevString, (const char *) ",")) && (szDriver = strtok ((char *) NULL, (const char *) ", ")) && (szPort = strtok ((char *) NULL, (const char *) ", "))) { hdcPrint = CreateDC(szDriver, szPrinter, szPort, NULL); } // Print a test page that contains the string // "PRINTER TEST" in the upper left corner. Escape(hdcPrint, STARTDOC, 8, "Test-Doc", NULL); TextOut(hdcPrint, 50, 50, "PRINTER TEST", 12); Escape(hdcPrint, NEWFRAME, 0, NULL, NULL); Escape(hdcPrint, ENDDOC, 0, NULL, NULL); // Delete the printer DC. DeleteDC(hdcPrint); Es gibt auch noch die Möglichkeit direkt über Bios-Funktionen das ganze in Assembler aufzurufen, allerdings wird sowas wie bdos() oder int86() glaub unter NT und 2K nicht mehr unterstützt (evtl noch mit Tricks bei Inline-Assembler, aber selbst da wird dann fast alles vom Kernal abgefangen). Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.