A biblioteca WinCore para executar programas Win32 em Linux и macOS

O projeto WinCore desenvolve uma camada de compatibilidade com Win32/WGL, permitindo a compilação de código. Windows-programas escritos em C/C++ usando a API Win32 clássica, para serem executados em Linux и macOSO WinCore intercepta manipuladores Win32 clássicos e usa 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 de uma reformulação da biblioteca LDL pelo mesmo autor, que concluiu que, em vez de criar mais uma API, seria mais lógico utilizar a consagrada API procedural Win32 e torná-la portátil para diferentes sistemas operacionais e dispositivos. A ideia é que o código seja escrito de acordo com as regras do Win32, mas compilado nativamente e executado em outros sistemas. Windows, Linux и macOS.

A biblioteca foi escrita em C++98 estrito para máxima portabilidade, mas exporta arquivos de cabeçalho C89 puros, garantindo compatibilidade com versões anteriores e permitindo fácil integração com Rust, Zig, Python e outras linguagens via FFI C. Dois backends estão disponíveis atualmente: SDL2 e SDL3. Backends para XLib e Wayland estão planejados para o futuro.

O autor não tem como objetivo emular todas as possibilidades. Windows e se concentra apenas nos subsistemas de multimídia e de motor gráfico. Atualmente, estão implementadas 5 funções do Kernel32.dll (gerenciamento de módulos, tempo do sistema e latência), 25 funções do User32.dll (criação de janelas, loops de mensagens, posição do cursor e tratamento de entrada), 5 funções do Gdi32.dll (seleção de formato de pixel, saída de bitmap e troca de buffer) e 4 funções do Opengl32.dll (criação, exclusão e ativação de contextos WGL).



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