Ecouter le port d'une imprimante - C++ - Programmation
Marsh Posté le 21-12-2004 à 15:42:04
On n'écoute pas un port, mais on demande au pool d'être informé. Regarde voir FindFirstPrinterChangeNotification / FindNextPrinterChangeNotification.
Sous Win9x c.f WM_SPOOLERSTATUS.
Marsh Posté le 21-12-2004 à 17:45:03
Pourrais-tu m'en dire un peu plus la dessus stp.
J'ai fait un tour sur la MSDN mais j'avoue que je n'ai pas tout pigé.
Si tu pouvais mettre quelques lignes sur l'utilisation de cela, ca serait sympa
Merci
Marsh Posté le 22-12-2004 à 11:17:24
Tiré de la MSDN a écrit : HANDLE chgObject; DWORD *pdwChange; BOOL fcnreturn; chgObject = FindFirstPrinterChangeNotification( hPrinter, PRINTER_CHANGE_JOB, 0, NULL); WaitForSingleObject(chgObject, INFINTE); fcnreturn = FindNextPrinterChangeNotification(chgObject, pdwChange, NULL, NULL); if (fcnreturn) { // check value of *pdwChange and deal with the indicated change |
hPrinter c'est le handle de l'imprimante qui t'intéresse (voir OpenPrinter, ou PrintDlg...).
Marsh Posté le 21-12-2004 à 15:33:07
Bonjour,
Je vous explique mon problème.
Je souhaiterais écouter le port d'une imprimante et lorsqu'une impression est détectée vers ce port, il y est une fenêtre de mon application qui s'ouvre.
Le top serait de pouvoir également récupérer le nom du fichier qui a été envoyé vers cette imprimante.
Exemple :
Je suis sous word. Je lance une impression vers une imprimante (Physique ou PDFCreator). Là, un soft qui écoute le port détect cette demande d'impression et ouvre une fenêtre de mon choix
Si vous pouviez m'aider la dessus, je suis bloqué et c'est très très urgent. Merci
P.S : Si vous avez des exemple de code en c++, vb, delphi ou autre, je suis preneur. Je me débrouillerais après. Merci encore