ืื ืืืืืืึธืืขืง ืืื ืืืืืื ื ืืื ืึท ืืฉืึทืืืขืจ ืงืจืืื ืืื ืืขืจ ืื MIT ืืืกืขื ืกืข, ืืืึธืก ืงืขื ืขื ืืืื ืืขืืืืื ื ืืื ืืึธืก:
[dependencies] windows = "0.2.1" [build-dependencies] windows = "0.2.1"ื ืึธื ืืขื, ืืื ืื build.rs ืืืืขื ืฉืจืืคื, ืืืจ ืงืขื ืขื ืืืฉืขื ืขืจืืื ืื ืืึทืืืฉืืื ืืืึธืก ืืขื ืขื ืืืจืฃ ืคึฟืึทืจ ืืืื ืึทืคึผืืึทืงืืืฉืึทื:
fn main() {
windows::build!(
windows::data::xml::dom::*
windows::win32::system_services::{CreateEventW, SetEvent, WaitForSingleObject}
windows::win32::windows_programming::CloseHandle
);
}
ืืึทืงืืืืขื ืืืืฉืึทื ืืืขืื ืื ืืืฆื ืืึทืืืฉืืื ืืื ืืจืืืก ืืืืฃ docs.rs.
ืืืกืืขืจ ืงืึธื:
ืืึธื ืืืื ืืื ืื {
:: ืคึฟืขื ืฆืืขืจ :: ืื ืงืืืืข_ืืื ืืื ืืก!();
}
ื ืืฆื ืืืื ืืื ืื::{
windows::data::xml::dom::*,
windows::win32::system_services::{CreateEventW, SetEvent, WaitForSingleObject},
windows::win32::windows_programming::CloseHandle,
};
fn main() -> windows::Result <()> {
ืืึธืื ืฉืืืืืึทื ืง = XmlDocument :: ื ืืึท ()?;
doc.load_xml(" ืืขืื ืืืขืื ")?;
ืืึธืื ืืืึธืจืฆื = ืืึธืง.ืืึธืงืืืขื ื_ืขืืขืืขื ื ()?;
ืืึทืฉืืขืืืงื! (root.node_name ()? == "ืืืื");
ืืึทืฉืืขืืืงื! (root.inner_text()? == "ืืขืื ืืืขืื");
ืืืืืืขืจ {
ืืึธืื ืืขืฉืขืขื ืืฉ = CreateEventW (
std::ptr::null_mut(),
true.into(),
false.into(),
std::ptr::null(),
);
ืกืขืืขืืืขื ื (ืืขืฉืขืขื ืืฉ). ืืื ()?;
WaitForSingleObject (ืืขืฉืขืขื ืืฉ, 0);
ืงืืึธืกืขืืึทื ืืืข (ืืขืฉืขืขื ืืฉ) .ืึธืง()?;
}
ืืงืขื(())
}
ืขืืืขืืข ืคืื ืงืฆืืข ืจืืคื ื ืืฆื ืึทื ืกืืืฃ ืืืืึทื ืื ืคืึทื ืืงืฉืึทื ื ืืขื ืขื ืฆืืืขืฉืืขืื ืืื ืืื ืืขื ืขื, ืึธื ืึทืืึทืคึผืืื ื ืืื ืฆื ืจืืกื ืงืึทื ืืืขื ืฉืึทื ื. ืงืจืืื ืืื ืืืืืื ื ืืืืฃ ืืขืจ ืืขืืืืงืขืจ ืคึผืจืื ืฆืืคึผ. libc, ืืืึธืก ืกืขืจืืืขืก ืืื ืึท ืืงืขืจืืืง ืงืจืืื ืคึฟืึทืจ ืึทืงืกืขืก libc ืืื ืืื ืืขื ืืฆื ืืื ืึท ืืงืขืจ ืคึฟืึทืจ ืื ืื ืืืืืจืขืจืื ืืื ืึท ืืืืขืจ ืฆืืืื ื.
ืื ืคึผืจืืืขืงื ืืื ืืขืืืขื ืืืฉืืคื ืืื ืื ืคืจืืืืืืขืจืง Win32 ืืขืืึทืืึทืืึท ืคึผืจืึธืืขืงื, ืืืึธืก ืืื ืืืืืื ื ืฆื ืืึทืื ืขืก ืืจืื ืืขืจ ืฆื ืฉืึทืคึฟื ืึทืคึผืืก ืคึฟืึทืจ ืคืึทืจืฉืืืขื ืข ืคึผืจืึธืืจืึทืืืื ื ืฉืคึผืจืึทืื. ืื ืฆืืืืืืข ืืืืืืึธืืขืง, ืืืึธืก ืืื ืืขืืืขื ืืืฉืืคื ืืืืืจื ืืืืฃ ืื ืืขืืึทืืึทืืึท ืคึผืจืึธืืขืงื ืืื ืืขืจ ืขืจืฉืืขืจ ืคืึทืกืข ืคืื โโืื ืคึผืจืืืขืงื - C#/Win32. ืืืืงืจืึธืกืึธืคึฟื ืืืื ืืืืืข ืื ืึธื ืืืื ืคืื ืึทืจืืขื ืืืืฃ ืืืขืจืกืืข ืคึฟืึทืจ C ++, ืืืืก ื ืืฆื ื ืืืืขืจื ืขืจ ืฉืคืจืื ื ืืกื.
ืืงืืจ: linux.org.ru