J'ai un programme simple qui charge une DLL à partir du chemin courantloadlibrary échoue pour le chemin courant avec GetLastError() == 0
#include <iostream>
#include <windows.h>
using namespace std;
auto loaddll(const char * library) {
auto dllModule = LoadLibrary(library);
if(dllModule == NULL)
throw "Can't load dll";
return dllModule;
}
int main() {
try {
auto Handle = loaddll("ISab.dll");
} catch(const char * error) {
cerr << "An Unexpected error :" << error << endl;
cerr << "Get Last Error : " << GetLastError();
}
}
la bibliothèque de chargement échoue pour chaque DLL dans le chemin en cours, mais réussit à DLL comme User.dll
si je l'ai couru la sortie sera comme
An Unexpected error :Can't load dll
Get Last Error : 0
cela échoue aussi si je spécifie le chemin complet à dll
Sinon, il pourrait être écrasé par des appels système internes, dans ce cas, lors de la sortie de 'cerr'. – zett42
Ne changez pas une question en une autre, invalidant ainsi les réponses que vous avez déjà reçues. J'ai annulé vos changements. – IInspectable