Newsgroup: it.comp.lang.visual-basic
Titolo: Selezionare la stampante

ciao a tutti
Ho un problema con VB5...
Devo salvare in una tabella il nome di diverse stampanti da utilizzare per
eseguire poi delle stampe (ogni stampa deve andare sulla stampante giusta).
Se utilizzo CommonDialog.ShowPrinter per leggere le impostazioni della
stampante selezionata e memorizzarle nella tabella di configurazione mi
viene cambiata la stampante standard, cosa che non mi piace per niente.
Allora ho pensato di fare cosi' , ma non funziona
Dim sStampanteStandard as String
Dim X as Printer
sStampanteStandard = Printer.DeviceName     'Salvo il nome della stampante
standard
cdlPrinter.ShowPrinter
'leggo le impostazioni della stampante selezionata con il CommonDialog e me
le salvo
txtInfo(0) = Printer.DeviceName
txtInfo(1)= Printer.Orientation
...
For each X in Printers
    if X.DeviceName = sStampanteStandard then
        Set Printer = X
        exit for
    endif
next
Il problema e' che quando vado a leggere le impostazioni della stampante non
mi ritrovo le informazioni che ho selezionato nel CommonDialog
Se non eseguo le righe che 'salvano' la stampante standard e che dovrebbero
ripristinarla invece funziona
Un grazie di cuore a chi mi sapra' aiutare a venirne a capo
===========================================
gio...@newsoft.it
===========================================
--
Automatic posted from 
ro...@venere.ipernet.it
 [195.223.56.5]
via Mailgate Server - 
http://www.mailgate.org

eseguire poi delle stampe (ogni stampa deve andare sulla stampante giusta).
Se ti interessa reperire le informazioni sulla stampante ti basta leggere le
proprietą delle stampanti appartanenti all'insieme stampanti. Qualcosa del
genere:
dim X as printer
For each X in Printers
    Info(0)=x.devicename
    info(1)=x.orientation
    ...........................
next
senza avere la necessitą di modificare la stampante predefinita.
Ciao Bruno

viene cambiata la stampante standard, cosa che non mi piace per niente.
Io fartei cosě:
in una form riempi un combo pox con tutti gli elementi dell'insieme
printer. Le stampanti installate nel sistema sono Printers(0),
Printers(1) ecc.
L'utente sceglie la stampante da usare e tu memorizzi il numero
d'ordine.
Quando č ora di stampare esegui
Set Printer = Printers(x)
Dove x č il numero d'ordine della stampante selezionata dall'utente.
Funziona, ma devi avere almeno SP2 installato.
Ciao
--------------------------------------------------------------------
Fulvio Senore
Eliminate "zz" dall'indirizzo e-mail per scrivermi (spammers...)
Remove "zz" from e-mail address to write me (spammers...)
--------------------------------------------------------------------

 
Ciao,
 io ho avuto il tuo stesso problema. Non so se lo puoi fare, ma se 
utilizzi il Crystal Report e lo indirizziin questo modo:
CrystalReport.PrinterName= nome della stampante
CrystalReport.DeviceDriver= nome del driver
CrystalReport.Port= nome della porta
la stampa verra' spedita sulla stampante scelta.
OKKIO che devi specificare TUTTE e tre le proprieta' altrimenti verra' 
stampata sulla stampante di default.
Ciao
                         ''~``
                        ( o o )
+------------------.oooO--(_)--Oooo.------------------+
| Massimo Braggio                                     |   
| 
bm...@romeo.sci.univr.it
                - VERONA -   |        
|                    .oooO               - ITALY  -   |
|                    (   )   Oooo.                    |
+---------------------\ (----(   )--------------------+
                       \_)    ) /
                             (_/
--
Automatic posted from 
romeo.sci.univr.it
 [157.27.243.3]
