Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Ich habs mir mal angeschaut und ich beschreibs lieber nur: Man muß einen Display-Context herstellen diesen mit Items füllen diese mit Text füllen die man aus der Datei rauszieht. Dann einen Drucker-Kontext herstellen. Ein CPrindialog-Objekt erstellen. Dieses mit dem Druckerkontext initialisieren. Den Display-Context in den Print()-Aufruf des Druckerkontexts übergeben und dann sollte theoretisch ein Druckauftrag erzeugt werden - puh!

Da ist man vielleicht doch besser bedient den Text im Dos-Fenster mit dem print-Befehl auszudrucken - nur wegen einer Text-Datei lohnt sich der Aufwand wohl kaum.

Geschrieben

Ok, ich habe mir doch die Mühe gemacht, weils doch etwas elementares ist:

PRINTDLG pd;

// alle Variablen mit 0 initialisieren

// dann gibt´s keinen Ärger

ZeroMemory(&pd, sizeof(PRINTDLG));

pd.lStructSize = sizeof(PRINTDLG);

pd.hwndOwner = hWnd;

pd.hDevMode = NULL;

pd.hDevNames = NULL;

pd.Flags = PD_USEDEVMODECOPIESANDCOLLATE | PD_RETURNDC;

// Anzahl Seiten

pd.nCopies = 1;

pd.nFromPage = 0xFFFF;

pd.nToPage = 0xFFFF;

pd.nMinPage = 1;

pd.nMaxPage = 0xFFFF;

DOCINFO di;

di.cbSize = sizeof(DOCINFO);

di.lpszDocName = "Drucktest";

di.lpszOutput = (LPTSTR) NULL;

di.fwType = 0;

// Ab hier wird der Druckauftrag gestartet

StartDoc(pd.hDC, &di);

StartPage(pd.hDC);

// das hier wird als Text ins Fenster kopiert

// Natürlich sollte der Pen und Zeichensatz/-größe/-farbe vorher eingestellt werden

TextOut(pd.hDC, 10, 10, "TestDruck", strlen("Drucker"));

// Jetzt könnte man noch DIBs (Bilder) oder sonstwas reinkopieren, wird alles gedruckt

// Alles wird als fertig abgeschlossen

EndPage(pd.hDC);

//Bei mehreren Seiten muß StartPage()/EndPage() mehrfach aufgerufen werden

EndDoc(pd.hDC);

DeleteDC(pd.hDC);

Geschrieben

Hi Leute,

das mit dem DOS - Befehl klappt nicht so recht. Ich bekomme zwar die Meldung :"... Datei wird gedruckt ...", aber es passiert gaaaar nichts. Der Pfad wird korrekt angegeben, aber .....

Also nächster Versuch meinerseits. Die ausführliche Variante habe ich noch nicht ausprobiert, ich muss erst noch eine Menge nachlesen.

Ciao, Jester

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...