Erreur de compilation

baptor Messages postés 9 Date d'inscription vendredi 11 novembre 2005 Statut Membre Dernière intervention 27 novembre 2005 - 26 nov. 2005 à 21:09
baptor Messages postés 9 Date d'inscription vendredi 11 novembre 2005 Statut Membre Dernière intervention 27 novembre 2005 - 27 nov. 2005 à 15:01
salut à tous;

J'essay de piloter les broches du port // sous windows XP et Vc++.J'utilise la dll inpout32.dll.J'ai deux erreurs de compilation et je ne sais pas à quoi elles sont dues.Es-ce que quelqu'un peu me dépanner??

voici les erreurs::

port.obj : error LNK2001: unresolved external symbol "void __stdcall Out32(short,short)" (?Out32@@YGXFF@Z)

Debug/port.exe : fatal error LNK1120: 1 unresolved externals



voici le code:

#include <stdlib.h>
#include <stdio.h>


short _stdcall Inp32(short PortAddress);
void _stdcall Out32(short PortAddress, short data);

void main(void)

{

char entree[32]="888";
short donneeE=0;
printf("\n\n Entre la valeur a transmettre:\t");
scanf("%d",&donneeE);
Out32(atoi(entree),donneeE);


}

5 réponses

shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
26 nov. 2005 à 21:28
ton code a l'air bon mais regarde si il ne te manque pas une librairie
ou une dll ou un header ou quelque chose du genre a inclure, moi quand
j'ai ces messges c'est souvent que j'ai oublié d'inclure une lib...



en cherchant un peu sur google j'ai trouvé ce code

http://hytherion.com/beattidp/comput/pport/test.c



j'peu pas vraiment t'aidé car j'nai jamais encore commandé de port mais
ca a l'air dans le meme genre ce prog, essai de voir ce qu'il y a de
different :s
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
27 nov. 2005 à 01:01
Bé tu as oublié de linker les librairies...

if(!Meilleur("Joky")) return ERREUR;<
0
baptor Messages postés 9 Date d'inscription vendredi 11 novembre 2005 Statut Membre Dernière intervention 27 novembre 2005
27 nov. 2005 à 14:17
heuu, d'abord merci d'avoir répondu, mais je début en programmation, et les terme "linker" les librairies ne me parle pas beaucoup.Ece que quelqu'un peu m'expliquer??

merci d'avance
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
27 nov. 2005 à 14:32
Bé les fonctions que tu veux utiliser ne sont pas "visible" par le compilateur.

Elles sont contenues dans une librairie.

Donc soit tu as un fichier .a sous DevC++ fourni avec la dll input32.dll

Soit tu charges la fonction depuis la dll qui n'est pas très simple quand on débute...


donc sinon

Charger la DLL avec LoadLibrary

Déclarer un pointeur de fonction

Récupérer la fonction Out32 avec GetProcAddress

Libérer la Dll



Mais bon ça doit pas te parler beaucoup :s

if(!Meilleur("Joky")) return ERREUR;<
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
baptor Messages postés 9 Date d'inscription vendredi 11 novembre 2005 Statut Membre Dernière intervention 27 novembre 2005
27 nov. 2005 à 15:01
c dja plus claire, mais je n'ai pas de fichier .a avec la dll.Je vais en chercher un autre pack plus complet.

merci beaucoup
0
Rejoignez-nous