Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
bonjour
j'aimerai savoir Comment ouvrir un fichier(Pdf,doc..........) externe avec pb
merci
[Message de modération]
Merci de poster votre demande dans la bonne rubrique
Dernière modification par juldace (09-09-2008 07:53:02)
Hors ligne
Bonjour,
Un petit dans PB sur les fonctions FileOpen, FileClose, etc...
Hors ligne
Pour ouvrir à l'extérieur de l'appli PB : (il faut que le soft soit installée sur le poste)
Run( 'C:\Program Files\Microsoft Office\OFFICE11\winword.exe c:\Doc1.doc' )
ou alors, pour l'ouvrir dans l'appli PB : place un OLE control Word dans une fenêtre
Hors ligne
Pour cela, je prefére utiliser la fonction ShellExcute de l'API Windows :
// Réalisation d'une opération sur le fichier spécifié FUNCTION ulong ShellExecute(ulong hwnd,ref string lpOperation,ref string lpFile,ref string lpParameters,ref string lpDirectory,ulong nShowCmd) & LIBRARY "shell32.dll" ALIAS FOR "ShellExecuteA;Ansi"
ShellExecute permet de s'affranchir de connaître l'application à utiliser pour ouvrir le fichier. Il utilise l'application paramétré dans le base de registre pour l'extension spécifié pour ouvrir le fichier.
Ex : Si OpenOffice est installé sur le poste à la place de Word, ShellExecute lancera OpenOffice pour ouvrir un fichier avec l'extension .doc
Hors ligne
je n'arive pas toujour a l'ouvrir
Hors ligne
Bonjour j'ai reçu a le faire
merci
Hors ligne
Ce code consiste a créé un fichier pdf et suite de l'ouvrir afin d'avoir un aperçu avant impression
int li_ret madw.Modify("Export.PDF.Method = XSLFOP! ") madw.Modify("Export.PDF.xslfop.print='Yes'") li_ret = madw.SaveAs("c:\printed.pdf", PDF!, true) run( 'C:\Program Files\Adobe\Reader 8.0\Reader\AcroRd32.exe c:\printed.pdf' )
Dernière modification par juldace (09-09-2008 08:55:12)
Hors ligne
Merci à toi Juldace.
Buck +500 pépites
L'avantage de ShellExecute est de toujours fonctionner, quelle que soit la version d'Acrobat.
De plus tu n'as pas besoin de connaitre l'emplacement d'Acrobat reader
PS : pour ceux qui ont PB9 ou une version inférieure, il faut virer ";Ansi"
Dernière modification par shahin (09-09-2008 09:36:02)
Hors ligne