NEO ::: TEAM
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

NEO ::: TEAM

New Evolution Owner
 
AccueilRechercherDernières imagesS'enregistrerConnexion
Le Deal du moment : -50%
Ampli Home Cinema Denon AVR-X1700H à 399€
Voir le deal
399 €

 

 les api

Aller en bas 
AuteurMessage
pinkfloyd
Modérateur
Modérateur



Nombre de messages : 27
Age : 39
Date d'inscription : 04/12/2006

les api Empty
MessageSujet: les api   les api Icon_minitimeLun 8 Jan - 15:02

Les API (Application Programming Interface)






Le système d'exploitation installé sur l'ordinateur (Windows pour Visual Basic), est livré avec un certain nombre de fonctions destinées aux développeurs. Ces fonctions sont ces fameuses API. Ce sont elles qui permettent d'intéragir avec le système d'exploitation, pour obtenir de lui à peu près ce qu'on veut. Elles offrent des possibilités presque infinies (tant qu'on reste dans une utilisation "classique" ; inutile de compter sur elles pour faire de la reconnaissance vocale par exemple !), et dépassent de très loin les possibilités apportées par l'environnement Visual Basic. Par exemple, elles vous permettront de jouer un son au format wav, midi, ou même une vidéo de type avi.
Les Api ne sont en fait que des fonctions semblables à celle que vous pouvez créer dans Visual basic : en règle générale, on leur fournit un certain nombre de paramètres, et elles renvoient quelque chose, ou réalisent une action précise. Ces fonctions sont contenues dans des fichiers dll, tels "user32.dll", "kernel32.dll", ou bien d'autres encore.
Pour utiliser une API, il y a deux étapes à respecter :

  • déclarer la fonction que l'on va utiliser, c'est à dire informer l'environnement de son existence, de son emplacement, de ses paramètres....
    Cette déclaration est assez proche de la création d'une fonction standard.

    Exemple :
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Ici, on a déclaré la fonction FindWindow située dans la dll "user32.dll", et qui accepte deux paramètres : lpClassName (une string) et lpWindowName (une string également). Cette fonction renvoie une valeur de type Long.
    Comme vous le voyez, on s'est ici également servi d'un "alias" permettant de préciser un autre nom pour la fonction. En fait, dans ce cas-ci, cela sert à préciser que l'on utilise des chaines de caractères ANSI et non Unicode, auquel cas on indiquer "FindWindowW" comme alias. Pour résumer, l'explication tient dans le fait qu'en C++ (langage de prédilection des API) deux fonctions peuvent avoir exactement le même nom mais être différenciées par la nature de leurs arguments, ce qui n'est pas le cas en VB.
  • une fois déclarée, on peut utiliser l'API n'importe où dans sa zone de portée (qui obéit aux même règles que les variables normales). Si on veut pouvoir l'utiliser dans n'importe quelle feuille du projet, il faudra la déclarer comme Public (Public Function FindWindow.....) dans un module. Si la déclaration ci-dessus était mise dans un module, l'API ne serait reconnue que dans le module en question.
    Pour l'utiliser, il suffit de l'appeller comme une fonction normale. Par exemple, avec l'api FindWindow :
    Dim Handle_Fenetre As Long
    Handle_Fenetre = FindWindow ("" , "Solitaire")


Comme vous le voyez, les API sont plutôt faciles à utiliser, une fois que l'on connaît leur déclaration et leurs paramètres. Leurs difficultés sont autres : les problèmes se posent généralement lorsqu'on cherche l'API qui nous rendrait service, puisqu'on se trouve alors confronté à des milliers de fonctions aux noms pas toujours très explicites. Lorsque enfin on a trouvé celle qui convient, on découvre qu'on est incapable de l'utiliser, car on ne connaît ni sa déclaration, ni ses paramètres, ni son utilisation ! Pour résoudre ce problème, il n'y a pas cinquante solutions : la première est de chercher des exemples utilisant cette API (c'est dans cet esprit que j'ai conçu la rubrique "Codes sources", la deuxième est d'acquérir un livre spécialisé sur les API (il n'en existe que quelques uns en français pour Visual Basic) ; leur prix avoisine généralement les 400 F (le livre de DAN APPELMAN de chez S&SM : Visual Basic 5, programmation des API32, est parait-il, très bien). Il existe aussi une autre ressource : la visionneuse d'API, fournie avec Visual Basic 4 et 5 professionnel (peut-être VB 3 ?), qui propose une liste des API et leur déclaration, mais malheureusement, pas leur utilisation. Cela dit, elle peut souvent se montrer utile, ne serait-ce que pour savoir quelle API peut nous servir.
Enfin, dernières ressources possibles, très intéressantes, mais malheureusement en C++ : la documentation de Visual C++, qui propose une liste de toutes les API, ou, si vous n'avez pas Visual C++, le MSDN Online sur le site de Microsoft (qui contient entre autres cette documentation), ou encore le fichier d'aide win32.hlp, diponible en téléchargement gratuitement (attention, le zip avoisinne les 6-7 Mo...). Ce fichier d'aide contient une description très complète des APIs de Widows, des structures à utiliser, etc, mais là encore, en C++...
Revenir en haut Aller en bas
 
les api
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
NEO ::: TEAM :: Informatique :: Les RADs :: Microsoft Visuel Basic-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser