Foi apresentada a biblioteca WinCore para executar programas Win32 no Linux e macOS

O projeto WinCore desenvolve uma camada de compatibilidade com Win32/WGL, permitindo compilar código de programas Windows escritos em C/C++ utilizando a API clássica Win32, para execução no Linux e macOS. O WinCore intercepta os manipuladores clássicos do Win32 e utiliza backends multiplataforma para renderização via SDL3 ou SDL2. O código é escrito em C++ e é distribuído sob a licença LGPLv3.

O projeto surgiu como resultado de uma reinterpretação da biblioteca LDL, do mesmo autor, que concluiu que, em vez de projetar mais uma API, fazia mais sentido pegar uma interface de procedimentos testada pelo tempo, a Win32 API, e torná-la portátil para diferentes sistemas operacionais e dispositivos. A ideia é que o código é escrito conforme as regras do Win32, mas é compilado e executado nativamente em Windows, Linux e macOS.

A biblioteca é escrita em C++98 estrito para máxima portabilidade, mas exporta arquivos de cabeçalho em C89 puros, o que garante compatibilidade retroativa e permite facilmente criar bindings para Rust, Zig, Python e outras linguagens através de C FFI. Até o momento, foram adicionados 2 backends — SDL2 e SDL3. No futuro, planejamos adicionar backends para XLib e Wayland.

O autor não tem a intenção de emular todas as funcionalidades do Windows e foca apenas nas subsistemas para multimídia e motores. Atualmente, estão implementadas 5 funções do Kernel32.dll (gerenciamento de módulos, tempo do sistema e atrasos), 25 funções do User32.dll (criação de janelas, ciclos de mensagens, posição do cursor e processamento de entrada), 5 funções do Gdi32.dll (seleção de formato de pixel, saída de bitmaps e alternância de buffers) e 4 funções do Opengl32.dll (criação, remoção e ativação de contextos WGL).



Fonte: opennet.ru
Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster