bonjour,
je voudrais passer un argument en ligne de commande. Par exemple:
et recuperer mon argument dans mon code. C'est la fonction ShellExecute c'est ca?Code:
1
2
3 monfichier arg1
Version imprimable
bonjour,
je voudrais passer un argument en ligne de commande. Par exemple:
et recuperer mon argument dans mon code. C'est la fonction ShellExecute c'est ca?Code:
1
2
3 monfichier arg1
Cela a déjà fait l'objet d'une discussion :
http://www.developpez.net/forums/sho...d.php?t=322712
alors je change ma question: Comment utiliser ShellExecute, et quel interet?
Ce appel le programme nommé par la string ExeName (monfichier) avec les paramètres dans Params (arg1)Code:ShellExecute(0, 'open', PChar(ExeName), PChar(Params), PChar(ExtractFileDir(Application.ExeName)), SW_HIDE);
Ensuite, ExeName correspond à ParamStr(0) ou à Application.ExeName, et arg1 est dans ParamStr(1);
Sinon, à part Shell_execute, tu as CreateProcess voir ICI
On peut l'utiliser par exemple pour lancer depuis une appli-Delphi n'importe quel autre exe présent sur le disque :
... ou encore pour ouvrir un site Internet :Code:
1
2
3
4 procedure TForm1.Button1Click(Sender: TObject); begin ShellExecute(Handle,'open',PChar('c:\autreAppli.exe'),nil,nil,SW_SHOW); end;
... pour plus de détails voir l'Aide intégrée à Delphi.Code:
1
2
3
4
5 procedure TForm1.Label7Click(Sender: TObject); begin shellexecute( 0,'open','http://dev-zone.com/faq/delphi/fqdph_index.php', nil, nil, SW_SHOWMAXIMIZED); end;
P.S : tiens ShaiLeTroll m'a pris de vitesse : bonjour.
ShaiLeTroll, je la place ou dans mon code mon ShellExecute?
Tout dépend ce que tu veux faire
App1 lance App2...
tu es l'auteur de App1, ben pour le ShellExecute, à toi de le mettre ou ta fonctionnalité l'exige, dans un bouton, un timer, à l'ouverture, à la fermeture ...
tu es l'auteur de App2, ben c'est pas ton problème, seul ParamStr/ParamCount te servira ...
ok merci, je vais me reporter a l'autre discussion alors