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

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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...