Emva konyaka wophuhliso kunye neenguqulelo zovavanyo ezingama-30, ukukhutshwa okuzinzileyo kokuphunyezwa okuvulekileyo kweWin32 API kwaboniswa - iWine 7.0, ebandakanya iinguqu ezingaphezu kwe-9100. Iimpumelelo eziphambili zenguqulelo entsha zibandakanya ukuguqulelwa kweemodyuli ezininzi zeWayini kwifomathi ye-PE, inkxaso yemixholo, ukwandiswa kwestakhi yeentonga zovuyo kunye nezixhobo ezifakiweyo ezinojongano lweHID, kunye nokuphunyezwa koyilo lweWoW64 lokuqhuba iinkqubo ezingama-32-bit 64-bit okusingqongileyo.
Iwayini iqinisekisile ukusebenza ngokupheleleyo kwe-5156 (unyaka odlulileyo i-5049) iinkqubo ze-Windows, enye i-4312 (unyaka odlulileyo 4227) iinkqubo zisebenza ngokugqibeleleyo kunye nezicwangciso ezongezelelweyo kunye nee-DLL zangaphandle. Iinkqubo ze-3813 (iminyaka eyi-3703 edlulileyo) zineengxaki ezincinci zokusebenza ezingaphazamisi ukusetyenziswa kwemisebenzi ephambili yezicelo.
Izinto ezintsha eziphambili kwiWine 7.0:
- Iimodyuli kwifomathi ye-PE
- Phantse zonke ii-DLL ziguqulelwe ukusebenzisa i-PE (Ephathekayo Ephunyeziweyo, esetyenziswa kwiWindows) ifomathi yefayile ephunyeziweyo endaweni ye ELF. Ukusetyenziswa kwe-PE kusombulula iingxaki ngokuxhasa iinkqubo ezahlukeneyo zokukhusela ikopi eziqinisekisa ubunikazi beemodyuli zesistim kwidiski nakwimemori.
- Ukukwazi ukusebenzisana neemodyuli ze-PE kunye neelayibrari ze-Unix usebenzisa umnxeba wenkqubo ye-kernel ye-NT iphunyeziwe, ekuvumela ukuba ufihle ukufikelela kwikhowudi ye-Unix kwii-debuggers ze-Windows kunye nokubeka iliso kubhaliso lwentambo.
- Ii-DLL ezakhelwe ngaphakathi ngoku zilayishwe kuphela ukuba kukho ifayile ye-PE ehambelanayo kwidiski, kungakhathaliseki ukuba ilayibrari yokwenyani okanye i-stub. Olu tshintsho luvumela usetyenziso ukuba lusoloko lubona ukubophelela okuchanekileyo kwiifayile zePE. Ukukhubaza le ndlela yokuziphatha, ungasebenzisa i WINEBOOTSTRAPMODE eguquguqukayo.
- WoW64
- Uyilo lweWoW64 (i-64-bit Windows-on-Windows) luphunyeziwe, likuvumela ukuba usebenzise ii-32-bit zeWindows kwiinkqubo ze-64-bit Unix. Inkxaso iphunyezwa ngokudityaniswa komaleko oguqulela iifowuni ze-32-bit ze-NT kwiifowuni ze-64-bit kwi-NTDLL.
- Iileya ze-WoW64 zilungiselelwe uninzi lwamathala eencwadi e-Unix kwaye zivumela iimodyuli ze-32-bit PE ukufikelela kwiilayibrari ze-Unix ezingama-64. Nje ukuba zonke iimodyuli ziguqulelwe kwifomathi ye-PE, kuyakwenzeka ukuqhuba ii-aplikeshini ze-32-bit Windows ngaphandle kokufaka iilayibrari ze-32-bit ze-Unix.
- Imixholo
- Inkxaso yomxholo iphunyeziwe. Imixholo yoyilo "Ukukhanya", "iBlue" kunye ne "Classic Blue" ifakiwe, enokuthi ikhethwe ngeWineCfg configurator.
- Yongezwe ukukwazi ukwenza ngokwezifiso imbonakalo yazo zonke izilawuli zojongano ngemixholo. Imbonakalo yezinto ihlaziywa ngokuzenzekelayo emva kokutshintsha umxholo woyilo.
- Inkxaso yomxholo yongezwe kuzo zonke izicelo ezakhelweyo zeWayini. Izicelo zilungelelaniswe kwizikrini ezinoxinano lwepixel ephezulu (High DPI).
- Inkqubo engaphantsi yemizobo
- Ithala leencwadi elitsha leWin32u longeziwe, elibandakanya iinxalenye zeGDI32 kunye ne-USER32 amathala eencwadi anxulumene nokulungiswa kwemizobo kunye nolawulo lwefestile kwinqanaba le-kernel. Kwixesha elizayo, umsebenzi uyakuqala ekufakeni izixhobo zomqhubi ezifana newinex32.drv kunye newinemac.drv ukuya kwiWin11u.
- Umqhubi weVulkan uxhasa i-API yemifanekiso ye-Vulkan 1.2.201.
- Kubonelelwe ngenkxaso yokukhupha izinto zejiyometri eziqanduselweyo ngeDirect2D API, ekwaziyo ukujonga ukuba ukucofa kuyabetha (uvavanyo lokubetha).
- I-Direct2D API inikezela ngenkxaso yokuqala yeziphumo ezibonakalayo ezisetyenziswayo usebenzisa i-ID2D1Effect interface.
- I-Direct2D API yongeze inkxaso ye-ID2D1MultiThread interface, esetyenziselwa ukuququzelela ukufikelela okukodwa kwizixhobo kwizicelo ezinemisonto emininzi.
- Isethi yeWindowsCodecs yamathala eencwadi ibonelela ngenkxaso yokuchaza imifanekiso kwi-WMP (iFoto yeWindows Media) kunye nemifanekiso ekhowudiweyo kwifomathi ye-DDS (DirectDraw Surface). Asisaxhasi imifanekiso yokufaka iikhowudi kwifomathi ye-ICNS (ye-macOS), engaxhaswayo kwiWindows.
- I-Direct3D
- Injini entsha yonikezelo iphuculwe kakhulu, iguqulela iifowuni zeDirect3D kwi-API yemizobo yeVulkan. Kwiimeko ezininzi, inqanaba lenkxaso ye-Direct3D 10 kunye ne-11 kwi-injini esekelwe kwi-Vulkan iye yaziswa ngokulinganayo kunye ne-injini endala ye-OpenGL. Ukwenza i-injini yonikezelo ye-Vulkan, seta i-Direct3D yerejistri eguquguqukayo "renderer" ibe "vulkan".
- Iimpawu ezininzi ze-Direct3D 10 kunye ne-11 ziphunyeziwe, kubandakanywa iMixholo eMiselweyo, izinto zombuso ezisebenza kumxholo wesixhobo, ukutshatyalaliswa okuqhubekayo kwi-buffers, ukucinywa kweembono ze-texture ngaphandle kwe-odolo, ukukopisha idatha phakathi kwemithombo kwiifomathi ezingenakuchwetheza (DXGI_FORMAT_BC3_TYPELESS, DXGI_FORMAT_R32G32B32B), njl. .
- Inkxaso eyongeziweyo yoqwalaselo lweemonitha ezininzi, okukuvumela ukuba ukhethe esweni ukubonisa usetyenziso lweDirect3D kwimowudi yesikrini esigcweleyo.
- I-DXGI API inikeza ukulungiswa kwe-gamma yesikrini, enokusetyenziswa yi-Direct3D 10 kunye ne-11 esekelwe kwizicelo zokutshintsha ukukhanya kwesikrini. Ukufunyanwa okuvunyiweyo kwezixhobo zokubala zesakhelo senyani (SwapChain).
- I-Direct3D 12 yongeza inkxaso yenguqulo ye-1.1 yeengcambu zesignesha.
- Kwikhowudi yonikezelo ngeVulkan API, ukusebenza kakuhle kwemibuzo kuphuculwe xa inkqubo ixhasa i-VK_EXT_host_query_reset extension.
- Ukongezwa amandla okuvelisa i-framebuffers ebonakalayo (i-SwapChain) nge-GDI ukuba i-OpenGL okanye i-Vulkan ayinakusetyenziselwa umboniso, umzekelo, xa ukhupha ifestile kwiinkqubo ezahlukeneyo, umzekelo, kwiinkqubo ezisekelwe kwi-CEF (i-Chromium Embedded Framework) isakhelo.
- Xa usebenzisa i-backend ye-shader ye-GLSL, isilungisi "esichanekileyo" siqinisekiswa kwimiyalelo ye-shader.
- I-DirectDraw API yongeza inkxaso yokunikezelwa kwe-3D kwimemori yesistim usebenzisa izixhobo zesoftware ezinjenge "RGB", "MMX" kunye ne "Ramp".
- I-AMD Radeon RX 3M, i-AMD Radeon RX 5500/6800 XT/6800 XT, i-AMD Van Gogh, i-Intel UHD Graphics 6900 kunye namakhadi e-NVIDIA GT 630 yongezwe kwi-database yekhadi lemizobo ye-Direct1030D.
- Iqhosha elithi "Sebenzisa iGLSL" lisusiwe kwi-HKEY_CURRENT_USER\Software\Wine\Direct3D registry, endaweni yoko, ukuqala ngeWine 5.0, kufuneka usebenzise "shader_backend".
- Ukuxhasa iDirect3D 12, ngoku ufuna ubuncinci inguqulelo 3 yethala leencwadi le-vkd1.2d.
- D3DX
- Ukuphunyezwa kwe-D3DX 10 kuye kwaphucula inkxaso yesakhelo sembonakalo yembonakalo kunye nenkxaso eyongezelelweyo yefomathi yomfanekiso weWindows Media Photo (JPEG XR)
- Imisebenzi eyongeziweyo yokudala i-texture enikwe kwi-D3DX10, njenge-D3DX10CreateTextureFromMemory ().
- I-ID3DX10Sprite kunye ne-ID3DX10Font ujongano lwesoftware ziye zaphunyezwa ngokuyinxenye.
- Isandi kunye nevidiyo
- Izongezo ze-GStreamer zeDirectShow kunye nesakhelo seMedia Foundation zidityanisiwe kwi-WineGStreamer yangasemva eqhelekileyo, ekufuneka ilula uphuhliso lomxholo omtsha we-APIs.
- Ngokusekwe kwi-WineGStreamer backend, izinto zeWindows Media ziphunyeziwe ukuze zifundwe ngokuhambelanayo kunye ne-asynchronous.
- Ukuphunyezwa kwesakhelo seMedia Foundation kuye kwacokiswa ngakumbi, inkxaso yokusebenza kwe-IMFPMediaPlayer kunye nesampulu yolwabiwo yongeziweyo, kwaye inkxaso ye-EVR kunye ne-SAR yokubonelela nge-buffers iphuculwe.
- Ithala leencwadi le-wineqtdecoder, elibonelela ngedikhowuda yefomathi ye-QuickTime, lisusiwe (zonke iikhowudi ngoku zisebenzisa i-GStreamer).
- Izixhobo zokufaka
- Isitaki sezixhobo zokufaka ezixhasa iprotocol yeHID (Human Interface Devices) iphuculwe kakhulu, ibonelela ngezakhono ezinjengokwahlulahlula izichazi zeHID, ukusetyenzwa kwemiyalezo yeHID, kunye nokubonelela ngabaqhubi abancinci beHID.
- Kwi-backends yomqhubi we-winebus.sys, ukuguqulelwa kweenkcazo zesixhobo kwimiyalezo ye-HID kuphuculwe.
- Yongeza umva omtsha we-DirectInput wezinto zovuyo ezixhasa i-HID protocol. Ukukwazi ukusebenzisa iziphumo zempendulo kwi-joystick kuphunyeziwe. Iphaneli yokulawula yovuyo ephuculweyo. Unxibelelwano olulungiselelweyo kunye nezixhobo ezihambelanayo ze-XInput. Kwi-WinMM, inkxaso ye-joystick iye yasiwa kwi-DInput, endaweni yokusebenzisa umva we-evdev kwi-Linux kunye ne-IOHID kwi-macOS IOHID. Umqhubi omdala we-joystick winejoystick.drv isusiwe.
- Iimvavanyo ezintsha zongezwe kwimodyuli ye-DInput, ngokusekelwe kusetyenziso lwezixhobo ze-HID ezibonakalayo kwaye azifuni isixhobo somzimba.
- Umbhalo kunye neefonti
- Ifonti eyongeziweyo Seta into kwi-DirectWrite.
- I-RichEdit isebenzisa ngokuchanekileyo i-TextHost interface.
- I-Kernel (i-Windows Kernel Interfaces)
- Xa usebenzisa ifayile engachazwanga ephunyezwayo (efana ne 'wine foo.msi') kwiWayini, start.exe ibizwa ngoku, ebiza abaphathi abayanyaniswa nohlobo lwefayile.
- Inkxaso eyongeziweyo yeendlela zongqamaniso NtAlertThreadByThreadId kunye neNtWaitForAlertByThreadId, ezifana neefutexes kwiLinux.
- Inkxaso eyongeziweyo yezinto ze-NT zokulungisa ezisetyenziselwa ukulungisa imisebenzi yekernel.
- Inkxaso eyongeziweyo yamaqhosha obhaliso aguqukayo ukugcina idatha yokusebenza.
- C Ixesha lokudlala
- Ixesha lokusebenza le-C liphumeza uluhlu olupheleleyo lwemisebenzi yezibalo, ethwalwa ikakhulu kwithala leencwadi leMusl.
- Onke amaqonga e-CPU abonelela ngenkxaso echanekileyo kwimisebenzi yeendawo ezidadayo.
- Iimpawu zenethiwekhi
- Imowudi ephuculweyo yokuhambelana ye-Internet Explorer 11 (IE11), esetyenziswa ngokungagqibekanga ekusetyenzweni kwamaxwebhu eHTML.
- Ilayibrari ye-mshtml isebenzisa imowudi yeJavaScript ye-ES6 (ECMAScript 2015), ebonelela ngenkxaso kwiifitsha ezifana ne-let expression kunye nento yeMaphu.
- Ufakelo lweepakethe ze-MSI nezongezelelo kwinjini yeGecko kuluhlu olusebenzayo lweWayini ngoku kwenziwa xa kuyimfuneko, hayi ngexesha lohlaziyo lweWayini.
- Inkxaso eyongeziweyo yeprotocol ye-DTLS.
- Inkonzo ye-NSI (i-Network Store Interface) iphunyeziwe, igcina kwaye idlulisa ulwazi malunga neendlela kunye nojongano lwenethiwekhi kwikhompyuter kwezinye iinkonzo.
- I-WinSock API abaphathi njenge-setsockopt kunye ne-getsockopt ziye zafuduselwa kwi-NTDLL kunye nomqhubi we-afd.sys ukuze ahambelane noyilo lweWindows.
- Iifayile zedatha yenethiwekhi yeWayini, njenge /etc/protocols kunye /etc/networks, ngoku zifakwe kwi-Wine working directory, endaweni yokufikelela kwi-database ye-Unix efanayo.
- Iiplatifti ezingezinye
- Inkxaso eyongeziweyo yezixhobo ze-Apple ezisekelwe kwi-chips ze-M1 ze-ARM (i-Apple Silicon).
- Inkxaso yeefitsha ze-BCrypt kunye ne-Secur32 kwi-macOS ngoku ifuna ukufakelwa kwethala leencwadi le-GnuTLS.
- I-32-bit ephunyeziweyo yamaqonga e-ARM ngoku akhiwe kwimowudi yeThumb-2, efana neWindows. Isilayishi sangaphambili sisetyenziselwa ukulayisha iifayile ezinjalo.
- Kumaqonga e-ARM angama-32, inkxaso yokungaphumli ngaphandle iphunyeziwe.
- Kwi-FreeBSD, inani lemibuzo exhaswayo yolwazi lwenkqubo ephantsi, efana nesimo sememori kunye nenqanaba lentlawulo yebhetri, liye landiswa.
- Izicelo ezakhelwe ngaphakathi kunye nezixhobo zophuhliso
- I-reg.exe eluncedo yongeze inkxaso ye-32- kunye ne-64-bit yeembono zobhaliso. Inkxaso eyongeziweyo yokukopa amaqhosha obhaliso.
- Usetyenziso lweWineDump longeze inkxaso yokulahla imetadata yeWindows kunye nokubonisa ulwazi oluneenkcukacha malunga nokungeniswa kweCodeView.
- I-Wine Debugger (winedbg) ibonelela ngokukwazi ukulungisa iinkqubo ze-32-bit ukusuka kwi-64-bit debugger.
- Ikhono lokulayisha amathala eencwadi akhiwe kwiifayile ze-PE zongezwe kwi-IDL compiler (widl), inkxaso yeempawu ezikhethekileyo zeWinRT kunye nolwakhiwo lunikezelwe, kwaye ukukhangela kwethala leencwadi elikhethekileyo kuye kwaphunyezwa.
- Inkqubo yeNdibano
- Kuluhlu lwezalathiso lolwakhiwo, amathala ngoku agciniwe anamagama abonisa uyilo kunye nodidi oluphunyezwayo, olufana ne 'i386-windows' yefomathi ye-PE kunye ne-'x86_64-unix' yamathala eencwadi angabonakaliyo, ivumela inkxaso yolwakhiwo olwahlukeneyo kwiWayini enye. ufakelo kunye nokubonelela ngokuhlanganiswa kweWinelib.
- Ukuseta ukhetho kwiiheader zeefayile zePE ezilawula utshintsho ekusebenziseni iiDLL zomthonyama, i-'-prefer-native option' iflegi yongezwe kwiwinebuild (DLL_WINE_PREATTACH processing kwi DllMain imisiwe).
- Inkxaso eyongeziweyo yenguqulo yesi-4 yefomathi yedatha ye-Dwarf debug, esetyenziswa ngokusisiseko xa kusakhiwa iilayibrari zeWayini.
- Ukhetho lokwakha olongeziweyo '-yenza-yakha-id' ukugcina iziphawuli zokwakha ezizodwa kwiifayile eziphunyeziweyo.
- Inkxaso eyongeziweyo yokusebenzisa i-Clang compiler kwimodi yokuhambelana ye-MSVC.
- Π Π°Π·Π½ΠΎΠ΅
- Amagama ezalathisi eziqhelekileyo kwiqokobhe lomsebenzisi (i-Windows Shell) inikwe icebo elisetyenziswe ukuqala ngeWindows Vista, okt. Endaweni yokuba 'Amaxwebhu am', uluhlu 'lwaMaxwebhu' ngoku lwenziwe, kwaye uninzi lwedatha lugcinwa kuluhlu lwe-'AppData'.
- Inkxaso yeenkcazo ze-OpenCL 1.2 yongezwe kuluhlu lwethala leencwadi le-OpenCL.
- Umqhubi weWinSpool wongeze inkxaso yobukhulu bephepha obuhlukeneyo xa ushicilela.
- Inkxaso yokuqala eyongeziweyo ye-MSDASQL, umboneleli we-Microsoft OLE DB kubaqhubi be-ODBC.
- Injini yeWine Mono ene-.NET ukuphunyezwa kweqonga ihlaziywe ukukhulula i-7.0.0.
- Idatha ye-Unicode ihlaziywe kwiinkcazo ze-Unicode 14.
- Umthi womthombo uquka iFaudio, GSM, LCMS2, LibJPEG, LibJXR, LibMPG123, LibPng, LibTiff, LibXml2, LibXslt kunye namathala eencwadi eZlib, ahlanganiswe kwifomathi ye-PE kwaye ayifuni inguqulelo kwifomethi ye-Unix. Kwangaxeshanye, la mathala eencwadi nawo angangeniswa kwi-system ukuze asebenzise iindibano zangaphandle endaweni yeenketho ezakhelwe ngaphakathi ze-PE.
umthombo: opennet.ru