Bonjour,
Comment mettre une valeur de retour à une application (et comment la récuperer) ?
Style les applications C qui on un return dans le main.
Merci d'avance.
Bonjour,
Comment mettre une valeur de retour à une application (et comment la récuperer) ?
Style les applications C qui on un return dans le main.
Merci d'avance.
David.
La routine système Halt termine immédiatement le programme en utilisant le code de retour passé en paramètre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 program Project1; uses Forms, Unit1; begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; Halt(CodeDeRetour); end.
sjrd, ancien rédacteur/modérateur Delphi.
Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
Découvrez Mes tutoriels.
Bonjour sjrd,
Il n'y a pas beaucoup d'aide à propos de cette methode.
J'ai bien fait un truc du style:
Mais pas moyen d'avoir accès à la variable ret dans la form.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 var ret: integer; begin Application.Initialize; Application.Title := 'GT_D2R'; Application.CreateForm(TfrmMain, frmMain); Application.Run; Halt(ret); end;
David.
c un pb de portée.
soit tu déclare ret dans la partie interface de l'unité contenant TfrmMain
soit tu créé une unité dédié
unité "Common" =>
et tu l'ajoute dans la clause uses de la partie implementation de ta form
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 unit Common; interface var ret : integer; implementation end.
Ok merci RamDevTeam.
Un dernier point:
Sait-tu comment récupérer cette valeur (dans un batch par exemple) ?
David.
Dans un .bat ou .cmd =>
Attention : Tester les codes dans l'odre décroissant car Errorlevel x renvoi vrai si le code retour est supérieur ou égal à x
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 IF ERRORLEVEL 5 GOTO CAS_5 IF ERRORLEVEL 4 GOTO CAS_4 etc...
Merci RamDevTeam, t'es un chef !
Voici ce que j'ai fait:
en fait, j'ai fait un executable qui permet de retourner un certain port com.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2LecturePortsCom.exe ?1 echo %ERRORLEVEL%
Et je le récupère comme ça (je me sert de la sortie d'erreur pour récuperer mes infos), est ce mal ?
(Je voulais vraiment faire un exe autonome pour pouvoir l'utiliser depuis plusieurs applications différentes)
David.
Pour l'utiliser dans différentes appli, pourquoi tu ne fais pas une DLL ?
tu évite ainsi l'utilisation d'un fichier de commande.
Fichier >> Nouveau >> Autre... >> Expert de DLL
ensuite tu créé une unité :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 {$R *.res} Exports GetPortCom;
C'est une piste ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 unit MaGestionPortCom; interface function GetPortCom(Value : byte) : byte; stdcall; implementation function GetPortCom(Value : byte) : byte; stdcall; begin //ton code result := //Numéro du port ou 0 si aucun end;
Bon dev.
Je me permets de refaire appel à tes services pour savoir si il est également possible (et comment) récuperer des paramètres avec une application Delphi ?
David.
Tu parle de paramètres en ligne de commande ou utiliser les fonctions d'un DLL ( et donc récupérer la valeur de retour)?
Pour la ligne de commande regarde l'aide de paramstr
Pour les DLL regarde le tutoriel :
http://olance.developpez.com/article.../creation-dll/
Heu non, pour un exe win32, une application delphi, quoi.
genre le int argc, char *argv[] de C en quelques sortes.
David.
=> regarde la fonction Paramstr
Bon dev.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager