Bonjour,
Je vous explique mon souci.
J'essai de faire une impression d'images en cascade.
Sous Windows XP, je récupérais l'ensemble des images que je mettais dans un dossier temporaire et une fois la boucle finie, j'ouvrais la dernière image dans l'aperçu des télécopie windows.
L'utilisateur n'avait plus qu'a suivre l'assistant et à sélectionner toutes les images du dossier.
Sous Windows 7, l'aperçu des télécopies Windows ne fonctionnait plus de la même façon donc j'ai fais une boucle qui demande l'impression image par image via le code suivant :
if ShellExecute(Handle, 'print', PAnsiChar(chemin), '','', SW_HIDE) <= 32 then ShowMessage(SysErrorMessage(GetLastError));
Ce code ouvre donc l'aperçu des télécopies windows pour chaque image et l'utilisateur doit cliquer sur imprimer.
Mon problème que lorsque le nombre d'image est important.
Il peut y avoir jusqu'à 100-150 images à imprimer et dans ce cas au bout de quelques images l'utilisateur n'ayant pas le temps de cliquer sur chaque bouton imprimer l'application sature.
Est ce qu'il existe un moyen de pouvoir lancer la fonction imprimer directement sans passer par l' assistant ?
Je m'étais dit que peut être en passant par Paint je n'aurais pas le souci mais je n'arrive pas a définir Paint comme étant le programme d'impression par défaut pour mon application et si je met Paint comme étant le programme par défaut pour ouvrir les images alors le shellexecute (...'open'...) ne fonctionne plus sur les fichiers image.
As-t-on un moyen de faire cela ?
Merci pour votre aide
Partager