ማይክሮሶፍት ለዊንዶውስ ኤፒአይ ኦፊሴላዊውን የ Rust ቤተ-መጽሐፍት አውጥቷል።

ቤተ መፃህፍቱ የተነደፈው በ MIT ፍቃድ ስር እንደ ዝገት ሣጥን ነው፣ እሱም እንደሚከተለው ሊያገለግል ይችላል።

[ጥገኛዎች] መስኮቶች = "0.2.1"

[የግንባታ-ጥገኛዎች] መስኮቶች = "0.2.1"

ከዚህ በኋላ በ build.rs ግንባታ ስክሪፕት ውስጥ ለመተግበሪያዎ የሚያስፈልጉትን ሞጁሎች ማመንጨት ይችላሉ፡

fn ዋና() {
መስኮቶች:: ይገንቡ!
windows::ዳታ::xml::ዶም::*
windows::win32::የስርዓት_አገልግሎቶች::{CreateEventW, SetEvent, WaitForSingleObject}
መስኮቶች :: win32 :: ዊንዶውስ_ፕሮግራሚንግ :: እጀታን ዝጋ
);
}

ስለሚገኙ ሞጁሎች ሰነድ ታትሟል ሰነዶች.rs.

የኮድ ምሳሌ፡-

ሞዱ ማያያዣዎች {
:: ዊንዶውስ :: ማሰሪያዎችን ይጨምራል!();
}

ማሰሪያዎችን ተጠቀም::{
windows::ዳታ::xml::ዶም::*,
windows::win32::የስርዓት_አገልግሎቶች::{CreateEventW, SetEvent, WaitForSingleObject},
windows :: win32 :: ዊንዶውስ_ፕሮግራም :: እጀታን ዝጋ ፣
};

fn main() -> windows::ውጤት<()> {
ዶክ = XmlDocument :: አዲስ()?;
doc.load_xml(" ሰላም ልዑል ")?;

ሥር ይሁን = doc.document_element ()?;
አስርት!(root.node_name()? == "html");
አስርት!(root.inner_text()? == "ሰላም አለም");

ደህንነቱ ያልተጠበቀ {
ክስተት ፍቀድ = CreateEventW(
std::ptr:: null_mut()
እውነት.ወደ()
ውሸት.ወደ()
std::ptr:: null()
);

SetEvent(ክስተት)።እሺ()?;
WaitForSingleObject (ክስተት፣ 0);
እጅን ይዝጉ (ክስተት) .እሺ ()?;
}

እሺ(())
}

አንዳንድ የተግባር ጥሪዎች ደህንነታቸው ያልተጠበቀ ይጠቀማሉ ምክንያቱም እነዚህ ተግባራት ከዝገት አውራጃዎች ጋር ሳይላመዱ ስለሚቀርቡ ነው። Crate የተሰራው በተመሳሳይ መርህ ነው. ልሳ, ይህም libcን ለመድረስ እንደ መሰረታዊ ሳጥን ሆኖ የሚያገለግል እና ደህንነቱ በተጠበቀ በይነገጽ ቤተ-መጻህፍት ለመገንባት እንደ መሰረት ሆኖ ያገለግላል።


ፕሮጀክቱ በማዕቀፉ ውስጥ ተፈጠረ Win32 ሜታዳታ ፕሮጀክትለተለያዩ የፕሮግራም አወጣጥ ቋንቋዎች ኤፒአይዎችን ለመፍጠር ቀላል ለማድረግ የተነደፈ ነው። በፕሮጀክቱ የመጀመሪያ ደረጃ በሜታዳታ ፕሮጀክት ላይ የተመሰረተው ሁለተኛው ቤተ-መጽሐፍት - ሲ #/ዊን32. ማይክሮሶፍት ስራ መጀመሩንም አስታውቋል ስሪት ለ C ++ዘመናዊ የቋንቋ ዘይቤን የሚጠቀም።

ምንጭ: linux.org.ru