Envoyer un fax par script

LionelD -  
 LionelD -
Bonjour,

Je cherche à envoyer des fax par script, vbs ou vb6.
Je possède une imprimante / scan / photocopieur / fax pour lequel j'ai plusieurs drivers d'imprimante, dont un "Fax".
Ainsi, lorsque j'imprime (dans Word par exemple) et que je sélectionne l'imprimante "Fax", je rentre le numéro de fax et au lieu d'imprimer, ça fax :)
Je souhaiterais attaquer cette imprimante par script, mais je ne sais pas comment faire. Je sais aller jusqu'à l'étape de sélection de l'imprimante, mais je ne vois pas comment ajouter le numéro de fax...

Quelqu'un a-t-il déjà fait un tel programme ?

NB : Je n'ai pas de serveur SMTP, donc je ne souhaite pas utiliser de FaxToMail et vice versa.

Merci pour votre aide,

Lionel
A voir également:

3 réponses

LionelD
 
Bon alors j'ai fini par trouver après pas mal d'heures de recherches et de tentatives de codes plus ou moins fructueuses...
Je partage donc :
J'empile mes docs à faxer dans un répertoire.
J'utilise un fichier .vbs que j'appelle de manière quotidienne à heure fixe qui :

- Définit l'imprimante par défaut comme étant celle du Fax au début du programme puis remet la bonne imprimante par défaut à la fin du programme
CONST IMP_DEF = "TOSHIBA e-STUDIO6530CSeriesPCL6"
CONST IMP_FAX = "TOSHIBA e-STUDIO Series Fax"
...
SetDefaultPrinter IMP_FAX
...
SetDefaultPrinter IMP_DEF

Sub SetDefaultPrinter(p)
Dim oPrinter
Set oPrinter = CreateObject("WScript.Network")
oPrinter.SetDefaultPrinter p
End Sub



- Ouvrer mon fichier et l'imprime avec des "SendKeys" : le principe c'est de faire comme si c'était un humain qui appuyait sur les touches avec des combinaisons de CTRL / TAB / ENTER
Set oShell = CreateObject("WScript.Shell")
oShell.Run CheminFichier
WScript.Sleep 1000
oShell.SendKeys "^(p)" 'simule un CTRL + P pour print
WScript.Sleep 500
oShell.SendKeys "{TAB}"
oShell.SendKeys "{ENTER}"
WScript.Sleep 200
oShell.SendKeys "{TAB}"
oShell.SendKeys "{TAB}"
oShell.SendKeys "{ENTER}"
WScript.Sleep 200
oShell.SendKeys NumeroFax
WScript.Sleep 200
oShell.SendKeys "{ENTER}"
WScript.Sleep 200
oShell.SendKeys "{TAB}"
oShell.SendKeys "{TAB}"
oShell.SendKeys "{TAB}"
oShell.SendKeys "{TAB}"
oShell.SendKeys "{TAB}"
oShell.SendKeys "{TAB}"
oShell.SendKeys "{TAB}"
oShell.SendKeys "{ENTER}"
WScript.Sleep 200
oShell.SendKeys "{ENTER}"



- Tue Acrobat à la fin du script
KillAcrobat

Sub KillAcrobat()
Set oService = getObject("winmgmts:")
For Each p in oService.InstancesOf("Win32_process")
If Instr(lcase(p.Name), "acrord32.exe") > 0 Then
p.Terminate()
Exit Sub
End If
Next
End Sub
2
bluerequin Messages postés 9 Statut Membre 15
 
Slt,

Sub CheckError(strDetails)
   Dim strErr
   If Err.Number <> 0 then
     strErr = strDetails & " : Exception " & Err.Description & " err.Number=0x" & Hex(Err.Number)
     WScript.Echo strErr
     WScript.Quit(Err.Number)
   End If
End Sub 


Cdt
0
LionelD
 
Merci d'avoir pris le temps de lire intégralement mon message :)

Donc... je n'ai pas d'erreur, je ne sais juste pas comment coder ça...

Cordialement (parce que je préfère ça aux abréviations ^^)
0
LionelD
 
Personne n'a eu à faire ce genre de choses ? c'est dingue, ça me semble ultra simple comme ça, et lorsque je cherche sur le web, je ne trouve rien d'autre que des FaxMail ou l'utilisation d'un FaxModem

Personne n'a automatisé l'envoi de fax via du code en appelant un fax de type imprimante ?

Please help :$

Lionel
0