Umtapo wolwazi uklanywe njenge-Rust crate ngaphansi kwe-MIT License, engasetshenziswa kanje:
[dependencies] windows = "0.2.1" [build-dependencies] windows = "0.2.1"Ngemva kwalokhu, kusikripthi sokwakha se-build.rs, ungakha amamojula adingekayo kuhlelo lwakho lokusebenza:
i-fnmain() {
windows::yakha!(
windows::data::xml::dom::*
windows::win32::system_services::{CreateEventW, SetEvent, WaitForSingleObject}
windows::win32::windows_programming::ValaHandle
);
}
Amadokhumenti mayelana namamojula atholakalayo ashicilelwa ku amadokhumenti.rs.
Ikhodi yesampula:
ukubophezela kwemodi {
::amawindi::faka_okubophayo!();
}
sebenzisa izibopho ::{
windows::data::xml::dom::*,
windows::win32::system_services::{CreateEventW, SetEvent, WaitForSingleObject},
windows::win32::windows_programming::ValaHandle,
};
fn main() -> windows::Umphumela<()> {
let doc = XmlDocument::new()?;
doc.load_xml(" Sawubona Mhlaba ")?;
vumela impande = doc.document_element()?;
qinisekisa!(root.node_name()? == "html");
qinisekisa!(root.inner_text()? == "sawubona mhlaba");
angiphephile {
vumela umcimbi = CreateEventW(
std::ptr::null_mut(),
iqiniso.ku(),
amanga.ku(),
std::ptr::null(),
);
SetEvent(umcimbi).ok()?;
WaitForSingleObject(umcimbi, 0);
ValaHandle(umcimbi).ok()?;
}
Kulungile(())
}
Ezinye izingcingo zemisebenzi zisebenzisa ngokungaphephile ngenxa yokuthi le misebenzi inikezwa njengoba injalo, ngaphandle kokuyijwayelanisa nezimiso zeRust. Ikhreyithi yakhelwe ngomgomo ofanayo. libc, esebenza njengekhreyithi eliyisisekelo lokufinyelela i-libc futhi esetshenziswa njengesisekelo sokwakha amalabhulali anokuxhumana okuvikelekile.
Iphrojekthi idalwe ngaphakathi kohlaka Win32 Metadata Project, eklanyelwe ukwenza kube lula ukudala ama-API ezilimi zokuhlela ezihlukene. Umtapo wezincwadi wesibili, owakhiwe ngokusekelwe kuphrojekthi yeMetadata esigabeni sokuqala sephrojekthi - C#/Win32. IMicrosoft iphinde yamemezela ukuqala komsebenzi inguqulo ye-C++, esebenzisa isitayela sesimanje solimi.
Source: linux.org.ru