Stampare su stampante ad aghi da c# su windows 7

giovedì 29 aprile 2010 - 18.09

fabriziob Profilo | Newbie

Salve a tutti!
Ho sviluppato un'applicazione con visual studio 2008 che stampa su una stampante ad aghi come suggerito da questo articolo

http://support.microsoft.com/?scid=kb;en-us;322091&x=12&y=13

e tutto funziona correttamente sotto windows xp, ma quando ho provato a stampare su windows seven l'applicazione non da errore ma sullo spool della stampante il lavoro non va a buon fine.

Qualche idea?

uelfox Profilo | Newbie

Ciao, come hai risolto?
Io sto utilizzando una stampante ad aghi collegata su lpt1, ma continuo a riceve errore in fase di debug in c#.

fabriziob Profilo | Newbie

Installo la stampante come generica solo testo e la condivido.

Fatto questo creo un file di testo con i dati da stampare e lo copio su \\nomecomputer\nomecondivisione

Per il momento non ho trovato controindicazioni, utilizzo questo sistema per stampare anche sulle etichettatrici tipo zebra.

uelfox Profilo | Newbie

Grazie per il tuo interessamento....
Non no tanto capito come devo fare!
Non avresti uno stralcio del codice che utilizzi per creare il file e inviarmelo?

Grazie
uelfox@hotmail.it

fabriziob Profilo | Newbie

Supponendo che il nome del pc sia "pcfabrizio" e il nome della stampante condivisa "etichette"

FileInfo fi = new FileInfo(Path.GetTempFileName()); using (StreamWriter sw = new StreamWriter(fi.FullName)) sw.Write("Testo da stampare"); fi.CopyTo(@"\\pcfabrizio\etichette");

Vinsent Profilo | Senior Member

Visto che sono state "citate" le stampanti Zebra dico la mia ...magari può essere utile...
Per inviare il testo in formato "raw" alla stampante uso l' oggetto PrintDocument e una stringa, senza la necessità di creare un file.
In allegato un progetto di esempio con il "succo" molto ristretto...dove all' avvio ottengo le stampanti installate sul PC (locali o di rete), quindi basta selezionare la stampante dalla Combobox, scrivere il testo nella Textbox e premere "Stampa".
Per fare un pò di pratica stò cercando di portare il tutto su VBA e Access 2000, che non ha l' oggetto "Printer"...per ora sono arrivato a stampare senza creare un file solo su stampante locale e conoscendone a priori la porta, es:
ETICHETTA = FreeFile Open "LPT1" For Output As #ETICHETTA Print #ETICHETTA, "prova di stampa" Print #ETICHETTA, "riga 1" Print #ETICHETTA, "riga 2" Close (ETICHETTA)

ciao...

PS: il progetto è in VB con VS2010.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5