pictogram Auteur: Patrick Biker
Date: 18 mars 2006
Maj : 21 Mars 2015

Des exemples d'utilisation des fonctions du WLangage

Rien de tel qu'un exemple pour comprendre une fonction de WLangage. Dans cette section, vous trouverez des exemples simples.

Des exemples évolués, où la fonction est utilisée en contexte, sont également disponible sur ce site.

Aller à la page des exemples évolués

API (en anglais API)

API ("USER32", "SendMessageA", hWnd, wMsg, lParam1, lParam2)


Début de la page

AppelDLL32 (en anglais CallDLL32)

AppelDLL32 ("USER32", "SendMessageA", hWnd, wMsg, lParam1, lParam2)


Début de la page

ChargeDLL (en anglais LoadDLL)

hInst est un entier
hInst = ChargeDLL ("MaDLL.DLL")
SI hInst = 0 ALORS
   Erreur(ErreurInfo())
SINON
   Info("DLL chargée")
   DéchargeDLL(hInst)
FIN


Début de la page

ChargeDLL (en anglais LoadDLL)

hInst est un entier
hInst = ChargeDLL ("MaDLL.DLL")
SI hInst = 0 ALORS
  Erreur("Erreur lors du chargement")
SINON
  AppelDLL32("MaDLL", "FonctionA", par1, par2)
  AppelDLL32("MaDLL", "FonctionB", par1)
  DéchargeDLL(hInst)
FIN


Début de la page

CreeRaccourci (en anglais CreateShortcut)

// Crée le raccourci "Test" du programme "C:\Test\Test.exe"
// sur le bureau, avec Ctrl-Alt-A comme raccourci clavier
CréeRaccourci( RaccourciBureau , "Test", "C:\Test\Test.exe", ...
                      "", sfaNormal , "A")


Début de la page

CreeRaccourci (en anglais CreateShortcut)

// Créer le raccourci dans "Démarrer/Programmes/Accessoires"
CréeRaccourci( RaccourciProgramme , "Test", "C:\Test\Test.exe", ...
                   "Accessoires", sfaNormal , "A")


Début de la page

CreeRaccourci (en anglais CreateShortcut)

// Créer le raccourci dans "Démarrer/Programmes/WinDev/Test
CréeRaccourci( RaccourciProgramme , "Test", "C:\Test\Test.exe", ...
                   "WinDev/Test", sfaNormal , "A")


Début de la page

DechargeDLL (en anglais FreeDLL)

hInst = ChargeDLL("MaDLL.DLL")
SI hInst = 0 ALORS
  Erreur("Erreur lors du chargement")
SINON
  AppelDLL("MaDLL", "FonctionA", par1, par2)
  AppelDLL("MaDLL", "FonctionB", par1)
  DéchargeDLL (hInst)
FIN


Début de la page

EnvoieTouche (en anglais SendKey)

i est un entier
// Exécute l'application Calculatrice
LanceAppli("Calc.exe", EXEActive )
// Attente du chargement de la calculette
Multitache(50)
// Définit la boucle de comptage
POUR i = 1 à 100
  
// Envoie des touches à l'application Calculatrice
  
EnvoieTouche (NumériqueVersChaine(i ) + "{+}")
FIN

// Lit le total final
EnvoieTouche ("=")

// Temporisation
Multitâche(100)

// Envoie ALT+F4 pour fermer l'application Calculatrice
EnvoieTouche ("%{F4}")


Début de la page

EnvoieTouche (en anglais SendKey)

// Dérouler le menu "&Fichier" d'une fenêtre principale
EnvoieTouche ("&f")


Début de la page

EnvoieTouche (en anglais SendKey)

// Dérouler le menu "&Fichier .. &Nouveau" d'une fenêtre principale
EnvoieTouche ("&fn")


Début de la page

InstalleIcone (en anglais IconInstall)

// Crée un raccourci pour un programme
InstalleIcone("Exemples", ""Exemple WD"", ...
          "D:\WinDev\Exemples\GESCOM\GESCOM.EXE")


Début de la page

Instance (en anglais Instance)

// Récupération de l'instance du programme
hInstance est un entier = Instance ()


Début de la page

Ping (en anglais Ping)

SI Ping ("192.168.1.38") ALORS
   Info("La machine est joignable")
SINON
   Info("La machine ne répond pas")
FIN


Début de la page

PoidsFaible (en anglais LoWord)

Res est un entier
Res = 0x000A001F
Trace( PoidsFort (Res))   // affiche 10 (correspond à 0x000A)
Trace(PoidsFaible(Res)) // affiche 31 (correspond à 0x001F)


