Newsgroup: it.comp.appl.access
Titolo: Gestire stampante predefinita con A2000 e A2002

Io uso Access 97 e per gestire la stampante predefinita uso con
soddisfazione quanto pubblicato nel Sito Comune nella Sezione General nella
FAQ di Carlo Costarella e Lorenzo Coronati intitolata "Gestire la stampante
predefinita".
Ho ora la necessità (pur non possedendo A2000 e A2002) di fare un database
che possa funzionare sia con A97 che con A2000/2002; in questo database devo
poter impostare da VBA la stampante predefinita e quanto scritto nella FAQ
di cui sopra per versioni di Access successive ad A97 non funziona
(l'impostazione della nuova stampante predefinita ha effetto solo dopo il
rebut del SO).
Quello che io devo fare è:
1) Memorizzare l'attuale stampante predefinita.
2) Impostare come stampante predefinita WinFax.
3) Reimpostare come predefinita la stampante memorizzata al punto 1).
In A2000/2002 il codice VBA necessario a fare quanto scritto al punto 2) è
stato postato in un suo messaggio da Giorgio prx, e dovrebbe essere il
seguente:
    Dim Prt As Printer
    Dim StrName As String
    StrName="WinFax"
    If Application.Printers.Count Then
       For Each Prt In Application.Printers
           If Prt.DeviceName = StrName Then
              Application.Printer = Application.Printers(StrName)  'Se
trovata imposta la stampante predefinita
           End If
       Next
    End If
Ora mi servirebba conoscere il codice VBA per poter realizzare quanto ai
punti 1) e 3).
Ricordo che non posseggo A2000/2002, quindi non conosca tali versioni, non
posso fare prove e/o consultare l'help in linea.
GRAZIE!
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 ha scritto nel messaggio
news:6Dgca.11263$Lr4.3...@twister2.libero.it...

Ciao Roberto
Per leggere la stampante predefinita puoi continuare a utilizzare il metodo
del sito comune
Per impostare la stampante predefinita puoi utilizzare l'oggetto Windows
Script che funziona anche con AccXp.
Sub DefaultPrinter()
   Dim WshNetwork As Object
   Set WshNetwork = CreateObject("WScript.Network")
   WshNetwork.SetDefaultPrinter ("HP LaserJet 4")
   Set WshNetwork = Nothing
End Sub
L'ultimo aggiornamento Di Windows Script comprensivo di Help in linea lo
puoi scaricare da
http://msdn.microsoft.com/library/default.asp
Inserendo come ricerca Windows Script Host
Ciao Giorgio.

 ha scritto nel messaggio
news:b4snak$te7$1...@lacerta.tiscalinet.it...

Con Access 97 su Windows Me funziona (anche senza l'aggiornamento di Windows
Script).
Ora faccio provare anche su A2002 su WXP.
Ancora una volta grazie!


            ...
Hai già l'indicazione al WSH. Solo come informazione:
La collezione Printers non esiste prima che in AX e quindi
non è disponibile in A00.
-- 
cu
Karl
*********
Access-FAQ (tedesco): 
http://www.donkarl.com

 non è disponibile in A00.
Non saprei cosa dirti: è un codice che mi ha postato Giorgio prx che non ho
avuto modo di provare.
Invece il seguente codice (sempre postato da Giorgio prx) :
Sub DefaultPrinter()
   Dim WshNetwork As Object
   Set WshNetwork = CreateObject("WScript.Network")
   WshNetwork.SetDefaultPrinter ("HP LaserJet 4")
   Set WshNetwork = Nothing
End Sub
L'ho provato e su A97 funziona: spero che funzioni anche per A2000 e AXP.


 ha scritto nel messaggio
news:b4t05u$1u936u$1...@ID-46617.news.dfncis.de...

Grazie evidentemente ricordavo male
Ciao Giorgio.

 ha scritto nel messaggio
news:jUnca.12994$Lr4.3...@twister2.libero.it...

Ciao Roberto
La memoria a volte mi inganna.
Su AXP funziona in quanto ho fatto le prove del caso, in A2000 non ho
provato, (sono ormai due anni che la ho aggiornata a AXP) ma se come dice
Karl non ha l'oggetto Printer a maggior ragione dovrebbe funzionare.
Hai mai notato che con il metodo del sito comune la maschera delle stampanti
non veniva aggiornata alla nuova stampante predefinita ?
Con Windows Script viene aggiornata immediatamente segno di una maggior
interazione con il sistema operativo.
L'aggiornamento di Windows Script non è necessario al metodo
SetDefaultPrinter, te lo consigliavo in quanto ha molti altri metodi comodi
e interessanti e tutti documentati nell'help.
Ciao Giorgio.

 Ciao Giorgio.
Grazie ancora.
