begin process at 2012 02 11 10:52:46
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

API

 > API , L'HISTOIRE SIMPLIFIÉE

API , L'HISTOIRE SIMPLIFIÉE


 Information sur la source

Note :
9,33 / 10 - par 3 personnes
9,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :API Niveau :Débutant Date de création :18/03/2002 Date de mise à jour :18/03/2002 16:20:55 Vu :5 452

Auteur : hackalex

Ecrire un message privé
Site perso
Commentaire sur cette source (11)
Ajouter un commentaire et/ou une note

 Description

Voici le systeme d'utilisation des API  

Source

  • Qu'est ce qu'une API?
  • Une API (Application Programming Interface) est une procédure contenue dans un fichier .DLL. Les APIs permettent d'accèder à des commandes que le code Visual Basic ne contient pas. Ainsi, vous pouvez obtenir des informations sur le système, modifier le comportement d'une fenêtre, connaître les applications en cours d'exécution... . Les DLLs les plus souvent utilisées sont celles de Windows (GDI32.DLL, USER32.DLL et KERNEL32.DLL), mais la technique présentée dans cette leçon permettra l'accès à toute fonction de toute DLL.
  • Etape 1:
  • Déclaration de la fonction.
  • Visual Basic ne sait rien des fonctions des DLL puisqu'elles sont externes. Il faut donc les lui présenter. Pour cela, on utilise une syntaxe de déclaration:
  • Public Declare Function (ou Sub plus rarement) NomPersonnaliséDeLaFonction Lib "Noms du fichier.DLL" alias "NomOriginalDeLaFonction" (Arguments) as TypeRenvoyé
  • Cette syntaxe de souche Indo-Européenne est proprement imbuvable. Pour vous aider, VB est accompagné dans les outils Visual Studio de la Visionneuse d'API. Ce programme vous permettra de récupèrer par Copier Coller la syntaxe de la fonction de votre choix.
  • Lancez la visionneuse depuis le groupe de programmes des outils Visual Studio 6 ou Visual Basic 6. Dans la visionneuse, demandez le Menu Fichier et Charger le fichier texte. Sélectionnez "Win32Api.txt". La liste de toutes les fonctions contenues dans les DLLs de Windows apparaît. Sélectionnez un nom de fonction, dans cet exemple, vous chercherez à connaître le type d'une unité de disque. La fonction est GetDriveType. En cliquant sur le bouton Copier, le contenu de la décalration est transféré dans le presse-papier.
  • Dans votre projet Visual Basic, insèrez un module de basic standard et collez cette déclaration dans la zone General-Declarations.
  • Etape 2:
  • Utilisation de la fonction
  • L'utilisation de la fonction s'apparente à la manipulation d'une fonction courante de Visual Basic. Créez un bouton sur une feuille de votre projet, nommez le BtnTest.
  • Saisissez dans sa procécure évènementielle "Click":
  • Private Sub BtnTest_Click()
  • Dim Choix as String
  • Dim Résultat as Long
  • Choix=InputBox("Donnez la lettre du disque:","Faîtes votre choix")
  • Résultat=GetDriveType(Choix & ":\")
  • Select Case Résultat
  • Case 0
  • 'Echec
  • Case 1
  • 'Inconnu
  • Case 2
  • 'Disquette
  • Case 3
  • 'Disque dur
  • Case 4
  • 'Disque logique
  • Case 5
  • 'CD-Rom
  • End Select
  • ....
  • End Sub
  • hack@lex
Qu'est ce qu'une API?

Une API (Application Programming Interface) est une procédure contenue dans un fichier .DLL. Les APIs permettent d'accèder à des commandes que le code Visual Basic ne contient pas. Ainsi, vous pouvez obtenir des informations sur le système, modifier le comportement d'une fenêtre, connaître les applications en cours d'exécution... . Les DLLs les plus souvent utilisées sont celles de Windows (GDI32.DLL, USER32.DLL et KERNEL32.DLL), mais la technique présentée dans cette leçon permettra l'accès à toute fonction de toute DLL.

 

Etape 1:

Déclaration de la fonction.

Visual Basic ne sait rien des fonctions des DLL puisqu'elles sont externes. Il faut donc les lui présenter. Pour cela, on utilise une syntaxe de déclaration:

Public Declare Function (ou Sub plus rarement) NomPersonnaliséDeLaFonction Lib "Noms du fichier.DLL" alias "NomOriginalDeLaFonction" (Arguments) as TypeRenvoyé

Cette syntaxe de souche Indo-Européenne est proprement imbuvable. Pour vous aider, VB est accompagné dans les outils Visual Studio de la Visionneuse d'API. Ce programme vous permettra de récupèrer par Copier Coller la syntaxe de la fonction de votre choix. 

Lancez la visionneuse depuis le groupe de programmes des outils Visual Studio 6 ou Visual Basic 6. Dans la visionneuse, demandez le Menu Fichier et Charger le fichier texte. Sélectionnez "Win32Api.txt". La liste de toutes les fonctions contenues dans les DLLs de Windows apparaît. Sélectionnez un nom de fonction, dans cet exemple, vous chercherez à connaître le type d'une unité de disque. La fonction est GetDriveType. En cliquant sur le bouton Copier, le contenu de la décalration est transféré dans le presse-papier.  

Dans votre projet Visual Basic, insèrez un module de basic standard et collez cette déclaration dans la zone General-Declarations.

Etape 2:

Utilisation de la fonction 

L'utilisation de la fonction s'apparente à la manipulation d'une fonction courante de Visual Basic. Créez un bouton sur une feuille de votre projet, nommez le BtnTest.

Saisissez dans sa procécure évènementielle "Click":

Private Sub BtnTest_Click()

Dim Choix as String
Dim Résultat as Long

    Choix=InputBox("Donnez la lettre du disque:","Faîtes votre choix")

    Résultat=GetDriveType(Choix & ":\")

    Select Case Résultat

    Case 0
    'Echec

    Case 1
    'Inconnu

    Case 2
    'Disquette

    Case 3
    'Disque dur    

    Case 4
    'Disque logique    

    Case 5
    'CD-Rom

    End Select

....

End Sub

hack@lex 

 Conclusion

Systeme asser simple sans bugs pouvait faire des degats


 Sources du même auteur

CODES DES TOUCHES EN VB6
AIDE SUR LA FONCTION OPEN

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) .NET DEPENDENCY VIEWER : ARBRE DES DÉPENDANCES D'UN ASSEMBLY... par ShareVB
Source avec Zip Source .NET (Dotnet) UTILITAIRE SKYDRIVE par MasterShadows
Source avec Zip ROTATION RAPIDE D'IMAGE par trex70
Source avec Zip Source avec une capture ENUMERATION DES PORTS TCP ET IDENTIFCATION DU PROCESS (PID) ... par Renfield
Source avec Zip Source avec une capture MOUSE SPEED AND WEIGHT : RETOUR DE FORCE VIRTUEL ! par ScSami

Commentaires et avis

Commentaire de Lolux le 18/03/2002 17:38:19

sympa de donner ce type d'infos.

J'ai mis pas mal de temps au début à bien comprendre le rôle des API, avec ce genre d'aide, j'aurai à l'époque gagné du temps. C'est vrai que tu n'expique pas tout mais c'est bien de donner des pistes de recherche. Ca évite des messages chiants et répétitifs sur le forum.

Voilà qui fait progresser le site et ses visiteurs !

Commentaire de Logan le 18/03/2002 20:18:30

Cool ton truc. Toi, on voit que du bosse pas comme thekingoftheweb

Commentaire de emap le 18/03/2002 21:31:37

merci du tuyau! c sympa

Commentaire de Cervomix le 18/07/2002 17:49:59

Merci beaucoup! Ca me fera gagner du temps!
Certains ne devraient pas oublier qu'il y a sans doute beaucoup de débutants sur ce site :)

Commentaire de Cervomix le 18/07/2002 17:50:32

Merci beaucoup! Ca me fera gagner du temps!
Certains ne devraient pas oublier qu'il y a sans doute beaucoup de débutants sur ce site :)

Commentaire de DARKSIDIOUS le 02/10/2002 13:09:03 administrateur CS

Très bien fait, bravo : 9/10

DARK SIDIOUS

Commentaire de azerty25 le 07/11/2003 21:24:50

Nikel, merci pour ce tuyau, j'en apprend encore grace à toi un peu plus sur le VB aujourd'hui :-) (je débute)

Commentaire de nashoy le 23/02/2004 22:05:52

ouai c cool, pcq la plupart d tutos expliques les différents apis, mais ne disent pas comment les déclarer.
Merci

Commentaire de Maritime le 10/09/2004 18:40:30

Peut-on creer des API, en supposant que l'on maitrise
le langage C ?

Commentaire de BruNews le 10/09/2004 20:00:32 administrateur CS

Maritime> bien entendu qu'on ecrit les APIs en C.

Commentaire de isetala le 07/12/2005 09:23:40

bbbien!!!! merci pour les informations

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,136 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales