PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Imprimer un document non Windev
Imprimer un document non Windev
Débuté par Alain, 14 sep. 2004 18:22 - 4 réponses
Posté le 14 septembre 2004 - 18:22
Bonjour,
Quelqu'un a-t-il une astuce pour imprimer un document (Word, Excel,Pdf,etc) depuis Windev ?
Mon appli permet d'associer tous types de documents à des enregistrements de fichiers.
J'arrive à 'ouvrir' les documents par LanceAppliAssociée, mais j'aimerais pouvoir les imprimer sans passer par l'appli d'origine, comme quand on fait un clic droit sur un fichier quelconque.
Posté le 14 septembre 2004 - 18:37
En/na Alain ha escrit:
> Bonjour,

Bonjour

Quelqu'un a-t-il une astuce pour imprimer un document (Word, Excel,Pdf,etc) depuis Windev ?
Mon appli permet d'associer tous types de documents à des enregistrements de fichiers.
J'arrive à 'ouvrir' les documents par LanceAppliAssociée, mais j'aimerais pouvoir les imprimer sans passer par l'appli d'origine, comme quand on fait un clic droit sur un fichier quelconque.

ShellExecuteInfo est composee de
cbSize est un entier Long
fMask est un entier Long
hwnd est un entier Long
lpVerb est une chaine
lpFile est une chaine
lpParameters est une chaine
lpDirectory est une chaine
nShow est un entier Long
hInstApp est un entier Long
lpIDList est un entier Long
lpClass est une chaine
hkeyClass est un entier Long
dwHotKey est un entier Long
hIcon est un entier Long
hProcess est un entier Long
fin


ShellExecuteInfo.cbSize = dimension(ShellExecuteInfo)
ShellExecuteInfo.fMask = 0x40
ShellExecuteInfo.hwnd = handle()
ShellExecuteInfo.lpVerb = "print"
ShellExecuteInfo.lpFile = docresultat
ShellExecuteInfo.lpParameters = ""
ShellExecuteInfo.lpDirectory = "C:\tmp"+g_reptmp+"\"
ShellExecuteInfo.nShow = 0
RetVal=AppelDLL32("shell32.dll","ShellExecuteExA" ,
&ShellExecuteInfo )
si RetVal = 0 alors
Erreur("Windows no puede imprimir el resultado de la fusión","Código
Error "+ShellExecuteInfo.hInstApp)
sinon
tantque
appeldll32("kernel32.dll","WaitForSingleObject",ShellExecuteInfo.hProcess,0)
= WAIT_TIMEOUT
multitache(-1)
fin
fin



Michel
Posté le 14 septembre 2004 - 18:39
Bonjour,
Il suffit de rajouter le mot-clé print
LanceAppliAssociée("RepetNomDuDocument", "print")
Cordialement

"Alain" <a-vignes@pau.cci.fr> a écrit dans le message de
news:4146fdef@news.pcsoft.fr...


Bonjour,
Quelqu'un a-t-il une astuce pour imprimer un document (Word,

Excel,Pdf,etc) depuis Windev ?
> Mon appli permet d'associer tous types de documents à des enregistrements
de fichiers.
J'arrive à 'ouvrir' les documents par LanceAppliAssociée, mais j'aimerais

pouvoir les imprimer sans passer par l'appli d'origine, comme quand on fait
un clic droit sur un fichier quelconque.
>
Posté le 15 septembre 2004 - 10:19
Merci,
J'ai essayé, ça marche mais ça ouvre l'application concernée
Je vais essayer la solution de Michel
Posté le 15 septembre 2004 - 10:20
Merci