A Microsoft bejelentette a Rust/WinRT projektet
A Microsoft bejelentette a Rust/WinRT projektet, amely természetes és idiomatikus módot biztosít a Rust fejlesztői számára a Windows API-k hívására. A Rust/WinRT lehetővé teszi bármely múltbeli, jelenlegi, WinRT API meghívását. és a jövőben közvetlenül az API-t leíró metaadatokból, közvetlenül a Rust-csomagba menet közben generált kód használatával, ahol úgy hívhatod őket, mintha csak egy másik Rust lennének. modult.
A Windows Runtime a burkolat alatt található COM (Component Object Model) API-kon alapul, és úgy lett kialakítva, hogy olyan nyelvi vetületeken keresztül érhető el, mint a C++/WinRT és a Rust/WinRT. Ezek a nyelvi vetületek a különböző API-kat leíró metaadatokat veszik, és természetes kötéseket biztosítanak a célprogramozási nyelvhez. Ez lehetővé teszi a fejlesztők számára, hogy könnyebben készítsenek alkalmazásokat és összetevőket a Windows számára a kívánt nyelven. Ezután ezeket a Windows API-kat használhatja asztali alkalmazások létrehozására, alkalmazások tárolására, összetevők, NT-szolgáltatások vagy eszközillesztő-programok létrehozására.
Az alábbiakban egy egyszerű példa látható, amikor Rust Windows API-t hív meg.
használjon windows:: data:: xml:: dom::*; let doc = XmlDocument:: new()?; doc.load_xml("Helló Világ")?; let root = doc.document_element()?; assert!(root.node_name()? == "html"); assert!(root.inner_text()? == "helló világ");
Értelmesebb példaért nézze meg a következő, Rust/WinRT-vel megvalósított Minesweeper játékot: https://github.com/robmikh/minesweeper-rs
A Microsoft megjegyezte, hogy ez egy nagyon korai nyilvános előzetes, így további szolgáltatások és javítások várhatók a jövőben. A projekt honlapja a GitHubon található:
https://github.com/microsoft/winrt-rs