Merci sympa
C'est beaucoups plus clair maintenant
#define _WIN32_WINNT 0x0501
Voilà pourquoi je n'y arrive pas
Merci en tout cas, j'avais trouvé un peu de docs sur le sujet, mais comme tout était en anglais cette subtilité m'avais échappée
Merci beaucoups, pour ton aide
voici le code fonctionnel, je l'ai testé avec un debugger il marche très bien
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| #define _WIN32_WINNT 0x0501
#include <windows.h>
#include <iostream>
using namespace std;
int main()
{
BOOL present;
if ( !CheckRemoteDebuggerPresent( GetCurrentProcess(),&present ))
{
cout << "Echec de la fonction\n";
}
else
{
cout << "Debugger : ";
cout << ( ( present ) ? ( "oui\n" ) : ( "non\n" ) );
}
system("PAUSE");
return 0;
} |
Cet API est très bien, car elle n'est pas sensible, aux anti-protections, qui detècte IsDebuggerPresent, par contre elle est visible dans l'appel aux API, en essayant de cacher les appels dans le debugger ça peut faire une protection intéréssante
Partager