DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer et utiliser des assemblages NET
  • Présentation
  • Comment créer une procédure en code C# ?
  • Remarques importantes
  • Comment appeler des classes C# ?
  • Utilisation d'assemblages .NET existants
  • Ajout de classes C# spécifiques
WINDEV
WindowsLinuxJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac Catalyst
Autres
Procédures stockées
Présentation
Il est possible de saisir du code C# dans les applications WINDEV (applications et composants Windows, assemblages .NET).
Vous pouvez ainsi créer des procédures globales entièrement en code C#.
Comment créer une procédure en code C# ?
Pour saisir le code d'une procédure globale en code C# :
  1. Créez une nouvelle procédure globale (par exemple option "Nouvelle procédure globale" du menu contextuel des collections de procédures dans le volet "Explorateur de projet"). Indiquez le nom de cette procédure.
    Attention : le nom de la procédure ne doit pas contenir de caractères accentués.
  2. La procédure est créée sous l'éditeur de code.
  3. Dans l'entête de la procédure, cliquez sur le logo "WL" pour changer le type de code.
  4. Dans la liste qui s'ouvre, sélectionnez "C#".
  5. Le bandeau devient bleu clair et les caractères "C#" apparaissent devant le nom de la procédure. Le code existant est mis en commentaires.
  6. Saisissez le code C# directement dans l'éditeur de code de WINDEV.
Remarques :
  • Pour revenir en code WLangage, il suffit de cliquer sur "C#" dans le bandeau de la procédure et de sélectionner "WLangage".
  • Le nom de la procédure C# ne doit pas contenir d'accents. Dans le cas contraire, les accents sont supprimés lors du passage au code C#.

Remarques importantes

  • Le passage de paramètres à une procédure C# est réalisé automatiquement par valeur.
  • Les paramètres des procédures écrites en code C# doivent obligatoirement être typées avec un type primitif (entier, réel, chaîne, ...). Les types gérés sont :
    • char
    • wchar_t
    • float
    • double
    • int
    • long
    • short
    • void
    • bool
    • BOOL
  • Evitez les commentaires de type "/*". Les commentaires WLangage ("//") sont gérés.
Comment appeler des classes C# ?

Utilisation d'assemblages .NET existants

Si votre procédure en code C# utilise des classes C#, intégrez les assemblages nécessaires dans le projet.
Remarque : Les déclarations "using" situées avant les prototypes des procédures en C# sont prises en compte pour toute la collection.

Ajout de classes C# spécifiques

Il est possible d'intégrer directement des classes C# en ajoutant des fichiers source ".cs" directement dans la liste des éléments du projet :
  • soit par la liste des éléments,
  • soit en sélectionnant "Autres" dans le bouton droit de l'explorateur de projet.
Version minimum requise
  • Version 23
Commentaires
Précisions pour V24
- Ne jamais mélanger les procédures écrites en WLangage avec celles écrites en C#.
Isolez dans «une seule» collection de procédures globales les procédures écrites en C#

- Une fois votre projet compilé copiez le fichier : <nom du projet.dll> dans le répertoire :
<répertoire d'installation de Windev>\Programmes\FrameWork\Win32x86\ pour du 32 bits
<répertoire d'installation de Windev>\Programmes\FrameWork\Win64x86\ pour du 64 bits

- Ne jamais mettre de commentaire avant la ligne de déclaration de la procédure.
On peut en mettre sur la même ligne.

- PCsoft utilise le compilateur situé dans le répertoire : C:\Windows\Microsoft.NET\Framework\<version de framework>\csc.exe
pour générer <nom du projet.dll> (voir dans le répertoire <répertoire du projet>\.NET\Compile\Compile.bat).
On y retrouve :
- un fichier pour la collection de procédure globales contenant le code en C# : <nom de la collection de procédure globale>.cs
- le fichier Compile.bat contenant l'ordre pour créer
Philippe Pasquali
28 mai 2020

Dernière modification : 13/09/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale