Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
prog:lazarus:compilateur:directives:directives [07/04/2023 15:25] thierry [{$H} / {$LONGSTRINGS}] |
prog:lazarus:compilateur:directives:directives [10/04/2023 16:13] (Version actuelle) thierry [{$MODESWITCH}] |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
Toutes les directives -> [[https://www.freepascal.org/docs-html/prog/progse2.html]] | Toutes les directives -> [[https://www.freepascal.org/docs-html/prog/progse2.html]] | ||
===== {$APPTYPE} ===== | ===== {$APPTYPE} ===== | ||
+ | |||
+ | |||
+ | Il est possible de déterminer le type d'application d'une application Windows ou Amiga au moment de l'exécution. La constante IsConsole, déclarée dans les unités système Win32 et Amiga en tant que | ||
+ | <code delphi> | ||
+ | Const | ||
+ | IsConsole : boolean ; | ||
+ | // contient True si l'application est une application console, | ||
+ | // False si l'application est une application GUI. | ||
+ | |||
+ | </code> | ||
+ | |||
La directive {$APPTYPE XXX} accepte un argument qui spécifie le type d'application compilée. Il peut prendre les valeurs suivantes : | La directive {$APPTYPE XXX} accepte un argument qui spécifie le type d'application compilée. Il peut prendre les valeurs suivantes : | ||
+ | |||
==== CONSOLE ==== | ==== CONSOLE ==== | ||
Ligne 11: | Ligne 23: | ||
==== FS ==== | ==== FS ==== | ||
Spécifie une application VIO plein écran sur os/2. Ces applications utilisent une API spéciale de type BIOS pour programmer l'écran. os/2 démarre ces applications toujours en plein écran. | Spécifie une application VIO plein écran sur os/2. Ces applications utilisent une API spéciale de type BIOS pour programmer l'écran. os/2 démarre ces applications toujours en plein écran. | ||
+ | |||
==== GUI ==== | ==== GUI ==== | ||
En spécifiant la directive ''{$APPTYPE GUI}'', l'application sera considérée comme une application graphique ; aucune fenêtre de console ne sera ouverte lors de l'exécution de l'application. Aucun descripteur de fichier standard ne sera initialisé, leur utilisation (avec par exemple des instructions writeln) produira une erreur d'exécution. Si l'application est lancée à partir de la ligne de commande, l'invite de commande sera renvoyée immédiatement après le démarrage de l'application. | En spécifiant la directive ''{$APPTYPE GUI}'', l'application sera considérée comme une application graphique ; aucune fenêtre de console ne sera ouverte lors de l'exécution de l'application. Aucun descripteur de fichier standard ne sera initialisé, leur utilisation (avec par exemple des instructions writeln) produira une erreur d'exécution. Si l'application est lancée à partir de la ligne de commande, l'invite de commande sera renvoyée immédiatement après le démarrage de l'application. | ||
Sous os/2 et Mac OS, le type d'application GUI crée une application GUI, comme sous Windows. Sur os/2, il s'agit d'une véritable application Presentation Manager. | Sous os/2 et Mac OS, le type d'application GUI crée une application GUI, comme sous Windows. Sur os/2, il s'agit d'une véritable application Presentation Manager. | ||
- | OUTIL | ||
- | |||
- | Il s'agit d'une directive spéciale pour Mac OS. Elle indique au compilateur de créer une application outil : Elle initialise les fichiers Input, Output et StdErr, elle peut prendre des paramètres et renvoyer un code de résultat. Elle est implémentée comme un outil MPW qui ne peut être exécuté que par MPW ou ToolServer. | ||
Il convient d'être prudent lors de la compilation d'applications GUI ; les fichiers Input et Output ne sont pas disponibles dans une application GUI, et toute tentative de lecture ou d'écriture dans ces fichiers entraînera une erreur d'exécution. | Il convient d'être prudent lors de la compilation d'applications GUI ; les fichiers Input et Output ne sont pas disponibles dans une application GUI, et toute tentative de lecture ou d'écriture dans ces fichiers entraînera une erreur d'exécution. | ||
- | Il est possible de déterminer le type d'application d'une application Windows ou Amiga au moment de l'exécution. La constante IsConsole, déclarée dans les unités système Win32 et Amiga en tant que | ||
- | Const | ||
- | IsConsole : booléen ; | ||
- | contient True si l'application est une application console, False si l'application est une application GUI. | + | ==== TOOL ==== |
- | Traduit avec www.DeepL.com/Translator (version gratuite) | + | Il s'agit d'une directive spéciale pour Mac OS. Elle indique au compilateur de créer une application outil : Elle initialise les fichiers Input, Output et StdErr, elle peut prendre des paramètres et renvoyer un code de résultat. Elle est implémentée comme un outil MPW qui ne peut être exécuté que par MPW ou ToolServer. |
===== {$H} / {$LONGSTRINGS} ===== | ===== {$H} / {$LONGSTRINGS} ===== | ||
Ligne 137: | Ligne 144: | ||
===== {$MODESWITCH} ===== | ===== {$MODESWITCH} ===== | ||
Voir la page consacrée : [[prog:lazarus:compilateur:directives:modesswitch]] | Voir la page consacrée : [[prog:lazarus:compilateur:directives:modesswitch]] | ||
+ | ====== Sources & Resources ====== | ||
+ | * [[https://www.freepascal.org/docs-html/prog/progch1.html]] | ||
+ | |||