Bonjour à tous, je suis grand débutant en C++ et je m'y met apres VBA
Je voudrais faire une dll en c++ car VBA ne va assez vite, le problème c'est que je n'arrive à rien, ca fait 1/2 journée que je suis dessus et je deviens fou !!!!
je dispose de Microsoft Visual Studio 2003.NET je voudrais faire un truc super simple :
Ok mais dans quel type de projet ???
File/New Project/Win32 Project ou Win 32 Console?? je n'ai que cela de dispo ... tandis que sur d'autres version j'avais Win 32 DLL ...
Ichhh. Ben normalement avec le pragma tu devrais être correct. À tu la PSDK? Sinon il te la faut pour faire de la programmation win32 sur VCExpress 2005.
___________________________________________
Les plus grands esprits trouvent toujours une solution
Ok mais c'est une version .NET. Bon on sais jamais. Encore un chose. Fais attention, c'est pas
#pragma linker("/subsystem:dll")
mais
#pragma comment(linker, "/subsystem:dll")
___________________________________________
Les plus grands esprits trouvent toujours une solution
// cpp2vba.h : Defines the entry point for the console application.
#include
"windows.h"
#define
export
__declspec
(
dllexport
)
export
void
__stdcall
HelloWorld(
void
); Pfffffff alors là en fait ca ne compile même plus j'ai comme erreure :
c:\Documents and Settings\umansky\My Documents\Visual Studio Projects\cpp2vba\cpp2vba.cpp(4): fatal error C1083: Cannot open precompiled header file: 'Debug/cpp2vba.pch': No such file or directory
Les precompiled headers servent à compiler une fois pour toutes les headers qui ne seront pas modifiés, comme windows.h, etc... Ca permet de gagner du temps pendant la compilation, mais ça donne certaines contraintes(obligation d'inclure le precompiled header dans TOUS les fichiers...).
Normalement, ta solution se compile et va former une DLL. Si il ne fait que compiler, utilise la commande Build dans les menus qui va effectuer les commandes de link.
En effet, je viens de regarder et c'est /dll au lieu de /subsystem:dll.
Rajoute aussi :
#pragma comment(linker, "/out:"Debug/nom_du_fichier.dll")
et remplace nom_du_fichier par le nom souhaité de ta DLL. Cela te générera un fichier .DLL.