O guia completo para rodar arquivos EXE do Windows no navegador
Última atualização: 8 de junho de 2026 · ~12 minutos de leitura
Rodar um programa do Windows dentro de um navegador soa como algo que não deveria ser possível. Não há Windows embaixo, não há garantia de um processador x86, não há instalador — só uma aba. Mesmo assim funciona, e este guia explica como funciona e, mais útil ainda, como tirar o máximo proveito disso. Seja para ressuscitar um velho jogo shareware, recuperar um documento preso num utilitário de outra época ou simplesmente matar a curiosidade, este é o manual prático.
Você pode rodar o seu próprio software aqui. Este guia é sobre os seus arquivos: um .exe do Windows do seu próprio disco, a pasta de um aplicativo ou um zip dela. Tudo roda dentro da sua aba do navegador: nada é enviado para um servidor, o arquivo é lido localmente e escrito num C:\ em memória que some quando você fecha a aba.
🖥 Carregue seu próprio EXE, pasta ou zip → Grátis, sem conta. Melhor com software Windows de 32 bits de 1995 a 2008.
1. Por que alguém rodaria um EXE no navegador?
A resposta honesta é atrito. A era clássica do Windows de 32 bits — mais ou menos de 1995 a 2008 — produziu um catálogo enorme de software: utilitários, jogos, títulos educativos em CD-ROM, ferramentas corporativas, produções de demoscene. Muita coisa ainda funciona, mas o hardware e os sistemas operacionais para os quais aquilo foi feito estão sumindo. Se você tem um Chromebook, um iPad, um Mac moderno ou uma máquina Linux, rodar um instalador do Windows de 1999 é um trabalhão: exige máquina virtual, licença do Windows e paciência.
A execução no navegador elimina esse atrito. A lógica do aplicativo viaja para onde houver um navegador moderno, o que hoje é praticamente em todo lugar. As motivações mais comuns são:
- Preservação de software. Museus, arquivistas e entusiastas mantendo programas antigos executáveis sem precisar distribuir máquinas virtuais.
- Ensino em equipamentos bloqueados. Escolas com Chromebooks que ainda dependem de uma ferramenta de aprendizagem antiga e específica.
- Demonstrações rápidas. Mostrar a um colega uma velha ferramenta interna sem instalador e sem VM.
- Recuperação. Extrair dados de um arquivo que só um EXE antigo sabe abrir.
- Nostalgia. Revisitar o shareware que você lembra de um modem de 56k e um gabinete bege.
2. Como funciona de verdade: três camadas empilhadas
Vale entender o maquinário, porque as limitações decorrem diretamente dele. São três tecnologias, uma sobre a outra.
A primeira camada é o emulador de CPU. Um EXE do Windows é um fluxo de instruções de máquina x86. Seu navegador fala WebAssembly, não x86, então não consegue executar essas instruções diretamente. A solução é uma CPU em software: um programa escrito em C++ que lê cada instrução x86 e simula o efeito dela num processador virtual da era Pentium. Esse emulador em C++ é compilado para WebAssembly, e o navegador roda isso. Você está, de certo modo, rodando um emulador dentro de outro emulador — que é exatamente o motivo de ser lento.
A segunda camada é o Wine. Um EXE não contém só instruções de CPU; ele chama o tempo todo bibliotecas de sistema do Windows como kernel32.dll, user32.dll e gdi32.dll. O Wine — cujo nome recursivo quer dizer “Wine não é um emulador” — é uma reimplementação do zero dessas APIs do Windows sobre uma base POSIX. Quando o programa emulado chama CreateWindowExA, o Wine intercepta e executa a própria versão compatível. O Wine tem décadas de profundidade e é espantosamente completo, mas não é 100% do Windows, e essa é a segunda fonte de incompatibilidade.
A terceira camada é a ponte com o navegador. O que o Wine desenha precisa aparecer em algum lugar. O runtime mapeia o framebuffer do Wine para um <canvas> HTML, encaminha teclado e mouse para a fila de entrada do Wine, manda o áudio para o Web Audio e fabrica um disco C:\ virtual (com um sistema de arquivos em memória) para que o Wine acredite estar olhando para um disco normal. Todo esse encadeamento roda numa única thread, na instância WebAssembly principal da página, então funciona em qualquer navegador moderno sem cabeçalhos nem flags especiais.
Empilhadas, as camadas entregam algo entre 10% e 40% da velocidade nativa de CPU. Num utilitário feito de menus isso é invisível. Num jogo 3D ou numa compressão pesada é bem perceptível.
3. Quais aplicativos realmente rodam?
Depois de muitos testes, o padrão é consistente. As categorias a seguir funcionam bem:
- Utilitários e shareware anteriores a 2005 — gerenciadores de arquivos, editores hexadecimais, editores de texto, as primeiras interfaces do WinRAR e do 7-Zip, ferramentas pequenas.
- Jogos 2D da era Win9x e do começo do XP — aventuras de apontar e clicar, jogos de quebra-cabeça, estratégia por turnos, RPGs 2D. Qualquer coisa que fosse feliz num Pentium III de 500 MHz.
- Suítes de escritório antigas — Office 97 e 2000 funcionam na maior parte; AbiWord e Gnumeric são bem confiáveis.
- Ferramentas de programação e demos — aplicativos em VB6 e no Delphi antigo, binários do Turbo Pascal, produções clássicas de demoscene em Win32.
- Software educativo — títulos em CD-ROM do fim dos anos 1990, tutores de matemática e de idiomas.
E as categorias que penam:
- Qualquer coisa de 64 bits. A compilação do Wine aqui é só de 32 bits; binários exclusivamente x64 não carregam. Procure uma versão antiga de 32 bits.
- Jogos 3D com DirectX 9 ou mais novo, Direct3D 10/11/12 ou Vulkan. O pipeline 3D é limitado; OpenGL 1.x funciona, pilhas de shaders modernas não.
- .NET 4.5 em diante. O Wine embutido é anterior a boa parte do .NET moderno. Aplicativos de 2.0 e 3.5 às vezes funcionam; runtimes mais novos normalmente não.
- DRM, ativação online, anticheat. Eles sondam o sistema de maneiras que o Wine não consegue satisfazer e se recusam a iniciar.
- APIs posteriores ao Windows 7. Aplicativos UWP, extensões modernas do shell, interfaces de faixa de opções do Office 2010 em diante.
4. Escolhendo a variante certa do Wine
O ExeBrowser oferece quatro variantes de runtime, e escolher a certa é o maior fator isolado para um aplicativo iniciar ou não.
- Wine 1.7.55 · Win32 (padrão). A escolha do dia a dia para quase tudo de 1995 a 2008. A maior parte do sistema de arquivos é baixada sob demanda, então o primeiro boot só puxa o que o aplicativo toca — normalmente de 30 a 60 MB. Comece por aqui.
- Wine 1.7.55 · Win32 + Gecko. Igual ao padrão, mas com uma cópia offline do pacote Wine Gecko embutida. Use quando um aplicativo ou instalador embute componentes do Internet Explorer ou da ajuda em HTML e pede para baixar o Gecko — por exemplo o Pinball 3D Space Cadet, ou instaladores MSI que chamam a ajuda HTML.
- Wine 3.1 · só Win 3.x de 16 bits. Uma compilação especializada para programas Windows de 16 bits de 1990 a 1994 que usam a API WIN16. Ela não roda aplicativos Win32. Recorra a ela com shareware genuinamente antigo de 16 bits.
- Boxedwine 18R2. Um retrato de 2018 do motor. A versão do Wine é parecida, mas o emulador e a integração são diferentes, então de vez em quando um aplicativo que falha no motor padrão funciona aqui (ou o contrário). É a opção “tente isto quando nada mais funcionar”.
Uma estratégia razoável: tente primeiro o padrão; se o aplicativo menciona HTML, IE ou ajuda, mude para +Gecko; se é claramente de 16 bits, use o Win 3.x; se ele fecha na hora no padrão, tente o 18R2.
5. Trazendo suas próprias DLLs e arquivos de dados
Muitos aplicativos reais não são um único EXE autossuficiente — eles esperam DLLs, arquivos de dados ou configuração ao lado, no diretório de instalação. Soltar só o EXE deixa tudo isso para trás, e o aplicativo não acha data\maps\level1.dat ou plugins\render.dll.
A solução é enviar a pasta inteira (ou um zip dela) em vez do EXE sozinho. Use o seletor de pasta ou de zip no carregador. Tudo o que você fornecer é copiado para o diretório virtual C:\Users\username\Desktop\userapp\ do Wine antes de o programa rodar, de modo que buscas por caminho relativo funcionem. Quando um pacote contém mais de um EXE, um seletor deixa você escolher qual iniciar. Esse único passo resolve boa parte dos casos de “simplesmente não inicia”.
6. Resolvendo as falhas mais comuns
O “Iniciar o Wine” nunca termina. Normalmente é um download dos arquivos do runtime bloqueado ou travado — um proxy corporativo, um firewall ou uma extensão agressiva do navegador atrapalhando as requisições de vários megabytes do .wasm e do sistema de arquivos. No DevTools → Rede, veja se as requisições para /boxedwine/… estão falhando ou pendurando. Tente outra rede, desative bloqueadores de anúncio para este site e recarregue.
Tela preta depois de dar Executar. O aplicativo iniciou, mas quebrou durante a inicialização ou está esperando por algo invisível. Abra a seção do console e procure linhas começando com err:. Um err:module:import_dll Library X.dll not found significa DLL faltando — envie a pasta de instalação. Códigos como 0x80004005 ou STATUS_DLL_NOT_FOUND querem dizer o mesmo. Console vazio? Tente a variante 18R2.
“MSI install error 1627”. É uma limitação do Wine 1.7.55 — suporte incompleto a ações personalizadas de MSI, não um bug do ExeBrowser. Não há contorno dentro do navegador. Procure um instalador que não seja MSI, se existir, ou extraia o MSI na sua própria máquina (7-Zip ou msiextract) e envie a pasta extraída.
Impossivelmente lento. É o esperado — você está emulando uma CPU x86 dentro do WebAssembly. Ative qualquer modo de renderização “rápido” ou “baixa qualidade” que o aplicativo ofereça, feche outras abas e prefira um navegador baseado em Chromium (a otimização de WebAssembly dele é hoje a mais rápida).
Teclado e mouse não chegam ao aplicativo. Clique direto no canvas para capturar a entrada; aperte Esc para liberar. O Wine assume por padrão um layout de teclado americano, então caracteres errados podem indicar uma página de código diferente da que o aplicativo espera.
Os arquivos somem ao recarregar. O C:\ virtual vive na memória e é apagado ao recarregar. Use “Baixar os arquivos escritos por este programa” antes de recarregar e, na próxima vez, envie esse zip junto com o EXE para restaurar o seu estado.
7. Salvando e recuperando o seu trabalho
Como o sistema de arquivos fica na memória, tudo o que o programa escrever — saída de instalador, jogos salvos, documentos gerados — desaparece quando a aba fecha. O botão “Baixar os arquivos escritos por este programa” empacota num zip tudo o que o programa escreveu em C:\ para você guardar. É a maneira canônica de extrair o resultado de um instalador ou os saves de um jogo, e também de levar o estado de uma sessão para outra: baixe o zip e reenvie como pasta ou zip na próxima visita.
8. Uma breve história do Windows dentro do navegador
A ideia é anterior à maioria dos navegadores atuais. No começo dos anos 2010, projetos como o v86 davam boot em sistemas operacionais inteiros (DOS, Windows 95, ReactOS) dentro de um emulador x86 escrito em JavaScript, e o JSLinux de Fabrice Bellard mostrou um userland Linux completo rodando no cliente. Eram curiosidades lentas, mas provaram o conceito. O ponto de virada foi o WebAssembly, padronizado em 2017, que permitiu aos navegadores rodar bytecode compilado perto da velocidade nativa — de repente, bases de código em C e C++ do tamanho do Wine viraram alvos viáveis. O Boxedwine ganhou um alvo experimental de WebAssembly por volta de 2018 (a compilação “18R2” ainda usada aqui como motor alternativo), e versões posteriores acrescentaram sistemas de arquivos buscados por faixa sob demanda, de modo que os boots levam segundos em vez de minutos.
9. Perguntas frequentes
Meu arquivo é enviado para algum lugar? Não. Ele é lido localmente e escrito num sistema de arquivos em memória; nada sai do seu dispositivo. Veja a política de privacidade.
Preciso de um computador rápido? Qualquer navegador moderno (Chrome, Edge, Firefox, Safari) e, de preferência, 4 GB ou mais de RAM livre. O que mais importa é a velocidade de um núcleo só; um notebook de 2018 ou mais novo fica confortável.
Dá para rodar aplicativos de 64 bits? Não — o motor é só de 32 bits. Procure uma compilação de 32 bits do mesmo software.
Isto é legal? Rodar software que você tem o direito de rodar é tranquilo. Você é responsável pelos executáveis que carregar; veja os termos de uso.
Pronto para experimentar?
Volte ao carregador, inicie o Wine e solte um EXE. Comece com algo pequeno e antigo — um quebra-cabeça clássico ou um utilitário simples — para pegar o jeito antes de partir para algo ambicioso. E se você descobrir algo que funciona especialmente bem (ou que falha de um jeito engraçado), a página de contato está aberta.
Guias relacionados
Coloque um destes jogos no seu próprio site
Onze dos jogos daqui foram escritos do zero para este site, o que os torna nossos para dar — e é o que fazemos. Livres para qualquer pessoa colocar na própria página: uma linha de HTML, sem conta, sem pedir permissão e sem mais atribuição do que uma linha de crédito.