Käivitati WinCore teek Win32 programmide töötamiseks Linuxis ja macOS-is

WinCore projekt arendab Win32/WGL ühilduvuse kihti, mis võimaldab kompileerida Windowsi rakenduste koodi, kirjutatud C/C++ klassikalise Win32 API abil, et see töötaks Linuxis ja macOS-is. WinCore püüdleb klassikaliste Win32 töötlejate poole ja kasutab ristplatvormi tagapindu joonistamiseks läbi SDL3 või SDL2. Kood on kirjutatud C++-s ja levitatakse LGPLv3 litsentsi alusel.

Projekt on tulemuseks LDL teegi ümbermõtestamisele, sama autori poolt, kes jõudis järeldusele, et selle asemel, et kujundada veel üks API, on loogilisem võtta aja proovile pandud protseduuriline Win32 API ja teha sellest ülekantav erinevatele operatsioonisüsteemidele ja seadmetele. Idee on selles, et kood kirjutatakse Win32 reeglite järgi, kuid kompileeritakse ja töötab natiivselt Windowsis, Linuxis ja macOS-is.

Teek on kirjutatud rangelt C++98 jaoks maksimaalse ühilduvuse tagamiseks, kuid ekspordib puhtaid C89 pealkirjafailide, mis tagab tagurpidi ühilduvuse ja võimaldab hõlpsat sidumist Rusti, Zig, Python ja teiste keeltega C FFI kaudu. Praegu on lisatud 2 tagapinda — SDL2 ja SDL3. Tulevikus on kavas lisada tagapindu XLib ja Wayland jaoks.

Autor ei püstitanud eesmärki emuleerida kõiki Windowsi võimalusi ja keskendub ainult multimeedia ja mootori alam süsteemidele. Praegu on rakendatud 5 funktsiooni Kernel32.dll (moodulite haldamine, süsteemi aeg ja viivitused), 25 funktsiooni User32.dll (akende loomine, sõnumitsüklid, kursori positsioon ja sisendi töötlemine), 5 funktsiooni Gdi32.dll (pikseliformaadi valik, bitmapide väljund ja puhversüsteemide vahetamine) ning 4 funktsiooni Opengl32.dll (WGL konteksti loomine, kustutamine ja aktiveerimine).



Allikas: opennet.ru
Osta usaldusväärne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid 🔥 Osta usaldusväärne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid - ProHoster