I.T.A.G (DTS1)

Ce forum incha allah aura pour but d aider les etudiant de la DTS1 a en plus savoir cotee cours et tt que sa soit reseau ou devlopment
 
AccueilPortailFAQRechercherS'enregistrerMembresGroupesConnexion

Partagez | 
 

 Deux voies vers le bonheur suprême

Aller en bas 
AuteurMessage
ultrasur
moderateur
moderateur
avatar

Messages : 200
Date d'inscription : 11/02/2008
Age : 31

MessageSujet: Deux voies vers le bonheur suprême   Mer 13 Fév - 8:29

VB offre en fait deux possibilités pour appeler le code contenu dans les DLL de Windows. Si l'une d'elle vous est encore inconnue, l'autre est en réalité une vieille connaissance… car tels M. Jourdain, vous n'avez jusqu’à maintenant fait qu'appeler des DLL sans le savoir.
2.1 Les appels de l'API
Commençons par le plus barbare, le plus brutal et le plus sanguinaire. Aïe, Aïe, Aïe, que se cache-t-il derrière API, ce joli nom de pomme rouge ? Comme vous vous en doutez, comme à chaque fois que Microsoft est dans le secteur, ze worm is in ze frout.
API signifie : Application Programming Interface. C’est en fait un habillage de toutes les fonctions disponibles au sein des DLL. Mais on verra qu'en fait d'habillage, cela ressemble davantage à des haillons qu'à autre chose…
L'idée générale de l'API, c'est que toute DLL peut être utilisée par un langage comme VB sous forme de fonction, qui utilise donc les paramètres (arguments) qu'on lui fournit et qui renvoie donc un résultat vers le langage. Donc, en théorie, pour utiliser une DLL, il suffit de savoir laquelle effectue le traitement que l'on souhaite, quels arguments il faut lui envoyer, et quel type de valeur elle retourne. Ensuite, il ne reste plus qu'à créer cette fonction dans le programme. Mais... il y a un mais. Et pas qu'un seul !
Première bonne blague : à part d’épais et indigestes bouquins (en plus, ils sont chers), il n’existe nulle part une liste un peu complète des fonctions d’appel de l’API, vous disant quelle fonction fait quoi, et la syntaxe de l’appel. Donc, en gros, ça existe, mais Microsoft ne vous dit pas ni où ni comment. Résultat, il faut chercher, chercher, et chercher encore, crier au secours sur Internet, pour savoir quel appel API utiliser pour une tâche donnée, et en connaître la syntaxe. Il n'y a pas si longtemps, j’ai vu un étudiant passer plusieurs heures à chercher comment, par un code VB, lancer Access avec une base de données précise chargée à l’ouverture… Ce n’est pourtant pas sorcier, me direz-vous ? Pourtant, il n’a obtenu une réponse valable que juste avant de mourir d’épuisement et de désespoir.
Mais jetons un voile pudique sur les affres de cette quête, et imaginons que vous ayez enfin trouvé la syntaxe de l’appel API de vos rêves les plus fous. Comment le mettre en œuvre dans votre application ?
En ce qui concerne la syntaxe, un appel API ne se distingue pas fondamentalement d’un appel à une fonction ordinaire, avec des paramètres.
Pour pouvoir utiliser de l’API (autrement dit une DLL), il faut tout d’abord déclarer la fonction en question, en indiquant les éléments suivants :
le nom de la procédure ou fonction
le fichier DLL dans lequel elle se trouve
les paramètres qu’elle doit recevoir
le type de valeur renvoyée, s’il s’agit d’une fonction
Tout cela, encore une fois, vous ne l’inventez pas. Il vous faut tous ces renseignements pour pouvoir travailler, renseignements recueillis dans un bouquin, sur le Net, ou auprès d’un ami si vous avez de mauvaises fréquentations.
Au total, la déclaration donnera un splendide zorglub du genre :
Private Declare Function Duchemol Lib "Coucou32" Alias "Zigopaf" (Byval x As Long, Byval y As Long) As Long
Hem. Je sens qu'un petit décodage ne sera pas inutile.
Declare indique qu'il s'agit d'une déclaration API
Duchemol est le nom que vous choisissez pour votre fonction
Lib indique qu'il va falloir aller piocher dans une DLL…
…DLL dont le nom est Coucou32
Alias "Zigopaf" est un paramètre éventuel, souvent omis par VB car le nom d'alias est le même que le nom de la DLL
X et Y sont les paramètres envoyés à la fonction, avec leur type
le "As Long" final indique le type de valeur retournée par la fonction.
Ouf.
Une fois cette fonction d’appel API déclarée, vous pourrez vous en servir comme de n’importe quelle fonction, avec par exemple en cours de programme :
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.realmadridclub.net
 
Deux voies vers le bonheur suprême
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Les huit marches vers le bonheur de Bhante Henepola Gunaratana
» Expo : « Celtes-Gaulois, deux chemins vers l'au-delà »
» Continuer les deux premiers vers d'un poème
» les 8 marches vers le bonheur
» 2011, vers un Bonheur Intérieur... Brut

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
I.T.A.G (DTS1) :: Cours de Réseaux et Development :: Devlopment :: cours-
Sauter vers: