Le guide complet pour exécuter des fichiers EXE Windows dans le navigateur
Dernière mise à jour : 8 juin 2026 · ~12 minutes de lecture
Exécuter un programme Windows dans un navigateur web, voilà qui semble impossible. Il n'y a pas de Windows en dessous, aucun processeur x86 garanti, pas d'installateur — juste un onglet. Et pourtant, ça fonctionne. Ce guide explique comment cela fonctionne et, plus utile encore, comment en tirer le meilleur parti. Que vous cherchiez à ressusciter un vieux jeu shareware, à récupérer un document avec un utilitaire d'un autre âge ou simplement à satisfaire votre curiosité, voici le manuel pratique.
Vous pouvez exécuter vos propres logiciels ici. Ce guide porte sur vos fichiers : un .exe Windows de votre propre disque, le dossier d'une application ou un zip de ce dossier. Il s'exécute dans votre onglet du navigateur : rien n'est envoyé sur un serveur, le fichier est lu localement et écrit sur un C:\ en mémoire qui disparaît quand vous fermez l'onglet.
🖥 Chargez votre propre EXE, dossier ou zip → Gratuit, sans compte. Idéal pour les logiciels Windows 32 bits de 1995 à 2008.
1. Pourquoi exécuter un EXE dans un navigateur ?
La réponse honnête, c'est la friction. L'âge d'or de Windows 32 bits — environ de 1995 à 2008 — a produit un catalogue immense de logiciels : utilitaires, jeux, titres éducatifs sur CD-ROM, outils professionnels, productions de la demoscene. Une grande partie fonctionne encore, mais le matériel et les systèmes d'exploitation pour lesquels ils ont été conçus disparaissent. Si vous avez un Chromebook, un iPad, un Mac récent ou une machine sous Linux, exécuter un installateur Windows de 1999 est une corvée : il vous faut une machine virtuelle, une licence Windows et de la patience.
L'exécution dans le navigateur réduit tout cela à néant. La logique de l'application voyage partout où tourne un navigateur moderne, c'est-à-dire pratiquement partout. Les motivations les plus courantes :
- La préservation du logiciel. Musées, archivistes et passionnés qui veulent garder les anciens programmes exécutables sans distribuer de machines virtuelles.
- L'enseignement sur des appareils verrouillés. Des établissements équipés de Chromebooks qui ont encore besoin d'un outil pédagogique ancien bien précis.
- Les démonstrations rapides. Montrer à un collègue un vieil outil interne sans installateur ni machine virtuelle.
- La récupération. Extraire les données d'un fichier que seul un vieil EXE sait ouvrir.
- La nostalgie. Retrouver le shareware dont vous vous souvenez, avec un modem 56k et une tour beige.
2. Comment ça marche vraiment : trois couches superposées
Il est utile de comprendre la mécanique, car les limitations en découlent directement. Trois technologies sont empilées les unes sur les autres.
La première couche est l'émulateur de processeur. Un EXE Windows est un flux d'instructions machine x86. Votre navigateur parle WebAssembly, pas x86 : il ne peut donc pas exécuter ces instructions directement. La solution est un processeur logiciel, un programme écrit en C++ qui lit chaque instruction x86 et simule son effet sur un processeur virtuel de l'époque du Pentium. Cet émulateur C++ est compilé en WebAssembly, et c'est lui que le navigateur exécute. Vous faites donc tourner, en quelque sorte, un émulateur dans un émulateur — ce qui explique précisément la lenteur.
La deuxième couche est Wine. Un EXE ne contient pas que des instructions processeur ; il fait aussi constamment appel aux bibliothèques système de Windows comme kernel32.dll, user32.dll et gdi32.dll. Wine — dont le nom récursif signifie « Wine Is Not an Emulator » (Wine n'est pas un émulateur) — est une réimplémentation à partir de zéro de ces API Windows sur une base POSIX. Quand le programme émulé appelle CreateWindowExA, Wine intercepte l'appel et exécute sa propre version compatible. Wine est développé depuis des décennies et il est remarquablement complet, mais il ne couvre pas 100 % de Windows : c'est la deuxième source d'incompatibilités.
La troisième couche est la passerelle vers le navigateur. Ce que Wine affiche doit bien apparaître quelque part. Le runtime relie le framebuffer de Wine à un <canvas> HTML, transmet votre clavier et votre souris à la file d'entrée de Wine, envoie le son vers Web Audio et fabrique un lecteur C:\ virtuel (avec un système de fichiers en mémoire) pour que Wine croie avoir affaire à un disque normal. L'ensemble de la chaîne s'exécute sur un seul thread, dans l'instance WebAssembly principale de la page : il fonctionne donc dans n'importe quel navigateur moderne, sans en-têtes ni options particulières.
Empilées, ces couches offrent environ 10 à 40 % de la vitesse processeur native. Pour un utilitaire à base de menus, c'est imperceptible. Pour un jeu 3D ou une compression lourde, cela se remarque énormément.
3. Quelles applications fonctionnent vraiment ?
Après un très grand nombre d'essais, la tendance est constante. Les catégories suivantes fonctionnent bien :
- Utilitaires et sharewares antérieurs à 2005 : gestionnaires de fichiers, éditeurs hexadécimaux, éditeurs de texte, premières interfaces de WinRAR et 7-Zip, petits outils.
- Jeux 2D de l'ère Win9x et des débuts de XP : jeux d'aventure en point-and-click, jeux de réflexion, stratégie au tour par tour, RPG en 2D. Tout ce qui tournait sans peine sur un Pentium III à 500 MHz.
- Premières suites bureautiques : Office 97 et 2000 fonctionnent la plupart du temps ; AbiWord et Gnumeric sont très fiables.
- Outils de programmation et démos : applications VB6 et premières versions de Delphi, binaires Turbo Pascal, productions classiques de la demoscene Win32.
- Logiciels éducatifs : titres sur CD-ROM de la fin des années 90, logiciels d'apprentissage des mathématiques et des langues.
Et les catégories qui peinent :
- Tout ce qui est en 64 bits. La version de Wine utilisée ici est uniquement 32 bits ; les binaires exclusivement x64 ne se chargent pas. Cherchez une ancienne version 32 bits.
- Les jeux 3D utilisant DirectX 9 ou plus, Direct3D 10/11/12 ou Vulkan. Le pipeline 3D est limité ; OpenGL 1.x fonctionne, les chaînes de shaders modernes non.
- .NET 4.5 et versions ultérieures. Le Wine fourni est antérieur à une bonne partie du .NET moderne. Les applications 2.0 et 3.5 fonctionnent parfois ; les runtimes plus récents généralement pas.
- DRM, activation en ligne, anti-triche. Ces dispositifs sondent le système d'une manière que Wine ne peut pas satisfaire, et refusent de démarrer.
- Les API postérieures à Windows 7. Applications UWP, extensions modernes du shell, interfaces à ruban d'Office 2010 et suivants.
4. Choisir la bonne variante de Wine
ExeBrowser propose quatre variantes de runtime, et faire le bon choix est le facteur qui pèse le plus sur le démarrage d'une application.
- Wine 1.7.55 · Win32 (par défaut). Le choix de tous les jours pour presque tout ce qui date de 1995 à 2008. L'essentiel du système de fichiers est téléchargé à la demande : le premier démarrage ne récupère que ce que l'application utilise, généralement 30 à 60 Mo. Commencez par celle-ci.
- Wine 1.7.55 · Win32 + Gecko. Identique à la variante par défaut, mais avec une copie hors ligne du paquet Wine Gecko intégrée. Utilisez-la quand une application ou un installateur embarque des composants d'Internet Explorer ou de l'aide HTML et propose de télécharger Gecko — par exemple 3D Pinball Space Cadet, ou les installateurs MSI qui font appel à l'aide HTML.
- Wine 3.1 · Win 3.x 16 bits uniquement. Une version spécialisée pour les programmes Windows 16 bits de 1990 à 1994 qui utilisent l'API WIN16. Elle n'exécute pas les applications Win32. Réservez-la aux sharewares 16 bits vraiment anciens.
- Boxedwine 18R2. Un instantané plus ancien du moteur, datant de 2018. La version de Wine est proche, mais l'émulateur et l'intégration diffèrent : il arrive qu'une application qui échoue avec le moteur par défaut fonctionne ici (ou l'inverse). C'est l'option « à essayer quand rien d'autre ne marche ».
Une stratégie raisonnable : essayez d'abord la variante par défaut ; si l'application mentionne HTML, IE ou l'aide, passez à +Gecko ; si elle est manifestement en 16 bits, utilisez Win 3.x ; si elle plante immédiatement avec la variante par défaut, essayez 18R2.
5. Apporter vos propres DLL et fichiers de données
Beaucoup d'applications réelles ne se résument pas à un EXE autonome : elles s'attendent à trouver des DLL, des fichiers de données ou de configuration à côté d'elles, dans leur répertoire d'installation. Si vous ne déposez que l'EXE, tout cela reste en arrière, et l'application ne trouve pas data\maps\level1.dat ou plugins\render.dll.
La solution consiste à envoyer le dossier entier (ou un zip de celui-ci) plutôt que l'EXE seul. Utilisez le sélecteur de dossier ou de zip du lanceur. Tout ce que vous fournissez est copié dans le répertoire virtuel C:\Users\username\Desktop\userapp\ de Wine avant le démarrage du programme, de sorte que les chemins relatifs sont correctement résolus. Quand un paquet contient plusieurs EXE, un sélecteur vous permet de choisir lequel lancer. Cette seule étape règle une bonne partie des cas où « ça ne démarre tout simplement pas ».
6. Résoudre les pannes courantes
« Démarrer Wine » ne se termine jamais. En général, un téléchargement des fichiers du runtime bloqué ou interrompu : un proxy d'entreprise, un pare-feu ou une extension de navigateur trop zélée qui perturbe les requêtes de plusieurs mégaoctets vers le .wasm et le système de fichiers. Dans les outils de développement → Réseau, vérifiez si les requêtes vers /boxedwine/… échouent ou restent bloquées. Essayez un autre réseau, désactivez les bloqueurs de publicité pour ce site et rechargez.
Écran noir après avoir cliqué sur Exécuter. L'application a démarré mais a planté pendant son initialisation, ou attend quelque chose d'invisible. Ouvrez la section console et cherchez les lignes qui commencent par err:. err:module:import_dll Library X.dll not found signifie qu'une DLL manque : chargez le dossier d'installation. Des codes comme 0x80004005 ou STATUS_DLL_NOT_FOUND signifient la même chose. La console est vide ? Essayez la variante 18R2.
« MSI install error 1627 ». C'est une limitation de Wine 1.7.55 — une prise en charge incomplète des actions personnalisées MSI —, pas un bogue d'ExeBrowser. Il n'existe aucun contournement dans le navigateur. Trouvez un installateur non MSI s'il en existe un, ou extrayez le MSI sur votre propre machine (avec 7-Zip ou msiextract) et envoyez le dossier obtenu.
D'une lenteur insupportable. C'est normal : vous émulez un processeur x86 dans WebAssembly. Activez le mode d'affichage « rapide » ou « basse qualité » que propose l'application, fermez les autres onglets et privilégiez un navigateur basé sur Chromium (son optimisation de WebAssembly est actuellement la plus rapide).
Le clavier ou la souris n'atteignent pas l'application. Cliquez directement sur le canvas pour lui confier la saisie ; appuyez sur Échap pour la récupérer. Wine utilise par défaut une disposition de clavier américaine : des caractères erronés peuvent donc signifier que l'application suppose une autre page de code.
Les fichiers disparaissent après un rechargement. Le C:\ virtuel vit en mémoire et il est effacé à chaque rechargement. Utilisez « Télécharger les fichiers écrits par ce programme » avant de recharger, puis renvoyez ce zip avec l'EXE la fois suivante pour retrouver votre état.
7. Sauvegarder et récupérer votre travail
Comme le système de fichiers est en mémoire, tout ce que le programme écrit — résultat d'un installateur, sauvegardes, documents générés — disparaît à la fermeture de l'onglet. Le bouton « Télécharger les fichiers écrits par ce programme » rassemble dans un zip, que vous pouvez conserver, tout ce que le programme a écrit sur C:\. C'est la méthode de référence pour récupérer le résultat d'un installateur ou les sauvegardes d'un jeu, et pour reprendre d'une session à l'autre : téléchargez le zip, puis renvoyez-le comme dossier ou zip lors de votre prochaine visite.
8. Petite histoire de Windows dans le navigateur
L'idée est antérieure à la plupart des navigateurs actuels. Au début des années 2010, des projets comme v86 démarraient des systèmes d'exploitation entiers (DOS, Windows 95, ReactOS) dans un émulateur x86 écrit en JavaScript, et JSLinux de Fabrice Bellard a montré qu'un espace utilisateur Linux complet pouvait tourner côté client. C'étaient des curiosités lentes, mais elles ont prouvé le concept. Le tournant a été WebAssembly, normalisé en 2017, qui a permis aux navigateurs d'exécuter du bytecode compilé à une vitesse proche du natif : du jour au lendemain, de grandes bases de code C et C++ comme Wine sont devenues des cibles viables. Boxedwine a obtenu une cible WebAssembly expérimentale vers 2018 (la version « 18R2 », toujours utilisée ici comme moteur de rechange), et les versions suivantes ont ajouté des systèmes de fichiers téléchargés par plages, à la demande, si bien que les démarrages prennent des secondes au lieu de minutes.
9. Questions fréquentes
Mon fichier est-il envoyé ? Non. Il est lu localement et écrit dans un système de fichiers en mémoire ; rien ne quitte votre appareil. Consultez la politique de confidentialité.
Ai-je besoin d'un ordinateur puissant ? N'importe quel navigateur moderne (Chrome, Edge, Firefox, Safari) et, idéalement, au moins 4 Go de RAM libre. C'est la vitesse d'un seul cœur qui compte le plus ; un portable de 2018 ou plus récent est tout à fait à l'aise.
Puis-je exécuter des applications 64 bits ? Non : le moteur est uniquement 32 bits. Cherchez une version 32 bits du même logiciel.
Est-ce légal ? Exécuter un logiciel que vous avez le droit d'exécuter ne pose aucun problème. Vous êtes responsable des exécutables que vous chargez ; consultez les conditions d'utilisation.
Prêt à essayer ?
Retournez au lanceur, démarrez Wine et déposez un EXE. Commencez par quelque chose de petit et d'ancien — un jeu de réflexion classique ou un utilitaire simple — pour prendre vos marques avant de vous attaquer à quelque chose d'ambitieux. Et si vous découvrez quelque chose qui fonctionne particulièrement bien (ou qui échoue de façon amusante), la page de contact vous est ouverte.
Guides associés
- Comment ouvrir un fichier .exeCe qu'est un .exe et toutes les façons d'en exécuter un : Windows, Mac, Chromebook, Linux.
- Des jeux sans rien à installerCe qui tourne sur un portable verrouillé d'école ou de bureau, et pourquoi.
- Extraire une archiveOuvrez des 7z, ZIP ou RAR dans le navigateur sans rien envoyer.
Mettez l'un de ces jeux sur votre propre site
Onze des jeux présents ici ont été écrits de zéro pour ce site, ce qui nous permet de les offrir — et c'est ce que nous faisons. Chacun peut les mettre gratuitement sur sa propre page : une ligne de HTML, sans compte, sans demander la permission et sans autre attribution qu'une ligne de crédits.