Creation DLL avec Visual C/C++ 6.0 - C++ - Programmation
Marsh Posté le 03-07-2006 à 11:34:58
google + "compile dll visual C++ 6 tutorial" =
http://www.programmers-corner.com/tutorial/4
Marsh Posté le 03-07-2006 à 12:35:01
Merci. Ms y a un truc ke je comprends pas. Dans mon dossier release je n'est pas de dll ms des fichiers .pch et .obj. Et le fichier .def est-il absolument necessaire? Je voudrais importer une classe entiere. Voici mon .cpp et mon .h de test.
// Compteur.cpp : Defines the entry point for the DLL application.
//
#define COMPTEUR_EXPORTS
#include "stdafx.h"
#include "Compteur.h"
#include "time.h"
// This is the constructor of a class that has been exported.
// see Compteur.h for the class definition
COMPTEUR_API CCompteur::CCompteur()
:c(0)
{
}
COMPTEUR_API CCompteur::startTime()
{
while(1){
int secElapsed=clock();
if (secElapsed%10==0) c++;
}
}
COMPTEUR_API int CCompteur::getC()
{
return c;
}
COMPTEUR_API CCompteur::setC(int _c)
{
c = _c;
}
**************
// The following ifdef block is the standard way of creating macros which make exporting
// from a DLL simpler. All files within this DLL are compiled with the COMPTEUR_EXPORTS
// symbol defined on the command line. this symbol should not be defined on any project
// that uses this DLL. This way any other project whose source files include this file see
// COMPTEUR_API functions as being imported from a DLL, wheras this DLL sees symbols
// defined with this macro as being exported.
#ifdef COMPTEUR_EXPORTS
#define COMPTEUR_API __declspec(dllexport)
#else
#define COMPTEUR_API __declspec(dllimport)
#endif
// This class is exported from the Compteur.dll
class COMPTEUR_API CCompteur {
public:
CCompteur(void);
startTime(void);
getC();
setC(int _c);
private:
int c;
};
Marsh Posté le 03-07-2006 à 13:00:17
mareek a écrit : google + "compile dll visual C++ 6 tutorial" = |
En fait je n'ai pas de .dll apres la compilation. seulement un lib et un exp ds le dossier debug
Marsh Posté le 03-07-2006 à 13:03:05
jess100 a écrit : En fait je n'ai pas de .dll apres la compilation. seulement un lib et un exp ds le dossier debug |
Ah c normal g des erreurs a la compilation ...
Marsh Posté le 03-07-2006 à 15:00:38
Ca y est j'arrive a creer ma dll mais je n'arrive pas a la charger : le handle est a null. Pourtant le chemin specifie est bien le bon. Quelqu'un a deja rencontre ce type d'erreur??
Marsh Posté le 03-07-2006 à 15:32:27
je suppose que tu utilises LoadLibrary() pour charger ta dll... quel est le code d'erreur renvoyé par GetLastError() ?
Marsh Posté le 03-07-2006 à 15:58:05
récupère le message correspondant avec la fonction FormatMessage
Marsh Posté le 03-07-2006 à 15:58:53
Citation : |
http://msdn.microsoft.com/library/ [...] 0-499_.asp
maintenant, à toi de voir le module qui n'est pas trouvé... as tu mis la dll dans %SYSTEM% ?
Marsh Posté le 03-07-2006 à 16:11:07
nan...j'ai juste creer une dependance entre la dll et le programme qui l'utilise. Je dois la mettre ou alors?
Marsh Posté le 03-07-2006 à 16:37:23
windows\system32
edit: ou dans le répertoire de ton appli
Marsh Posté le 03-07-2006 à 17:33:16
normalement ça devrait etre bon, met la dans system32 au cas ou
Marsh Posté le 04-07-2006 à 09:10:08
Pour automatiser le la copie, tu peux ajouter une règle de "Postbuild process", dans les settings de ton projet, qui copiera automatiquement les dlls générées dans system32 ou le répertoire de ton choix.
Marsh Posté le 04-07-2006 à 11:22:18
_darkalt3_ a écrit : Pour automatiser le la copie, tu peux ajouter une règle de "Postbuild process", dans les settings de ton projet, qui copiera automatiquement les dlls générées dans system32 ou le répertoire de ton choix. |
Ok. et je fais ca comment?
Marsh Posté le 04-07-2006 à 13:43:49
mais tu voudrais pas un peu te sortir les doigts du c** et essayer de chercher par toi même un peu ?
darkalt t'a tout dit, faut un minimum de travail perso hein
Marsh Posté le 04-07-2006 à 15:00:55
en meme temps, y'a un debugger intégré à VS hein, ça serait bien de l'utiliser
Marsh Posté le 04-07-2006 à 15:09:34
Harkonnen a écrit : en meme temps, y'a un debugger intégré à VS hein, ça serait bien de l'utiliser |
T'as rien dotre a faire ke de faire chier le monde? Jsuis la pr apprendre pas pr recevoir des lecons alors va demonter qqn dotre la star!
Marsh Posté le 04-07-2006 à 16:07:39
Un peu de respect pour les gens qui t'aident ne serait pas déplacé
Marsh Posté le 04-07-2006 à 16:14:01
jess100 a écrit : Jsuis la pr apprendre pas pr recevoir des lecons |
Ah ouais quand meme
"Cette phrase est fausse"
Marsh Posté le 04-07-2006 à 16:18:09
jess100 a écrit : T'as rien dotre a faire ke de faire chier le monde? Jsuis la pr apprendre pas pr recevoir des lecons alors va demonter qqn dotre la star! |
sur le coup la "star" c'est plutot toi
sympa la gratitude
Marsh Posté le 04-07-2006 à 16:24:30
jess100 a écrit : T'as rien dotre a faire ke de faire chier le monde? Jsuis la pr apprendre pas pr recevoir des lecons alors va demonter qqn dotre la star! |
ok poulette, on va remettre les choses au clair :
- déjà ta question : en 2 secondes, mareek t'a trouvé un tuto sur le net sans se forcer. t'as pas du beaucoup chercher
- ensuite, les différentes réponses que je t'ai fait au sujet de GetLastError() et tout, apparemment t'as du oublier
- darkalt t'indique une manipulation, la moindre des choses est d'essayer sa manip avant de demander comment on fait
- ensuite, ton problème serait résolu depuis longtemps si tu avais utilisé le debugger : tu aurais vu les paramètres envoyés à LoadLibrary(), et le module impossible à charger
- enfin tu te permets de m'insulter alors que je pense que je t'ai fait pas mal avancer, alors tu m'excuseras, mais là je te trouve sacrément culottée
- et pour finir, tu écris en SMS Style, ce qui est interdit sur ce forum, et ne fait que confirmer ton manque de respect vis à vis des intervenants présents ici
pas de bol, t'as insulté la mauvaise personne : TT jusqu'à la fin de la semaine
Marsh Posté le 04-07-2006 à 16:29:40
t'as été sympa j'en connais qu'on été ban pour 3 mois pour moins que ça
Marsh Posté le 04-07-2006 à 16:29:56
jess100 a écrit : T'as rien dotre a faire ke de faire chier le monde? Jsuis la pr apprendre pas pr recevoir des lecons alors va demonter qqn dotre la star! |
figure 1 : discour cohérent
Marsh Posté le 04-07-2006 à 16:30:53
Le_Tolier a écrit : t'as été sympa j'en connais qu'on été ban pour 3 mois pour moins que ça |
que veux tu, je peux pas frapper une femme
Marsh Posté le 04-07-2006 à 16:32:23
Harkonnen a écrit : que veux tu, je peux pas frapper une femme |
Pourquoi ? Tes capacités physiques sont si faible que ça ?
Marsh Posté le 04-07-2006 à 16:33:44
stiffler a écrit : Pourquoi ? Tes capacités physiques sont si faible que ça ? |
il a un malaise le peignoir ?
Marsh Posté le 04-07-2006 à 16:34:39
Harkonnen a écrit : il a un malaise le peignoir ? |
Non mais visiblement tes couches séniors sont plus remplies que ton crane.
Marsh Posté le 04-07-2006 à 16:35:20
stiffler a écrit : Non mais visiblement tes couches séniors sont plus remplies que ton crane. |
tain, mais ta mère t'a bercé un peu trop près du mur toi
Marsh Posté le 04-07-2006 à 16:37:07
Harkonnen a écrit : que veux tu, je peux pas frapper une femme |
Et après il y a Isabelle Alonso qui nous fais chier avec son féminisme
Marsh Posté le 04-07-2006 à 16:39:30
Harkonnen a écrit : tain, mais ta mère t'a bercé un peu trop près du mur toi |
putain mais tu fais même pas l'effort de sortir autre chose que les répliques préfabriquées utilisées au collège ... ça me donne même pas envie de te répondre .. fait un effort
Spoiler : |
Marsh Posté le 04-07-2006 à 16:59:48
STIFFLER PRAISIDENT §§§§/
Marsh Posté le 03-07-2006 à 11:01:16
Salut!
J'aimerai creer une simple dll en C++ avec Visual C 6.0 mais je suis une debutante. Quelqu'un pourrait me guider pas a pas? Je ne trouve pas de tutoriel sur le net.
Merci