IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

FAQ Delphi .NET

FAQ Delphi .NETConsultez toutes les FAQ

Nombre d'auteurs : 15, nombre de questions : 54, dernière mise à jour : 16 juin 2021 

 
OuvrirSommaireLe langage Delphi .NET

Cette définition est tirée de MSDN

.NET (lire dotnet) Framework est le modèle de programmation de la plate-forme .NET. Les principaux composants de .NET Framework sont le Common Language Runtime et la bibliothèque de classes .NET Framework, qui contient ADO.NET, ASP.NET et Windows Forms. .NET Framework fournit un environnement d'exécution managé, un développement et un déploiement simplifiés et l'intégration à une grande variété de langages de programmation.
Consulter MSDN en ligne pour plus d'informations.

Créé le 11 avril 2013  par abelman

Lien : La faq .NET
Lien : Aperçu de la plate-forme .NET

Les systèmes d'exploitations suivant supportent la conception et le déploiement d'applications .NET développées avec Delphi .NET. Les plates-formes Windows 98, Windows 98 Deuxième Édition et Windows ME, Microsoft Windows NT 4.0 ne sont pas prises en charge pour la conception et le développement avec Delphi 2005.

Vous aussi pouvez déployer des applications dans les environnements de plates-formes Windows 98 et Windows ME, Microsoft Windows NT 4.0 (Service Pack 6a requis).
L'installation du runtime Framework.NET est indispensable sur le poste cible.

  • Microsoft Windows Server 2003
  • Windows XP Professionnel
  • Windows XP Édition familiale (Sans possibilité de création d'applications Web et de services WEB XML)
  • Windows 2000 Professionnel (Service Pack 3 ou version ultérieure requis)
  • Windows 2000 Server (Service Pack 3 ou version ultérieure requis)
Créé le 20 mai 2005  par abelman, Laurent Dardenne

Lien : Runtime Framework.NET 1.1

Vous trouverez dans l'article, indiqué dans la zone lien, les bases sur les nouveautés du langage Delphi sous .NET.
De nombreuses informations n'ont pas été reportées dans cette FAQ.

Vous trouverez de nombreuses informations également dans la faq Delphi Win32/VCL, leur adaptation sous .NET est relativement aisée.

Créé le 11 avril 2013  par Laurent Dardenne

Lien : Le langage Delphi pour .NET
Lien : La faq Delphi Win32-VCL

Delphi .NET supporte le passage d'un nombre de paramètre variable, et de type varié, à une procédure. La syntaxe utilisée est :

 
Sélectionnez
					Procedure NOM(Arguments: array of const);

L'appel se faisant par :

 
Sélectionnez
					{$AutoBox on}
					NOM(['String', 90, 3.14159, True, 's']);
					{$AutoBox off}

Le compilateur passe chaque élément comme un type System.Object.
La directive AutoBox, de portée locale, permet d'éviter le transtypage explicite nécessaire pour chaque élément du tableau.

 
Sélectionnez
					program TableauConst;
					{$APPTYPE CONSOLE}

					uses
					SysUtils;

					type
					TObjectDynArray = array of TObject;

					Procedure TabObjet(Args : array of TObject);
					var i: Integer;
					begin
					Writeln('Dans la procédure TabObjet');
					for i := Low(Args) to High(Args) do
					WriteLn('L''élément ', I, ' est du type ', Args[i].GetType.FullName,' sa valeur est ''',Args[i],'''');
					ReadLn;
					end;

					procedure TabConst(A: array of const);
					var i: Integer;
					begin
					Writeln('Dans la procédure TabConst');
					for i := Low(A) to High(A) do
					// WriteLn('Index ', I, ': ', A[i].GetType.FullName);
					WriteLn('L''élément ', I, ' est du type ', A[i].GetType.FullName,' sa valeur est ''',A[i],'''');
					ReadLn;
					end;

					// Déclare et initialise qq variables
					Var S1    : String='Une chaîne';
					I     : Integer=90;
					D1    : Double=5.6;
					D2    : Double=3.14159;
					Etat  : Boolean=True;
					S2    : String='s';

					TbObj : Array of TObject;

					begin
					// Passage d'un nombre de paramètre variable sans préciser le type, uniquement des constantes
					TabConst(['Une chaîne', 90, 5.6, 3.14159, True, 's']);
					// Passage d'un nombre paramètre variable sans préciser le type, mixte constantes et variables
					TabConst([S1, I, 5.6, D2, Etat, 's']);
					// Dans le second appel le type du 2 éme paramètre est différent
					// A la compilation 90 est vu comme un type Byte et I est de type Integer

					// Création dynamique d'un tableau
					TbObj:=New(TObjectDynArray,6);
					// La directive AutoBox permet d'éviter le transtypage explicite nécessaire pour chaque élément du tableau
					// Cette directive effectue implicitement le cast
					{$AutoBox on}
					// Renseigne le tableau avec des variables
					TbObj:= New(array[] of TObject, (S1, I, D1, D2, Etat, S2));
					{$AutoBox off}
					TabObjet(TbObj);

					{$AutoBox on}
					// Renseigne le tableau avec des variables et des constantes
					TbObj:= New(array[] of TObject, (S1, I, 5.6, D2, Etat, 's'));
					{$AutoBox off}
					TabObjet(TbObj);
					end.
Créé le 20 mai 2005  par Laurent Dardenne

Bien que cela soit déconseillé, vous pouvez utiliser les mots-clés dans vos applications. Pour cela, vous devez les faire précéder de l'opérateur perluète (&).

 
Sélectionnez
					Procedure &begin;
					begin
					writeln('Comment utiliser un mot-clé : &mot-clé');
					end ;

					begin
					&begin
					end.
Créé le 11 avril 2013  par morpheus, Laurent Dardenne

Lien : Identificateurs étendus

L'initialisation des variables locales n'est plus nécessaire dans une méthode :

 
Sélectionnez
					var Lecteur  : StreamReader ;
					begin
					Lecteur:=nil;
					...

le code précédent n'a plus lieu d'être sous Delphi .NET étant donné que le compilateur génére le code d'initialisation des variables locales à votre place :

 
Sélectionnez
					L'instruction IL .locals déclare des variables locales pour la méthode courante.
					Si init (.locals init) est indiqué, les variables sont initialisées à leurs valeurs par défaut selon
					leur type.
					Les types référence sont initialisés à nulle (NIL) et les types valeur sont mis à zéro.

Vous trouverez plus d'informations en recherchant .locals dans le document suivant :
...\Microsoft.NET\SDK\v1.1\Tool Developers Guide\docs\Partition II Metadata.doc

Vous pouvez le vérifier avec le désassembleur IL Dasm.

Créé le 11 avril 2013  par Laurent Dardenne

Les énumérations du framework .NET se manipulent de la même manière qu'une énumération déclarée sous Delphi .NET.
Vous trouverez dans le tutoriel cité dans la section lien, les manipulations de base sur les énumérations du framework.

Créé le 11 avril 2013  par Laurent Dardenne

Lien : Les énumérations sous Delphi .NET

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2009 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.