Essayez une autre façon: appeler la fonction de dll en obtenant le pointeur avec GetProcAddress;
Exemple: C++ calling a dll
Mise à jour:
VLC media player téléchargé en version 7zip;
choisir l'option avec GetProcAddress:
#include <windows.h>
#include <iostream>
int main()
{
//VLC_PUBLIC_API const char * libvlc_get_version(void);
//Set directory path with libvlccore.dll and libvlc.dll
SetCurrentDirectory("C:/Program Files/VideoLAN/VLC");
HINSTANCE hGetProcIDDLL = LoadLibrary("libvlc.dll");
FARPROC lpfnGetProcessID = GetProcAddress(HMODULE(hGetProcIDDLL),"libvlc_get_version");
if(lpfnGetProcessID == 0)
{
std::cout << "GetProcAddress failed";
return 1;
}
typedef const char * (__stdcall * pICFUNC)(void);
pICFUNC MyFunction = pICFUNC(lpfnGetProcessID);
std::cout << MyFunction() << std::endl;
//output: 1.1.4 The Luggage
return 0;
}
Il fonctionne très bien pour moi, mais vous devez changer le jeu de caractères de défaut Unicode multi-octets: Projet -> Propriétés -> Général -> Jeu de caractères ;
Essayez-le! et bonne chance !;)
Mise à jour 2:
Je suis lib, voici la trace de cmd:
Microsoft Windows XP [Version 5.1.2600] (C) Copyright 1985 -2001 Microsoft Corp.
C: \ Program Files \ Microsoft Visual studio 9.0 \ VC \ bin> vcvars32.bat
C : \ Program Files \ Microsoft Visual Studio 9.0 \ VC \ bin> "C: \ Program Fichiers \ Microsoft Visual Studio 9.0 \ Common7 \ Tools \ vsvars32.bat" Environnement de définition pour l'utilisation Microsoft Visual Studio 2008 x86 outils.
C: \ Program Files \ Microsoft Visual Studio 9.0 \ VC \ bin> Dumpbin.exe/exports « D: \ My Téléchargements \ VLC \ vlc-1.1.4-win32 \ vlc-1.1.4 \ libvlc.dll »
"C: \ Documents and Settings \ Eugene \ Mes documents \ Visual studio 2008 \ Projects \ VLCApp \ VLCApp \ libvlc.def"
C: \ Program Files \ Microsoft Visual Studio 9.0 \ VC \ bin> lib /def: "C: \ Documents and S ettings \ Eugene \ Mes documents \ de Visual Studio de 2008 \ Projects \ VLCApp \ VLCApp \ libvlc.def "/ out:" C: \ Documents and Settings \ Eugene \ Mes Documents \ de Visual Studio 2008 \ projet s \ VLCApp \ VLCApp \ libvlc.lib " /machine: x86 Bibliothèque Microsoft (R) Version du gestionnaire 9.00.30729.01 Copyright (C) Microsoft Corporation. Tous droits réservés.
Création bibliothèque C: \ Documents and Settings \ Eugene \ Mes Documents \ de Visual Studio de 2008 \ Projects \ VLCApp \ VLCApp \ libvlc.lib et objet C: \ Documents and Settings \ Euge ne \ Mes documents \ visuelle studio 2008 \ Projects \ VLCApp \ VLCApp \ libvlc.exp
C: \ Program Files \ Microsoft Visual studio 9.0 \ VC \ bin>
Merci pour la réponse, j'ai essayé cet exemple mais ça ne semblait pas k. – paj7777
@ paj7777 Connaissez-vous les paramètres des fonctions d'exportation? Est-ce que cette DLL est votre propre bibliothèque ou un tiers?))) – Edward83
J'ai les paramètres que j'ai les fichiers d'en-tête, la DLL fait partie de vlc, si vous suivez le lien que j'ai fourni qui vous amènera au wiki pour vlc. Merci pour l'aide. – paj7777