détecter si l’application s’exécute sur une boîte virtuelle

Je suis passé par quelques liens dans stackoverflow. Mais le code donné ici ne fonctionne pas pour la boîte virtuelle. J’ai aussi essayé le redpill mais ça ne marche pas aussi. mon application fonctionnera à la fois sous linux et sous windows (de préférence).
S’il vous plaît laissez-moi savoir si quelqu’un a une solution.

Edit: le lien de Preet Sangha ne fonctionne pas aussi bien

VBox 1.0 utilise une méthode différente. Vérifiez http://spth.virii.lu/eof2/articles/WarGame/vboxdetect.html

à partir de http://www.gedzac.com/rrlf.dr.eof.eZine/articles/WarGame/vboxdetect.html

Vérifiez si le pseudo-périphérique \\.\VBoxMiniRdrDN existe dans le système (vous avez besoin de CreateFile ()).

 #include  int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { if(CreateFile("\\\\.\\VBoxMiniRdrDN",GENERIC_READ,FILE_SHARE_READ, NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL) != INVALID_HANDLE_VALUE) { MessageBox(NULL,"VBox detected!","Warning",MB_OK|MB_ICONWARNING); } else { MessageBox(NULL,"Not inside VBox","Info",MB_OK|MB_ICONINFORMATION); } }