Shellexecute et opendialog

Résolu
cs_orques Messages postés 13 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 14 octobre 2005 - 14 oct. 2005 à 18:11
cs_orques Messages postés 13 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 14 octobre 2005 - 14 oct. 2005 à 18:59
Bonjour,


Je souhaiterais un petit renseignement:


un bouton"ouvrir" affiche un "opendialog" puis un shellexecute
ouvre word en mode nouvelle page. je voudrais integrer ,dans le code de
shellexecute, une ligne qui me permette d'ouvrir un fichier
word en le choisissant dans l'opendialog.

J'ai cherché dans le forum mais n'ai pas trouvé de réponse à cette question spécifique.


Merci pour votre aide,


A+.

6 réponses

bv94 Messages postés 40 Date d'inscription dimanche 2 février 2003 Statut Membre Dernière intervention 16 décembre 2006 1
14 oct. 2005 à 18:40
exatc, j'avais oublié que shellexecute demande des parametres de type pointeur de chaine de caractères...

shellexecute(0,nil,pchar('winword.exe'),pchar(opendialog1.filename),nil,sw_normal);

Voila qui est mieux...

BV94
3
cs_orques Messages postés 13 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 14 octobre 2005
14 oct. 2005 à 18:13
voici le code attaché au bouton "ouvrir":



procedure TForm1.Button1Click(Sender: TObject);

begin

opendialog1.InitialDir:='C:\program files\microsoft office';

opendialog1.Execute;

opendialog1.Files.LoadFromFile(opendialog1.FileName);

shellexecute(0,nil,'C:\program files\microsoft office\office\winword.exe',nil,nil,sw_show);



end;



C'est à la place du nil qu'il faudrait mettre autre chose mais quoi...
0
bv94 Messages postés 40 Date d'inscription dimanche 2 février 2003 Statut Membre Dernière intervention 16 décembre 2006 1
14 oct. 2005 à 18:29
Salut,

if opendialog1.execute then
shellexecute(0,nil,'winword.exe',opendialog1.filename,nil,sw_normal);

Tout simplement...

BOn courage.

BV94
0
bv94 Messages postés 40 Date d'inscription dimanche 2 février 2003 Statut Membre Dernière intervention 16 décembre 2006 1
14 oct. 2005 à 18:31
Désolé pour la mise en page...
En propre ca donne :

if opendialog1.execute then
shellexecute(0,nil,'winword.exe',opendialog1.filename,nil,sw_normal);

Tout simplement...

BOn courage.

BV94
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_orques Messages postés 13 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 14 octobre 2005
14 oct. 2005 à 18:36
désolé, mais voilà l'erreur que j'ai:



[Erreur] Unit1.pas(50): Types incompatibles : 'TStrings' et 'PAnsiChar'



!!
0
cs_orques Messages postés 13 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 14 octobre 2005
14 oct. 2005 à 18:59
Merci beaucoup!
0
Rejoignez-nous