„WinCore“ biblioteka, skirta „Win32“ programoms paleisti Linux и macOS

„WinCore“ projektas kuria suderinamumo sluoksnį su „Win32/WGL“, leidžiantį kompiliuoti kodą. Windows-programos, parašytos C/C++ kalba naudojant klasikinę Win32 API, skirtos paleisti Linux и macOS„WinCore“ perima klasikinius „Win32“ tvarkytuvus ir naudoja kelių platformų posistemes atvaizdavimui per SDL3 arba SDL2. Kodas parašytas C++ kalba ir platinamas pagal LGPLv3 licenciją.

Šis projektas buvo to paties autoriaus permąstytos LDL bibliotekos rezultatas. Jis padarė išvadą, kad užuot kūrus dar vieną API, logiškiau paimti laiko patikrintą „Win32“ procedūrinę API ir padaryti ją perkeliamą į skirtingas operacines sistemas ir įrenginius. Idėja yra ta, kad kodas rašomas pagal „Win32“ taisykles, bet kompiliuojamas natyviai ir veikia... Windows, Linux и macOS.

Biblioteka parašyta griežta C++98 kalba, siekiant maksimalaus perkeliamumo, tačiau eksportuoja grynus C89 antraštės failus, užtikrindama atgalinį suderinamumą ir leisdama lengvai susieti ją su Rust, Zig, Python ir kitomis kalbomis per C FFI. Šiuo metu yra dvi posistemės: SDL2 ir SDL3. Ateityje planuojamos posistemės XLib ir Wayland kalboms.

Autorius nekelia tikslo atkartoti visų galimybių Windows ir daugiausia dėmesio skiria tik multimedijos ir variklio posistemiams. Šiuo metu įdiegtos 5 „Kernel32.dll“ funkcijos (modulių valdymas, sistemos laikas ir delsa), 25 „User32.dll“ funkcijos (langų kūrimas, pranešimų ciklai, žymeklio padėtis ir įvesties apdorojimas), 5 „Gdi32.dll“ funkcijos (pikselių formato pasirinkimas, rastrinio vaizdo išvestis ir buferio perjungimas) ir 4 „Opengl32.dll“ funkcijos (WGL kontekstų kūrimas, ištrynimas ir aktyvinimas).



Šaltinis: opennet.ru
Pirkite patikimą prieglobą svetainėms su DDoS apsauga, VPS VDS serveriais 🔥 Įsigykite patikimą svetainių talpinimą su DDoS apsauga, VPS VDS serveriais | ProHoster