Ma hope o hoʻokahi makahiki o ka hoʻomohala ʻana a me nā mana hoʻokolohua 30, ua hōʻike ʻia kahi hoʻokuʻu paʻa o ka hoʻokō wehe ʻana o ka Win32 API - Wine 7.0, i hoʻohui ʻia ma mua o 9100 mau hoʻololi. ʻO nā mea koʻikoʻi o ka mana hou, ʻo ia ka unuhi ʻana o ka hapa nui o nā modules Wine i ka format PE, kākoʻo no nā kumumanaʻo, hoʻonui i ka waihona no nā mea hauʻoli a me nā mea hoʻokomo me kahi interface HID, a me ka hoʻokō ʻana i ka hale hoʻolālā WoW64 no ka holo ʻana i nā polokalamu 32-bit i kahi. Kaiapuni 64-bit.
Ua hōʻoia ka waina i ka hana holoʻokoʻa o nā polokalamu 5156 (he makahiki i hala aku nei 5049) no Windows, kahi 4312 (he makahiki i hala aku nei 4227) nā papahana e hana maikaʻi me nā hoʻonohonoho hou a me nā DLL waho. Loaʻa i nā polokalamu 3813 (3703 mau makahiki i hala aku nei) nā pilikia hana liʻiliʻi ʻaʻole e hoʻopilikia i ka hoʻohana ʻana i nā hana nui o nā noi.
ʻO nā hana hou nui ma ka waina 7.0:
- Nā modula i ka palapala PE
- Aneane ua hoʻololi ʻia nā DLL a pau e hoʻohana i ka format file executable PE (Portable Executable, hoʻohana ʻia ma Windows) ma kahi o ELF. Hoʻopau ka hoʻohana ʻana i ka PE i nā pilikia me ke kākoʻo ʻana i nā papa hana pale kope like ʻole e hōʻoia i ka ʻike o nā ʻōnaehana ʻōnaehana ma ka disk a me ka hoʻomanaʻo.
- Ua hoʻokō ʻia ka hiki ke hoʻopili i nā modula PE me nā hale waihona puke Unix me ka hoʻohana ʻana i ke kelepona ʻōnaehana kernel NT maʻamau, e hiki ai iā ʻoe ke hūnā i ke komo ʻana i ka code Unix mai nā Windows debuggers a nānā i ka hoʻopaʻa inoa ʻana.
- Hoʻouka ʻia nā DLL i kūkulu ʻia i kēia manawa inā loaʻa kahi faila PE e pili ana i ka disk, me ka nānā ʻole inā he waihona maoli a i ʻole he stub. Hiki i kēia hoʻololi ke ʻike i ka palapala hoʻopaʻa pono i nā faila PE. No ka hoʻopau ʻana i kēia ʻano, hiki iā ʻoe ke hoʻohana i ka hoʻololi kaiapuni WINEBOOTSTRAPMODE.
- Auwe64
- Ua hoʻokō ʻia ka hoʻolālā WoW64 (64-bit Windows-on-Windows), e ʻae iā ʻoe e holo i nā noi Windows 32-bit ma nā kaʻina Unix 64-bit. Hoʻokō ʻia ke kākoʻo ma o ka pilina o kahi papa e unuhi i nā kelepona ʻōnaehana 32-bit NT i nā kelepona 64-bit i NTDLL.
- Hoʻomākaukau ʻia nā papa WoW64 no ka hapa nui o nā hale waihona Unix a ʻae i nā modula PE 32-bit e komo i nā hale waihona puke Unix 64-bit. Ke hoʻololi ʻia nā modula a pau i ka format PE, hiki ke holo i nā polokalamu Windows 32-bit me ka hoʻokomo ʻole ʻana i nā waihona Unix 32-bit.
- Nā kumuhana
- Ua hoʻokō ʻia ke kākoʻo kumuhana. Hoʻokomo ʻia nā kumumanaʻo "Light", "Blue" a me "Classic Blue", hiki ke koho ʻia ma o ka configurator WineCfg.
- Hoʻohui i ka hiki ke hoʻopilikino i ke ʻano o nā kaohi o nā mea āpau ma o nā kumumanaʻo. Hōʻano hou ʻia ke ʻano o nā mea ma hope o ka hoʻololi ʻana i ke kumumanaʻo hoʻolālā.
- Ua hoʻohui ʻia ke kākoʻo kumuhana i nā noi Wine i kūkulu ʻia. Ua hoʻololi ʻia nā noi i nā pale me ke kiʻekiʻe pixel density (High DPI).
- Pūnaehana kiʻi
- Ua hoʻohui ʻia kahi waihona Win32u hou, aia nā ʻāpana o ka waihona GDI32 a me USER32 e pili ana i ka hoʻoponopono kiʻi a me ka hoʻokele puka makani ma ka pae kernel. I ka wā e hiki mai ana, e hoʻomaka ka hana ma ka lawe ʻana i nā mea hoʻokele e like me winex32.drv a me winemac.drv iā Win11u.
- Kākoʻo ka mea hoʻokele Vulkan i ka Vulkan graphics API kikoʻī 1.2.201.
- Hāʻawi ʻia ke kākoʻo no ka hoʻopuka ʻana i nā mea geometric hatched ma o ka Direct2D API, me ka hiki ke nānā inā paʻi kahi kaomi (hit-test).
- Hāʻawi ka Direct2D API i ke kākoʻo mua no nā hopena ʻike i hoʻohana ʻia me ka hoʻohana ʻana i ka interface ID2D1Effect.
- Ua hoʻohui ka Direct2D API i ke kākoʻo no ka ID2D1MultiThread interface, i hoʻohana ʻia no ka hoʻonohonoho ʻana i ke komo kūʻokoʻa i nā kumuwaiwai i nā noi multi-threaded.
- Hāʻawi ka WindowsCodecs set of library i ke kākoʻo no ka wehe ʻana i nā kiʻi ma ke ʻano WMP (Windows Media Photo) a me ka hoʻopā ʻana i nā kiʻi ma ke ʻano DDS (DirectDraw Surface). ʻAʻole mākou kākoʻo hou i nā kiʻi hoʻopāpā ma ke ʻano ICNS (no macOS), ʻaʻole i kākoʻo ʻia ma Windows.
- Manaʻo Direct3D
- Ua hoʻomaikaʻi maikaʻi ʻia ka ʻenekini hana hou, e unuhi ana i nā kelepona Direct3D i ka Vulkan graphics API. I ka hapanui o nā kūlana, ua hoʻohālikelike ʻia ke kiʻekiʻe o ke kākoʻo no Direct3D 10 a me 11 i ka mīkini hoʻokumu ʻia ʻo Vulkan me ka mīkini hoʻokumu OpenGL kahiko. No ka hoʻohana ʻana i ka ʻenekini hōʻike Vulkan, e hoʻonoho i ka hoʻololi hoʻopaʻa inoa Direct3D "renderer" i "vulkan".
- Hoʻokō ʻia nā hiʻohiʻona he nui o Direct3D 10 a me 11, me nā Context Deferred, nā mea mokuʻāina e hana ana i ka pōʻaiapili o ka mīkini, hoʻopau mau ʻana i nā buffers, hoʻomaʻemaʻe i nā hiʻohiʻona o waho o ke kauoha, kope ʻana i ka ʻikepili ma waena o nā kumuwaiwai i nā ʻano typeless (DXGI_FORMAT_BC3_TYPELESS, DXGI_FORMAT_R32G32B32PELESS), etc. .
- Hoʻohui i ke kākoʻo no nā hoʻonohonoho multi-monitor, e ʻae iā ʻoe e koho i kahi nānā e hōʻike i kahi noi Direct3D ma ke ʻano pale piha.
- Hāʻawi ka DXGI API i ka hoʻoponopono gamma pale, hiki ke hoʻohana ʻia e Direct3D 10 a me 11 mau noi e hoʻololi i ka ʻōlinolino o ka pale. Hiki ke kiʻi ʻia i nā helu helu virtual framebuffers (SwapChain).
- Hoʻohui ʻo Direct3D 12 i ke kākoʻo no nā pūlima kumu 1.1.
- Ma ke code rendering ma o ka Vulkan API, ua hoʻomaikaʻi ʻia ka maikaʻi o ka hoʻoili ʻana i ka nīnau inā kākoʻo ka ʻōnaehana i ka hoʻonui VK_EXT_host_query_reset.
- Hoʻohui i ka hiki ke hoʻopuka i nā framebuffers virtual (SwapChain) ma o GDI inā ʻaʻole hiki ke hoʻohana ʻia ʻo OpenGL a i ʻole Vulkan no ka hōʻike ʻana, no ka laʻana, i ka wā e puka mai ana i ka puka makani mai nā kaʻina hana like ʻole, no ka laʻana, i nā papahana e pili ana i ka CEF (Chromium Embedded Framework).
- Ke hoʻohana nei i ka GLSL shader backend, ua hōʻoia ʻia ka mea hoʻololi "pololei" no nā kuhikuhi shader.
- Hoʻohui ka DirectDraw API i ke kākoʻo no ka hoʻolilo 3D i ka hoʻomanaʻo ʻōnaehana me ka hoʻohana ʻana i nā polokalamu lako polokalamu e like me "RGB", "MMX" a me "Ramp".
- ʻO AMD Radeon RX 3M, AMD Radeon RX 5500/6800 XT/6800 XT, AMD Van Gogh, Intel UHD Graphics 6900 a me NVIDIA GT 630 kāleka i hoʻohui ʻia i ka ʻikepili kāleka kiʻi Direct1030D.
- Ua wehe ʻia ke kī "UseGLSL" mai ka HKEY_CURRENT_USER\Software\Wine\Direct3D registry, ma kahi o ia, e hoʻomaka me Wine 5.0, pono ʻoe e hoʻohana i ka "shader_backend".
- No ke kākoʻo iā Direct3D 12, pono ʻoe i ka mana 3 o ka waihona vkd1.2d.
- D3DX
- Ua hoʻomaikaʻi ka hoʻokō ʻana o D3DX 10 i ke kākoʻo no ka hoʻolālā hopena ʻike a hoʻohui i ke kākoʻo no ke ʻano kiʻi kiʻi Windows Media Photo (JPEG XR)
- Hoʻohui ʻia nā hana hana kikokikona i hāʻawi ʻia ma D3DX10, e like me D3DX10CreateTextureFromMemory ().
- Ua hoʻokō hapa ʻia nā polokalamu polokalamu ID3DX10Sprite a me ID3DX10Font.
- Kani a me ka wikiō
- Hoʻohui ʻia nā mea hoʻohui GStreamer no DirectShow a me ka Media Foundation framework i hoʻokahi ʻaoʻao hope WineGStreamer maʻamau, pono e hoʻomaʻamaʻa i ka hoʻomohala ʻana i nā API decoding maʻiʻo hou.
- Ma muli o ka WineGStreamer backend, ua hoʻokō ʻia nā mea Windows Media no ka heluhelu synchronous a asynchronous.
- Ua hoʻomaʻemaʻe hou ʻia ka hoʻokō ʻana o ka Media Foundation framework, kākoʻo no ka hana IMFPMediaPlayer a me ka hāʻawi laʻana, a ua hoʻomaikaʻi ʻia ke kākoʻo no ka EVR a me SAR rendering buffers.
- Ua wehe ʻia ka waihona wineqtdecoder, nāna e hāʻawi i kahi decoder no ke ʻano QuickTime, (ua hoʻohana nā codec āpau iā GStreamer).
- Nā lako komo
- Ua hoʻomaikaʻi maikaʻi ʻia ka waihona no nā mea hoʻokomo e kākoʻo ana i ka protocol HID (Human Interface Devices), e hāʻawi ana i nā hiki e like me ka parsing HID descriptors, ka hoʻoponopono ʻana i nā leka HID, a me ka hāʻawi ʻana i nā mea hoʻokele mini-HID.
- Ma nā ʻaoʻao hope o ka mea hoʻokele winebus.sys, ua hoʻomaikaʻi ʻia ka unuhi ʻana o ka wehewehe ʻana o nā hāmeʻa i nā memo HID.
- Hoʻohui ʻia kahi backend DirectInput hou no nā lāʻau hauʻoli e kākoʻo ana i ka protocol HID. Ua hoʻokō ʻia ka hiki ke hoʻohana i nā hopena manaʻo i nā joysticks. Hoʻomaikaʻi ʻia ka papa mana hauʻoli. Hoʻopili maikaʻi ʻia me nā polokalamu kūpono XInput. Ma WinMM, ua hoʻoneʻe ʻia ke kākoʻo hauʻoli i DInput, ma kahi o ka hoʻohana ʻana i ka backend evdev ma Linux a me IOHID ma macOS IOHID. Ua wehe ʻia ka mea hoʻokele hauʻoli kahiko winejoystick.drv.
- Ua hoʻohui ʻia nā hoʻāʻo hou i ka module DInput, e pili ana i ka hoʻohana ʻana i nā polokalamu HID virtual a ʻaʻole pono i kahi mea kino.
- kikokikona a me nā kikokikona
- Hoʻohui ʻia ka mea hoʻonohonoho Font i DirectWrite.
- Hoʻokomo pololei ʻo RichEdit i ka interface TextHost.
- Kernel
- Ke holo nei i kahi faila hiki ʻole ke ʻike ʻia (e like me 'wine foo.msi') i ka waina, ua kapa ʻia ʻo start.exe, e kāhea ana i nā mea lawelawe e pili ana i ke ʻano faila.
- Kākoʻo hoʻohui ʻia no nā mīkini hoʻonohonoho NtAlertThreadByThreadId a me NtWaitForAlertByThreadId, e like me nā futexes ma Linux.
- Kākoʻo hoʻohui ʻia no nā mea debug NT i hoʻohana ʻia e debug i nā hana kernel.
- Kākoʻo i hoʻohui ʻia no nā kī hoʻopaʻa inoa ikaika e mālama i ka ʻikepili hana.
- C Ka manawa holo
- Hoʻokomo ka C runtime i kahi hoʻonohonoho piha o nā hana makemakika, i lawe nui ʻia mai ka waihona Musl.
- Hāʻawi nā kahua CPU āpau i ke kākoʻo kūpono no nā hana kiko lana.
- Nā hiʻohiʻona pūnaewele
- Ua hoʻomaikaʻi ʻia ke ʻano hoʻohālikelike no Internet Explorer 11 (IE11), i hoʻohana ʻia i kēia manawa ma ka paʻamau no ka hana ʻana i nā palapala HTML.
- Hoʻohana ka waihona mshtml i ke ʻano JavaScript ES6 (ECMAScript 2015), e hāʻawi i ke kākoʻo no nā hiʻohiʻona e like me ka let expression a me ka mea Map.
- Hoʻokomo ʻia nā pūʻolo MSI me nā mea hoʻohui i ka mīkini Gecko i loko o ka papa kuhikuhi hana waina i kēia manawa i ka wā e pono ai, ʻaʻole i ka wā o ka hoʻopou waina.
- Hoʻohui i ke kākoʻo no ka protocol DTLS.
- Ua hoʻokō ʻia ka lawelawe NSI (Network Store Interface), mālama a hoʻouna i ka ʻike e pili ana i ke ala ala a me nā pilina pūnaewele ma ka kamepiula i nā lawelawe ʻē aʻe.
- Ua hoʻoneʻe ʻia nā mea lawelawe API WinSock e like me setsockopt a me getsockopt i NTDLL a me ka mea hoʻokele afd.sys e kūlike me ka hoʻolālā Windows.
- Ua hoʻokomo ʻia nā faila waihona pūnaewele ponoʻī o ka waina, e like me /etc/protocols a me /etc/networks, i ka papa kuhikuhi hana Wine, ma kahi o ke komo ʻana i nā waihona Unix like.
- Nā paepae ʻokoʻa
- Hoʻohui i ke kākoʻo no nā lako Apple e pili ana i nā pahu M1 ARM (Apple Silicon).
- Pono ke kākoʻo no nā hiʻohiʻona BCrypt a me Secur32 ma macOS i kēia manawa e hoʻokomo i ka waihona GnuTLS.
- Ua kūkulu ʻia nā mea hoʻokō 32-bit no nā paepae ARM i ke ʻano Thumb-2, e like me Windows. Hoʻohana ʻia kahi preloader e hoʻouka i ia mau faila.
- No nā paepae ARM 32-bit, ua hoʻokō ʻia ke kākoʻo no ka wehe ʻana i nā ʻokoʻa.
- No FreeBSD, ua hoʻonui ʻia ka helu o nā nīnau i kākoʻo ʻia no ka ʻike ʻōnaehana haʻahaʻa, e like me ke kūlana hoʻomanaʻo a me ka pae hoʻoiho pila.
- Nā polokalamu i kūkulu ʻia a me nā mea hana hoʻomohala
- Ua hoʻohui ka reg.exe i ke kākoʻo no 32- a me 64-bit registry view. Hoʻohui kākoʻo no ke kope kope ʻana i nā kī hoʻopaʻa inoa.
- Ua hoʻohui ka mea hoʻohana WineDump i ke kākoʻo no ka hoʻolei ʻana i ka metadata Windows a hōʻike i ka ʻike kikoʻī e pili ana i nā helu CodeView.
- Hāʻawi ka Wine Debugger (winedbg) i ka hiki ke hoʻopau i nā kaʻina hana 32-bit mai kahi debugger 64-bit.
- ʻO ka hiki ke hoʻouka i nā hale waihona puke i kūkulu ʻia i loko o nā faila PE ua hoʻohui ʻia i ka compiler IDL (widl), ua hāʻawi ʻia ke kākoʻo no nā hiʻohiʻona WinRT-specific a me nā kūkulu, a ua hoʻokō ʻia kahi hulina waihona kikoʻī kahua.
- Pūnaehana hui
- Ma nā papa kuhikuhi kikoʻī kikoʻī, mālama ʻia nā hale waihona puke me nā inoa e hōʻike ana i ka hoʻolālā a me ke ʻano hoʻokō, e like me 'i386-windows' no ka format PE a me 'x86_64-unix' no nā hale waihona puke unix, e ʻae ana i ke kākoʻo no nā hale kiʻi like ʻole i ka waina hoʻokahi. hoʻonohonoho a hāʻawi i ka cross-compilation o Winelib.
- No ka hoʻonohonoho ʻana i kahi koho ma nā poʻomanaʻo o nā faila PE e hoʻomalu i ka hoʻololi ʻana i ka hoʻohana ʻana i nā DLL maoli, ua hoʻohui ʻia ka hae '--prefer-native option' i ka winebuild (Ua hoʻopau ʻia ka hana DLL_WINE_PREATTACH ma DllMain).
- Hoʻohui ʻia ke kākoʻo no ka mana 4 o ka hōpili ʻikepili Dwarf debug, i hoʻohana ʻia i kēia manawa ma ka paʻamau i ke kūkulu ʻana i nā hale waihona waina.
- Hoʻohui ʻia ke koho kūkulu '—enable-build-id' no ka mālama ʻana i nā mea ʻike kūkulu kū hoʻokahi i nā faila hiki ke hoʻokō.
- Hoʻohui i kākoʻo no ka hoʻohana ʻana i ka Clang compiler ma ke ʻano hoʻohālikelike MSVC.
- miscellanea
- Hāʻawi ʻia nā inoa o nā papa kuhikuhi maʻamau i ka shell mea hoʻohana (Windows Shell) i ka hoʻolālā i hoʻohana ʻia e hoʻomaka me Windows Vista, ʻo ia hoʻi. Ma kahi o 'My Documents', ua hana 'ia ka papa kuhikuhi 'Documents', a ua mālama 'ia ka hapa nui o ka 'ikepili i ka papa kuhikuhi 'AppData'.
- Ua hoʻohui ʻia ke kākoʻo no ka OpenCL 1.2 kikoʻī i ka papa waihona OpenCL.
- Ua hoʻohui ka mea hoʻokele WinSpool i ke kākoʻo no nā ʻaoʻao like ʻole ke paʻi.
- Hoʻohui i ke kākoʻo mua no MSDASQL, ka Microsoft OLE DB mea hoʻolako no nā mea hoʻokele ODBC.
- Ua hoʻonui hou ʻia ka mīkini Wine Mono me ka hoʻokō ʻana i ka .NET platform e hoʻokuʻu i ka 7.0.0.
- Ua hōʻano hou ʻia ka ʻikepili Unicode i ka kikoʻī Unicode 14.
- Aia i loko o ke kumu kumu nā hale waihona puke Faudio, GSM, LCMS2, LibJPEG, LibJXR, LibMPG123, LibPng, LibTiff, LibXml2, LibXslt a me Zlib, i hui pū ʻia ma ka ʻano PE a ʻaʻole koi i kahi mana ma ke ʻano Unix. I ka manawa like, hiki ke lawe ʻia mai kēia mau hale waihona puke mai ka ʻōnaehana e hoʻohana i nā hui waho ma mua o nā koho PE i kūkulu ʻia.
Source: opennet.ru