Début de la page

PoidsFaible (en anglais LoWord)

Res est un entier = CurseurPos( cpClient )
SI Res <> -1 ALORS
   Message("Position X = " + PoidsFaible (Res)+ ...
           "Position Y = " + PoidsFort(Res))
FIN


Début de la page

PoidsFort (en anglais HiWord)

Res est un entier
Res = 0x000A001F
Trace( PoidsFort (Res))   // affiche 10 (correspond à 0x000A)
Trace(PoidsFaible(Res)) // affiche 31 (correspond à 0x001F)


Début de la page

PoidsFort (en anglais HiWord)

Res est un entier = CurseurPos( cpClient )
SI Res <>-1 ALORS
   Message("Position X = " + PoidsFaible(Res)+ ...
         "Position Y = " + PoidsFort (Res))
FIN


Début de la page

sCalculeCrc16 (en anglais sComputeCrc16)

nCrcLu est un entier   // Caractère de contrôle lu
LigneLue est une chaîne   // Chaîne lue
...
SI nCrcLu <> sCalculeCrc16 (LigneLue) ALORS
   Info("Erreur lors de la récupération de la chaîne")
FIN


Début de la page

SCalculecrc32 (en anglais sComputeCrc32)

// Calcule le CRC d’une chaîne
CRC est un entier
CRC = sCalculeCrc32 (MaChaîne)

// Transmet la chaîne et le CRC

// Vérification de l’intégrité de la chaîne
SI sCalculeCrc32 (MaChaîne) <> CRC ALORS Info("Chaîne modifiée")


Début de la page

SupprimeRaccourci (en anglais DeleteShortCut)

// Crée le raccourci "Test" du programme C:\Test\Test.exe"
// sur le bureau, avec Ctrl-Alt-A comme raccourci clavier
CréeRaccourci( RaccourciBureau , "Test", "C:\Test\Test.exe", "", sfaNormal , "A")
...
SupprimeRaccourci ( RaccourciBureau , "Test")


Début de la page

SupprimeRaccourci (en anglais DeleteShortCut)

// Créer le raccourci dans "Démarrer/Programmes/Accessoires"
CréeRaccourci( RaccourciProgramme , "Test", "C:\Test\Test.exe", ...
             "Accessoires", sfaNormal , "A")
...
SupprimeRaccourci ( RaccourciProgramme , "Test")


Début de la page

ToucheEnfoncee (en anglais KeyPressed)

Externe "KeyConst.WL"
I est un entier = 0
POUR I = 1 A 5000
    Sablier ( Vrai )
    Multitache (- 1 )
    SI ToucheEnfoncée ( VK_SPACE ) ALORS Info ( "Touche espace enfoncée" )
    SI ToucheEnfoncée ( Asc ( "A" )) ALORS Info ( "Touche A enfoncée" )
FIN
Sablier ( Faux )


Début de la page

ToucheEnfoncee (en anglais KeyPressed)

-- Code d'initialisation du projet
// Intégrer les fichiers "KeyConst.WL" et "WinConst.WL"
Externe "KeyConst.WL"
Externe "WinConst.WL"

-- Code d'initialisation de la fenêtre
// Intercepter l'appui sur une touche du Pocket PC

Evénement("DéplacementImage", "Fenêtre1.*", WM_KEYDOWN)

-- Procédure "DéplacementImage
PROCEDURE DéplacementImage()
// Déplacer le champ image "MonImage" avec
// les flèches du Smartphone ou du Pocket PC

// Flèche de droite : déplacement vers la droite
SI ToucheEnfoncée (VK_RIGHT) ALORS MonImage..X = MonImage..X + 10
// Flèche de gauche : déplacement vers la gauche
SI ToucheEnfoncée (VK_LEFT) ALORS MonImage..X = MonImage..X - 10
// Flèche du haut : déplacement vers le haut
SI ToucheEnfoncée (VK_UP) ALORS MonImage..Y = MonImage..Y + 10
// Flèche du bas : déplacement vers le bas
SI ToucheEnfoncée (VK_DOWN) ALORS MonImage..Y = MonImage..Y - 10


Début de la page

Transfert (en anglais Transfer)

ChaîneDest est une chaîne fixe sur 12000
ChaîneSource est une chaîne fixe sur 24000
LongueurTransfert est un entier
LongueurTransfert = 4096
Transfert (& ChaîneDest , & ChaîneSource , LongueurTransfert)


Début de la page

VersionWindows (en anglais WindowsVersion)

VersionP = VersionWindows ()
SI VersionP = "32"
  
Info ("Exécution en 32 bits")
FIN


Début de la page