Newsgroup: it.comp.lang.visual-basic
Titolo: INTERCETTARE STAMPA

Salve a tutti,
premetto che è da una vita che non uso VB.
Ecco il mio problema: l'Ente col quale collaboro offre all'utenza un 
servizio gratuito di stampa. L'utente ha la possibilità di stampare file di 
vario genere (Word, Excel, Autocad, immagini ecc.). Per contenere i costi si 
è deciso di limitare il numero di stampe per singolo utente: al massimo 15 
fogli al giorno. Attualmente ci si affida al buon senso e all'onestà degli 
utenti ma spesso capita che un utente lanci una stampa di parecchie pagine 
fregandosene degli altri.
La configurazione è la seguente: 5 PC collegati in rete con una stampante 
laser HP.
Vorrei realizzare, in VB6 sotto Win2K, un programma che, girando in 
background, intercetti l'evento STAMPA qualunque sia il programma usato 
dall'utente. Questo programma  visualizza una finestrella di login entro cui 
l'utente digita i propri dati di accesso e, sulla base dell'interrogazione 
di un opportuno database, la stampa effettiva viene lanciata oppure no.
Ecco un esempio chiarificatore: Tizio, registrato nel database, vuole 
stampare un file di Word di 11 pagine. Il programma in VB6 intercetta 
l'evento e chiede a Tizio di autenticarsi. Questi digita i suoi dati e la 
stampa parte. Dunque a Tizio restano (15-11) 4 pagine da poter stampare 
nella medesima giornata. Dopo di ciò Tizio vuol stampare un file Excel di 7 
pagine. Si autentica in modo opportuno ed il programma in VB6, verificato il 
fatto che abbia solo 4 pagine di 'credito', gli chiede se vuole procedere 
solo con le prime 4 pagine oppure annullare.
Ora, premesso che la questione del DB non è un problema, mi domando e dico: 
è possibile realizzare una cosa del genere in VB6 oppure no? E' possibile 
intercettare questo evento STAMPA?
Io credo di sì ma onestamente non saprei da dove iniziare.
Grazie a tutti per ogni aiuto possibile.
LorSchi 

 parecchie pagine fregandosene degli altri.
Dubito fortemente che una cosa del genere sia fattibile in VB6: la stampa è 
gestita o dal programma che lancia la stampa o dal sistema.
Personalmente ritengo questa soluzione di "risparmio" una vera cretinata 
oltre che essere stressante e controproducente per l'azienda stessa.
Cioè se uno ha un documento da 16 pagine o lo stampa in due giorni o non lo 
stampa??? Ma stiamo scherzando o cosa?
Certo, se stampasse su lamine d'oro potrei considerare la cosa un tentativo 
di occulatezza, ma forse il dirigente risparmierebbe di più rinunciando alle 
sigarette o al caffè del giorno.
Ciao

 sigarette o al caffè del giorno.
Magari dato che si riferisce all'utenza, potrebbe essere una scuola o
qualcosa di simile con centinaia di utenti :)
In ogni caso anche io dubito sia fattibile.
Forse uno potrebbe installare (progettare) una sola stampante virtuale e
gli utenti stampano lì e basta, e da lì fare i controlli. Ma non ho
idea....
Forse è più facile realizzare qualcosa con una scheda a consumo di copie.
Magari esistono integrate per le stampanti stesse, per le fotocopiatrici
funzionano.
Oppure semplicemente fa pagare la carta da usare, in modo che uno si stampa
quante copie vuole.
-- 
DBMS Firebird
VB6 + Ado

Secondo me devi prendere in considerazione l'uso di un print server con 
controllo di stampa e login degli utenti.
In azienda ho implementato un print server netgear PS110 (costa 150 
euro) che consente le stampe solo ad un certo range di IP.
Credo che con qualche euro i più ti porti un print server con la 
possibilità di configurare non solo gli IP, ma anche utenti e quantità 
massime di stampa (variabili a seconda dell'utente, e modificabili 
temporaneamente per eventi eccezionali).
Cercando su google ho trovato qualcosa di Canon, Ricoh,
http://www.brochures.canon-europe.com/pdfs/uniFLOW_Output_Manager-p8114-c3908-IT_IT-1133276175.pdf
http://www.ricoh.it/Binary/s_pcsm_tcm94-10459.pdf
Non ho idea dei costi di queste soluzioni, ma potresti provare anche a 
sentire netgear e d-link per sapere se hanno qualcosa di non molto 
costoso  che fa al caso tuo.
Nicola

Grazie ragazzi. Vi farň sapere. Buona serata a  tutti 

 ha scritto nel messaggio 
news:f59646$ke1$1...@news.unina.it...


 una risma di carta senza rompere l'anima ad alcuno.
Credo che nella stampa laser il foglio non sia il costo principale, anzi.
Toner, corrente, manutenzione, ricambistica e disponibilità della stampante
agli altri utenti hanno un valore ben superiore.
P.S.: il quoting non è un'opinione :-(.
Bye, G. 


Ciao
In questi giorni mi son fatto un programmino che determina , in fase di
stampa, l'utente che sta stampando, quante stampe ha fatto e quante ne ha da
fare ancora ( la famosa coda di stampa ).
Potresti utilizzare queste informazioni per avvisare il client che ha
sforato ma non puoi impedirgli di stampare.
Se ti interessa dai un occhio al link:
http://support.microsoft.com/?kbid=202480
Ciao
Rosario
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/