Microsoft yatulutsa laibulale ya Rust ya Windows API

Laibulaleyi idapangidwa ngati crate ya Dzimbiri pansi pa MIT License, yomwe ingagwiritsidwe ntchito motere:

[dependencies] windows = "0.2.1"

[build-dependencies] windows = "0.2.1"

Pambuyo pa izi, mu build.rs build script, mutha kupanga ma module omwe amafunikira pakugwiritsa ntchito kwanu:

fn chachikulu () {
windows::manga!(
windows::data::xml::dom::*
windows::win32::system_services::{CreateEventW, SetEvent, WaitForSingleObject}
windows::win32::windows_programming::CloseHandle
);
}

Zolemba za ma module omwe alipo amasindikizidwa pa zolemba.rs.

Chitsanzo kodi:

zomangira mod {
::mawindo::include_bindings!();
}

gwiritsani ntchito zomangira ::{
windows::data::xml::dom::*,
windows::win32::system_services::{CreateEventW, SetEvent, WaitForSingleObject},
windows::win32::windows_programming::CloseHandle,
};

fn chachikulu () -> windows:: Zotsatira <()> {
let doc = XmlDocument::new()?;
doc.load_xml(" Moni Dziko Lapansi ")?;

lolani mizu = doc.document_element()?;
kunena!(root.node_name()? == "html");
kunena!(root.inner_text()? == "Moni dziko");

osatetezeka {
lolani chochitika = CreateEventW(
std::ptr::null_mut(),
zoona.ku (),
zabodza.ku (),
std::ptr::null(),
);

SetEvent(chochitika).ok()?;
WaitForSingleObject(chochitika, 0);
CloseHandle(chochitika).ok()?;
}

Chabwino(())
}

Mafoni ena amagwiritsira ntchito osatetezeka chifukwa ntchitozi zimaperekedwa monga momwe zilili, popanda kuzisintha kuti zigwirizane ndi Rust. Crate idapangidwa mwanjira yomweyo. libc, yomwe imakhala ngati crate yoyambira yolowera ku libc ndipo imagwiritsidwa ntchito ngati maziko omanga malaibulale okhala ndi mawonekedwe otetezeka.


Ntchitoyi idapangidwa mkati mwa chimango Win32 Metadata Project, yomwe idapangidwa kuti ikhale yosavuta kupanga ma API azilankhulo zosiyanasiyana zamapulogalamu. Laibulale yachiwiri, yomwe idapangidwa kutengera Metadata Project mu gawo loyamba la polojekitiyi - C#/Win32. Microsoft idalengezanso kuyambika kwa ntchito mtundu wa C++, yomwe imagwiritsa ntchito kalembedwe kamakono.

Source: linux.org.ru