<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>प्रोग्रामिंग on kenji.blog</title><link>http://kenji.blog/hi/categories/%E0%A4%AA%E0%A5%8D%E0%A4%B0%E0%A5%8B%E0%A4%97%E0%A5%8D%E0%A4%B0%E0%A4%BE%E0%A4%AE%E0%A4%BF%E0%A4%82%E0%A4%97/</link><description>Recent content in प्रोग्रामिंग on kenji.blog</description><generator>Hugo -- gohugo.io</generator><language>hi</language><copyright>kenjinote</copyright><lastBuildDate>Sat, 27 Sep 2025 10:02:59 +0900</lastBuildDate><atom:link href="http://kenji.blog/hi/categories/%E0%A4%AA%E0%A5%8D%E0%A4%B0%E0%A5%8B%E0%A4%97%E0%A5%8D%E0%A4%B0%E0%A4%BE%E0%A4%AE%E0%A4%BF%E0%A4%82%E0%A4%97/index.xml" rel="self" type="application/rss+xml"/><item><title>Google One (Gemini) को रद्द न कर पाने पर क्या करें</title><link>http://kenji.blog/hi/p/google-one-gemini%E3%81%8C%E8%A7%A3%E7%B4%84%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE%E5%AF%BE%E5%87%A6%E6%96%B9%E6%B3%95/</link><pubDate>Sat, 27 Sep 2025 10:02:59 +0900</pubDate><guid>http://kenji.blog/hi/p/google-one-gemini%E3%81%8C%E8%A7%A3%E7%B4%84%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE%E5%AF%BE%E5%87%A6%E6%96%B9%E6%B3%95/</guid><description>&lt;img src="http://kenji.blog/p/google-one-gemini%E3%81%8C%E8%A7%A3%E7%B4%84%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE%E5%AF%BE%E5%87%A6%E6%96%B9%E6%B3%95/img.png" alt="Featured image of post Google One (Gemini) को रद्द न कर पाने पर क्या करें" />&lt;h1 id="धयन-दकय-gemini-क-मफत-टरयल-खतम-हन-पर-बल-भज-जएग-रदद-करन-क-तरक">【ध्यान दें】क्या Gemini का मुफ़्त ट्रायल खत्म होने पर बिल भेजा जाएगा? रद्द करने का तरीका
&lt;/h1>&lt;p>जब आप Google की AI सेवा &amp;ldquo;Gemini&amp;rdquo; को आज़माना चाहते हैं, तो आपको शुरुआत में ** 1 महीने का मुफ़्त ट्रायल ** दिया जाता है।
बहुत से लोग यह सोचकर रजिस्टर करते हैं कि &amp;ldquo;अगर यह मुफ़्त है तो मैं इसे आज़माऊंगा&amp;rdquo;, लेकिन यहाँ कुछ बातें ध्यान रखने योग्य हैं।&lt;/p>
&lt;hr>
&lt;h2 id="मफत-टरयल-खतम-हन-पर-कय-हत-ह">मुफ़्त ट्रायल खत्म होने पर क्या होता है?
&lt;/h2>&lt;p>ट्रायल अवधि समाप्त होने पर, आपसे स्वचालित रूप से ** प्रति माह 2,900 येन ** का शुल्क लिया जाएगा।
यह &amp;ldquo;Google One सदस्यता&amp;rdquo; नामक सदस्यता से जुड़ा है, और यदि आप कुछ नहीं करते हैं तो यह एक ऐसी प्रणाली है जो निरंतर बिलिंग में बदल जाती है।&lt;/p>
&lt;hr>
&lt;h2 id="अगर-आप-रदद-करत-ह-त-आपस-शलक-नह-लय-जएग-लकन">अगर आप रद्द करते हैं तो आपसे शुल्क नहीं लिया जाएगा, लेकिन&amp;hellip;
&lt;/h2>&lt;p>बेशक, यदि आप ट्रायल के दौरान रद्द करते हैं तो कोई शुल्क नहीं लगेगा।
आधिकारिक स्पष्टीकरण पृष्ठ पर &amp;ldquo;Google One सदस्यता कैसे रद्द करें&amp;rdquo; भी है।&lt;/p>
&lt;p>👉 &lt;a class="link" href="https://support.google.com/googleone/answer/9056360" target="_blank" rel="noopener"
>Google One सदस्यता रद्द करें (आधिकारिक)&lt;/a>&lt;/p>
&lt;p>हालाँकि, जब मैं वास्तव में इसे एक्सेस करने गया, तो मुझे पता चला कि &amp;ldquo;मैं किसी कारण से इसे रद्द नहीं कर सकता&amp;rdquo;&amp;hellip;
मैं भ्रमित था और सोच रहा था, &amp;ldquo;अरे, मुझे इसे कहाँ से रोकना चाहिए?&amp;rdquo;&lt;/p>
&lt;hr>
&lt;h2 id="रदद-करन-क-सह-तरक-यह-ह">रद्द करने का सही तरीका यहाँ है!
&lt;/h2>&lt;p>बहुत शोध के बाद, मुझे पता चला कि मैं इसे निम्नलिखित पृष्ठ से रद्द कर सकता हूँ।&lt;/p>
&lt;p>👉 &lt;a class="link" href="https://myaccount.google.com/deleteservices" target="_blank" rel="noopener"
>Google खाता – सेवाएँ हटाएँ&lt;/a>&lt;/p>
&lt;p>यहाँ से &amp;ldquo;Google One&amp;rdquo; चुनें और रद्द करने की प्रक्रिया पूरी करने के लिए इसे हटा दें।&lt;/p>
&lt;hr>
&lt;h2 id="सरश">सारांश
&lt;/h2>&lt;ul>
&lt;li>Gemini का मुफ़्त ट्रायल 1 महीने का है&lt;/li>
&lt;li>समाप्त होने के बाद, आपसे स्वचालित रूप से ** प्रति माह 2,900 येन ** का शुल्क लिया जाएगा&lt;/li>
&lt;li>आधिकारिक स्पष्टीकरण पृष्ठ से रद्द करना संभव नहीं हो सकता है&lt;/li>
&lt;li>आप वास्तव में इसे ** &amp;ldquo;सेवाएँ हटाएँ&amp;rdquo; पृष्ठ ** से रद्द कर सकते हैं&lt;/li>
&lt;/ul>
&lt;p>सावधान रहें क्योंकि यदि आप सोचते हैं कि &amp;ldquo;यह मुफ़्त है तो कोई बात नहीं&amp;rdquo;, तो आपसे आपके जाने बिना शुल्क लिया जा सकता है!&lt;/p>
&lt;hr>
&lt;p>👉 जो लोग इस लेख को पढ़ रहे हैं, हो सकता है कि वे अभी सोच रहे हों कि &amp;ldquo;मैं इसे कहाँ से रद्द कर सकता हूँ?&amp;rdquo; कृपया ऊपर दिए गए लिंक को देखें।&lt;/p>
&lt;hr></description></item><item><title>PowerShell का उपयोग करके Excel, Word आदि से मेटाडेटा (व्यक्तिगत जानकारी) को बैच में कैसे निकालें</title><link>http://kenji.blog/hi/p/powershell-%E0%A4%95%E0%A4%BE-%E0%A4%89%E0%A4%AA%E0%A4%AF%E0%A5%8B%E0%A4%97-%E0%A4%95%E0%A4%B0%E0%A4%95%E0%A5%87-excel-%E0%A4%95%E0%A4%BE-%E0%A4%AE%E0%A5%87%E0%A4%9F%E0%A4%BE%E0%A4%A1%E0%A5%87%E0%A4%9F%E0%A4%BE-%E0%A4%B5%E0%A5%8D%E0%A4%AF%E0%A4%95%E0%A5%8D%E0%A4%A4%E0%A4%BF%E0%A4%97%E0%A4%A4-%E0%A4%9C%E0%A4%BE%E0%A4%A8%E0%A4%95%E0%A4%BE%E0%A4%B0%E0%A5%80-%E0%A4%95%E0%A5%88%E0%A4%B8%E0%A5%87-%E0%A4%A8%E0%A4%BF%E0%A4%95%E0%A4%BE%E0%A4%B2%E0%A5%87%E0%A4%82/</link><pubDate>Wed, 30 Jul 2025 02:42:40 +0900</pubDate><guid>http://kenji.blog/hi/p/powershell-%E0%A4%95%E0%A4%BE-%E0%A4%89%E0%A4%AA%E0%A4%AF%E0%A5%8B%E0%A4%97-%E0%A4%95%E0%A4%B0%E0%A4%95%E0%A5%87-excel-%E0%A4%95%E0%A4%BE-%E0%A4%AE%E0%A5%87%E0%A4%9F%E0%A4%BE%E0%A4%A1%E0%A5%87%E0%A4%9F%E0%A4%BE-%E0%A4%B5%E0%A5%8D%E0%A4%AF%E0%A4%95%E0%A5%8D%E0%A4%A4%E0%A4%BF%E0%A4%97%E0%A4%A4-%E0%A4%9C%E0%A4%BE%E0%A4%A8%E0%A4%95%E0%A4%BE%E0%A4%B0%E0%A5%80-%E0%A4%95%E0%A5%88%E0%A4%B8%E0%A5%87-%E0%A4%A8%E0%A4%BF%E0%A4%95%E0%A4%BE%E0%A4%B2%E0%A5%87%E0%A4%82/</guid><description>&lt;img src="http://kenji.blog/p/powershell-%E3%81%A7-excel-%E3%81%AE%E3%83%A1%E3%82%BF%E3%83%87%E3%83%BC%E3%82%BF%E5%80%8B%E4%BA%BA%E6%83%85%E5%A0%B1%E3%82%92%E5%89%8A%E9%99%A4%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/powershell_metadata_eyecatch_1788588033601.jpg" alt="Featured image of post PowerShell का उपयोग करके Excel, Word आदि से मेटाडेटा (व्यक्तिगत जानकारी) को बैच में कैसे निकालें" />&lt;h1 id="powershell-क-उपयग-करक-excel-word-आद-स-मटडट-वयकतगत-जनकर-क-बच-म-कस-नकल">&amp;ldquo;PowerShell का उपयोग करके Excel, Word आदि से मेटाडेटा (व्यक्तिगत जानकारी) को बैच में कैसे निकालें&amp;rdquo;
&lt;/h1>&lt;p>Office फ़ाइलें जैसे Excel स्वचालित रूप से निर्माता, अंतिम संशोधनकर्ता और कंपनी के नाम जैसी &amp;ldquo;मेटाडेटा (व्यक्तिगत जानकारी)&amp;rdquo; को सहेजती हैं। कई ऐसे मामले होते हैं जहाँ आप इस जानकारी को हटाना चाहते हैं, जैसे कंपनी के बाहर फ़ाइल साझा करते समय।&lt;/p>
&lt;p>इस लेख में, हम विस्तार से बताएंगे कि PowerShell का उपयोग करके Excel मेटाडेटा को कैसे हटाया जाए, जिसमें ** फ़ोल्डर के भीतर बैच प्रोसेसिंग ** और ** Word और PowerPoint जैसे अन्य Office फ़ाइलों पर अनुप्रयोग ** पर ध्यान केंद्रित किया गया है।&lt;/p>
&lt;hr>
&lt;h2 id="1-एकल-excel-फइल-स-मटडट-नकल">1. एकल Excel फ़ाइल से मेटाडेटा निकालें
&lt;/h2>&lt;p>यह किसी एकल Excel फ़ाइल से व्यक्तिगत जानकारी हटाने की सबसे बुनियादी स्क्रिप्ट है। यह Excel के COM ऑब्जेक्ट को कॉल करता है, &lt;code>RemovePersonalInformation&lt;/code> प्रॉपर्टी को &lt;code>$true&lt;/code> पर सेट करता है, और इसे ओवरराइट करके सेव करता है।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-powershell" data-lang="powershell">&lt;span class="line">&lt;span class="cl">&lt;span class="c"># Excel एप्लिकेशन को अदृश्य रूप से प्रारंभ करें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$excel&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="nb">New-Object&lt;/span> &lt;span class="n">-ComObject&lt;/span> &lt;span class="n">Excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Application&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Visible&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="vm">$false&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">DisplayAlerts&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="vm">$false&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c"># फ़ाइल खोलें (*कृपया पूर्ण पथ निर्दिष्ट करें)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$filePath&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;C:\Path\To\Your\File.xlsx&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$wb&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="nv">$excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Workbooks&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Open&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nv">$filePath&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c"># मेटाडेटा (व्यक्तिगत जानकारी) हटाने के लिए सेटिंग सक्षम करें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$wb&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">RemovePersonalInformation&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="vm">$true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c"># ओवरराइट करें और बंद करें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$wb&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Save&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$wb&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Close&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="vm">$false&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c"># Excel से बाहर निकलें और मेमोरी खाली करें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Quit&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="no">System.Runtime.Interopservices.Marshal&lt;/span>&lt;span class="p">]::&lt;/span>&lt;span class="n">ReleaseComObject&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nv">$excel&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">|&lt;/span> &lt;span class="nb">Out-Null&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;blockquote>
&lt;p>** ध्यान दें: ** सुनिश्चित करें कि आप &lt;code>Workbooks.Open()&lt;/code> के लिए ** पूर्ण पथ ** निर्दिष्ट करते हैं। सापेक्ष पथ के परिणामस्वरूप त्रुटि हो सकती है।&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="2-एक-फलडर-म-सभ-excel-फइल-क-बच-परकरय-कर">2. एक फ़ोल्डर में सभी Excel फ़ाइलों को बैच-प्रक्रिया करें
&lt;/h2>&lt;p>व्यवहार में, आप अक्सर &amp;ldquo;किसी विशिष्ट फ़ोल्डर में दर्जनों Excel फ़ाइलों से एक ही बार में सभी मेटाडेटा को हटाना&amp;rdquo; चाहेंगे। इसे &lt;code>Get-ChildItem&lt;/code> के संयोजन में लूप प्रोसेसिंग का उपयोग करके प्राप्त किया जा सकता है।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;span class="lnt">29
&lt;/span>&lt;span class="lnt">30
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-powershell" data-lang="powershell">&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$targetFolder&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;C:\Path\To\Your\Folder&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c"># फ़ोल्डर में सभी .xlsx और .xls फ़ाइलें प्राप्त करें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$excelFiles&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="nb">Get-ChildItem&lt;/span> &lt;span class="n">-Path&lt;/span> &lt;span class="nv">$targetFolder&lt;/span> &lt;span class="n">-Include&lt;/span> &lt;span class="s2">&amp;#34;*.xlsx&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s2">&amp;#34;*.xls&amp;#34;&lt;/span> &lt;span class="n">-Recurse&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nv">$excelFiles&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Count&lt;/span> &lt;span class="o">-eq&lt;/span> &lt;span class="mf">0&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">Write-Host&lt;/span> &lt;span class="s2">&amp;#34;कोई Excel फ़ाइल नहीं मिली।&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">exit&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$excel&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="nb">New-Object&lt;/span> &lt;span class="n">-ComObject&lt;/span> &lt;span class="n">Excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Application&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Visible&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="vm">$false&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">DisplayAlerts&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="vm">$false&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">foreach&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nv">$file&lt;/span> &lt;span class="k">in&lt;/span> &lt;span class="nv">$excelFiles&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">Write-Host&lt;/span> &lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">$(&lt;/span>&lt;span class="nv">$file&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Name&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="s2"> का मेटाडेटा हटाया जा रहा है...&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c"># फ़ाइल खोलें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nv">$wb&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="nv">$excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Workbooks&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Open&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nv">$file&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">FullName&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c"># मेटाडेटा निकालें और सहेजें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nv">$wb&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">RemovePersonalInformation&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="vm">$true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nv">$wb&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Save&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nv">$wb&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Close&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="vm">$false&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$excel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Quit&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="no">System.Runtime.Interopservices.Marshal&lt;/span>&lt;span class="p">]::&lt;/span>&lt;span class="n">ReleaseComObject&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nv">$excel&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">|&lt;/span> &lt;span class="nb">Out-Null&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">Write-Host&lt;/span> &lt;span class="s2">&amp;#34;सभी प्रसंस्करण पूर्ण हो गया है!&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;h2 id="3-अनय-office-फइल-word--powerpoint-स-मटडट-नकल">3. अन्य Office फ़ाइलों (Word / PowerPoint) से मेटाडेटा निकालें
&lt;/h2>&lt;p>मेटाडेटा को न केवल Excel में बल्कि Word और PowerPoint में भी बिल्कुल उसी तर्क के साथ हटाया जा सकता है। केवल बुलाए जाने वाले COM ऑब्जेक्ट का नाम भिन्न है, और दोनों में &lt;code>RemovePersonalInformation&lt;/code> प्रॉपर्टी होती है।&lt;/p>
&lt;h3 id="word-क-लए">Word के लिए
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-powershell" data-lang="powershell">&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$word&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="nb">New-Object&lt;/span> &lt;span class="n">-ComObject&lt;/span> &lt;span class="n">Word&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Application&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$word&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Visible&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="vm">$false&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$word&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">DisplayAlerts&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="mf">0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$doc&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="nv">$word&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Documents&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Open&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;C:\Path\To\Your\File.docx&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$doc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">RemovePersonalInformation&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="vm">$true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$doc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Save&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$doc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Close&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$word&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Quit&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="no">System.Runtime.Interopservices.Marshal&lt;/span>&lt;span class="p">]::&lt;/span>&lt;span class="n">ReleaseComObject&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nv">$word&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">|&lt;/span> &lt;span class="nb">Out-Null&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h3 id="powerpoint-क-लए">PowerPoint के लिए
&lt;/h3>&lt;p>PowerPoint के लिए, &lt;code>RemovePersonalInformation&lt;/code> प्रॉपर्टी सेट करना समान है, लेकिन अदृश्य शुरुआत का व्यवहार थोड़ा अलग है।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-powershell" data-lang="powershell">&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$ppt&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="nb">New-Object&lt;/span> &lt;span class="n">-ComObject&lt;/span> &lt;span class="n">PowerPoint&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Application&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c"># दूसरे से चौथे तर्कों के साथ छिपे हुए मोड (msoFalse) को निर्दिष्ट करके खोलें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$presentation&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="nv">$ppt&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Presentations&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Open&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;C:\Path\To\Your\File.pptx&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="vm">$false&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="vm">$false&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="vm">$false&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$presentation&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">RemovePersonalInformation&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="vm">$true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$presentation&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Save&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$presentation&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Close&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">$ppt&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="py">Quit&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="no">System.Runtime.Interopservices.Marshal&lt;/span>&lt;span class="p">]::&lt;/span>&lt;span class="n">ReleaseComObject&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nv">$ppt&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">|&lt;/span> &lt;span class="nb">Out-Null&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;h2 id="नषकरष">निष्कर्ष
&lt;/h2>&lt;p>PowerShell और COM ऑब्जेक्ट का उपयोग करके, आप Office फ़ाइलों से मेटाडेटा हटाने को पूरी तरह से स्वचालित कर सकते हैं। गोपनीय जानकारी या व्यक्तिगत नामों को अनजाने में लीक होने से रोकने के लिए डिलीवरी से पहले बैच प्रोसेसिंग स्क्रिप्ट का होना बहुत उपयोगी है।&lt;/p></description></item><item><title>TinyLLaMA को C++ से कॉल करने की प्रक्रिया (llama.cpp का उपयोग करके)</title><link>http://kenji.blog/hi/p/tinyllama-%E0%A4%95%E0%A5%8B-c-%E0%A4%B8%E0%A5%87-%E0%A4%95%E0%A5%89%E0%A4%B2-%E0%A4%95%E0%A4%B0%E0%A4%A8%E0%A5%87-%E0%A4%95%E0%A5%80-%E0%A4%AA%E0%A5%8D%E0%A4%B0%E0%A4%95%E0%A5%8D%E0%A4%B0%E0%A4%BF%E0%A4%AF%E0%A4%BE-llama.cpp-%E0%A4%95%E0%A4%BE-%E0%A4%89%E0%A4%AA%E0%A4%AF%E0%A5%8B%E0%A4%97-%E0%A4%95%E0%A4%B0%E0%A4%95%E0%A5%87/</link><pubDate>Sat, 19 Jul 2025 09:40:53 +0900</pubDate><guid>http://kenji.blog/hi/p/tinyllama-%E0%A4%95%E0%A5%8B-c-%E0%A4%B8%E0%A5%87-%E0%A4%95%E0%A5%89%E0%A4%B2-%E0%A4%95%E0%A4%B0%E0%A4%A8%E0%A5%87-%E0%A4%95%E0%A5%80-%E0%A4%AA%E0%A5%8D%E0%A4%B0%E0%A4%95%E0%A5%8D%E0%A4%B0%E0%A4%BF%E0%A4%AF%E0%A4%BE-llama.cpp-%E0%A4%95%E0%A4%BE-%E0%A4%89%E0%A4%AA%E0%A4%AF%E0%A5%8B%E0%A4%97-%E0%A4%95%E0%A4%B0%E0%A4%95%E0%A5%87/</guid><description>&lt;img src="http://kenji.blog/p/tinyllama-%E3%82%92-c-%E3%81%8B%E3%82%89%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%9B%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%99%E3%82%8B%E6%89%8B%E9%A0%86llama.cpp%E4%BD%BF%E7%94%A8/img.png" alt="Featured image of post TinyLLaMA को C++ से कॉल करने की प्रक्रिया (llama.cpp का उपयोग करके)" />&lt;h1 id="-tinyllama--c-सटअप-परकरय-llamacpp-क-उपयग-करक">✅ TinyLLaMA × C++ सेटअप प्रक्रिया (&lt;code>llama.cpp&lt;/code> का उपयोग करके)
&lt;/h1>&lt;hr>
&lt;h2 id="-step-1-llamacpp-तयर-कर">🔧 Step 1: llama.cpp तैयार करें
&lt;/h2>&lt;h3 id="1-1-आवशयक-वतवरण-नयनतम">1-1. आवश्यक वातावरण (न्यूनतम)
&lt;/h3>&lt;ul>
&lt;li>OS: Windows / Linux / macOS&lt;/li>
&lt;li>विकास वातावरण: g++ / clang / MSVC&lt;/li>
&lt;li>Git / CMake&lt;/li>
&lt;/ul>
&lt;h3 id="1-2-llamacpp-परपत-कर-और-बलड-कर">1-2. llama.cpp प्राप्त करें और बिल्ड करें
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">git clone https://github.com/ggerganov/llama.cpp
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">cd&lt;/span> llama.cpp
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">mkdir build
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">cd&lt;/span> build
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">cmake ..
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">cmake --build . --config Release
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;blockquote>
&lt;p>Windows पर, &lt;code>Visual Studio Developer Command Prompt&lt;/code> में &lt;code>cmake --build . --config Release&lt;/code> का उपयोग करना आसान है।&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="-step-2-tinyllama-मडल-डउनलड-और-कनवरट-कर">📦 Step 2: TinyLLaMA मॉडल डाउनलोड और कनवर्ट करें
&lt;/h2>&lt;h3 id="2-1-huggingface-स-मल-मडल-परपत-कर">2-1. HuggingFace से मूल मॉडल प्राप्त करें
&lt;/h3>&lt;p>उदाहरण: &lt;a class="link" href="https://huggingface.co/openaccess-ai-collective/TinyLlama-1.1B-Chat-v1.0" target="_blank" rel="noopener"
>TinyLLaMA-1.1B&lt;/a>&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># आवश्यकतानुसार transformers का उपयोग करके डाउनलोड करें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">pip install transformers huggingface_hub
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">python3 -m transformers.models.llama.convert_llama_weights_to_hf &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> --input_dir ./TinyLlama-1.1B-Chat &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> --model_size 1B &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> --output_dir ./hf_model
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;blockquote>
&lt;p>यह Hugging Face प्रारूप में कनवर्ट करने का चरण है।&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h3 id="2-2-gguf-पररप-म-कनवरट-कर-llamacpp-क-लए">2-2. GGUF प्रारूप में कनवर्ट करें (&lt;code>llama.cpp&lt;/code> के लिए)
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">cd&lt;/span> llama.cpp
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">python3 convert.py ./hf_model --outfile tinyllama.gguf
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h3 id="2-3-मडल-कवटइजशन-आकर-कम-करन">2-3. मॉडल क्वांटाइजेशन (आकार कम करना)
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">./quantize ./tinyllama.gguf ./tinyllama-q4.gguf q4_0
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;blockquote>
&lt;p>&lt;code>q4_0&lt;/code> 4bit क्वांटाइजेशन है। मॉडल का आकार लगभग ** 350MB ** तक कम हो जाता है।&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="-step-3-c-स-मडल-क-कल-कर-कड-उदहरण">🧪 Step 3: C++ से मॉडल को कॉल करें (कोड उदाहरण)
&lt;/h2>&lt;h3 id="3-1-सरल-c-कड-अनमन">3-1. सरल C++ कोड (अनुमान)
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;span class="lnt">29
&lt;/span>&lt;span class="lnt">30
&lt;/span>&lt;span class="lnt">31
&lt;/span>&lt;span class="lnt">32
&lt;/span>&lt;span class="lnt">33
&lt;/span>&lt;span class="lnt">34
&lt;/span>&lt;span class="lnt">35
&lt;/span>&lt;span class="lnt">36
&lt;/span>&lt;span class="lnt">37
&lt;/span>&lt;span class="lnt">38
&lt;/span>&lt;span class="lnt">39
&lt;/span>&lt;span class="lnt">40
&lt;/span>&lt;span class="lnt">41
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-cpp" data-lang="cpp">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;#34;llama.h&amp;#34;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;iostream&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">int&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_model_params&lt;/span> &lt;span class="n">model_params&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">llama_model_default_params&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_context_params&lt;/span> &lt;span class="n">ctx_params&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">llama_context_default_params&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_model&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">model&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">llama_load_model_from_file&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;tinyllama-q4.gguf&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">model_params&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_context&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">ctx&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">llama_new_context_with_model&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">model&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">ctx_params&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">std&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">string&lt;/span> &lt;span class="n">prompt&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s">&amp;#34;उपयोगकर्ता कहता है कि वह Excel डेटा पढ़ना, फ़िल्टर करना और सहेजना चाहता है। नोड कॉन्फ़िगरेशन क्या है?&amp;#34;&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_batch&lt;/span> &lt;span class="n">batch&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">llama_batch_init&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">512&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_token&lt;/span> &lt;span class="n">BOS&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">llama_token_bos&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">model&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">batch&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">token&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">BOS&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// टोकनाइज़ेशन
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="n">std&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">vector&lt;/span>&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">llama_token&lt;/span>&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">tokens&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">prompt&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">size&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">8&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">n&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">llama_tokenize&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">model&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">prompt&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">c_str&lt;/span>&lt;span class="p">(),&lt;/span> &lt;span class="n">tokens&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">data&lt;/span>&lt;span class="p">(),&lt;/span> &lt;span class="n">tokens&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">size&lt;/span>&lt;span class="p">(),&lt;/span> &lt;span class="nb">true&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">tokens&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">resize&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">size_t&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">tokens&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">size&lt;/span>&lt;span class="p">();&lt;/span> &lt;span class="o">++&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">batch&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">token&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">tokens&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">batch&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">n_tokens&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">tokens&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">size&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_decode&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ctx&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">batch&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// अनुमान परिणाम प्राप्त करें
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">for&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="mi">50&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="o">++&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_token&lt;/span> &lt;span class="n">next&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">llama_sample_token&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ctx&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="k">nullptr&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">std&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">cout&lt;/span> &lt;span class="o">&amp;lt;&amp;lt;&lt;/span> &lt;span class="n">llama_token_to_str&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">model&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">next&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_batch&lt;/span> &lt;span class="n">next_batch&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">llama_batch_init&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">next_batch&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">token&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">next&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">next_batch&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">n_tokens&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_decode&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ctx&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">next_batch&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_free&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ctx&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">llama_free_model&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">model&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;h2 id="-step-4-सकलन-वध-उदहरण">🧱 Step 4: संकलन विधि (उदाहरण)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">g++ -I./llama.cpp main.cpp ./llama.cpp/build/libllama.a -o tiny_infer -pthread -std&lt;span class="o">=&lt;/span>c++11
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;blockquote>
&lt;p>&lt;code>libllama.a&lt;/code> बिल्ड के बाद &lt;code>build/&lt;/code> निर्देशिका में बनाया जाता है।&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="-आउटपट-सरचन-उदहरण-वयवसथत">✅ आउटपुट संरचना उदाहरण (व्यवस्थित)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">my_app/
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">├── tinyllama-q4.gguf # क्वांटाइज्ड मॉडल (~350MB)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">├── main.cpp # उपरोक्त C++ कोड
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">├── llama.cpp/ # llama.cpp स्रोत
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">└── build/
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> └── libllama.a # संकलित लाइब्रेरी
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;h2 id="-उपयग-क-ममल-म-लग-करन-क-लए-परक">🧠 उपयोग के मामले में लागू करने के लिए पूरक
&lt;/h2>&lt;ul>
&lt;li>आउटपुट प्राप्त करने और &lt;code>नोड टेम्पलेट से मिलान / चयन करने&lt;/code> के लिए C++ में कोड रखें&lt;/li>
&lt;li>उदाहरण: यदि &amp;ldquo;Excel&amp;rdquo;, &amp;ldquo;फ़िल्टर&amp;rdquo;, &amp;ldquo;सहेजें&amp;rdquo; शामिल हैं → संबंधित नोड समूह उत्पन्न करें&lt;/li>
&lt;li>यह भाग &lt;code>if स्टेटमेंट + JSON टेम्पलेट लोडिंग&lt;/code> जैसी सरल संरचना के साथ ठीक है&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="-सरश">📌 सारांश
&lt;/h2>&lt;table>
&lt;thead>
&lt;tr>
&lt;th>आइटम&lt;/th>
&lt;th>विवरण&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>अनुशंसित मॉडल&lt;/td>
&lt;td>TinyLLaMA-1.1B-Chat v1.0 (GGUF + क्वांटाइजेशन)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>आकार&lt;/td>
&lt;td>~350 से 450MB (4bit क्वांटाइजेशन)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>C++ एकीकरण&lt;/td>
&lt;td>&lt;code>llama.cpp&lt;/code> का उपयोग करके संभव है, लगभग कोई बाहरी निर्भरता नहीं&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>प्रसंस्करण क्षमता&lt;/td>
&lt;td>सरल इरादे को समझने और आउटपुट वाक्य उत्पन्न करने के लिए पर्याप्त (प्राकृतिक वाक्य → संरचना)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>विस्तारशीलता&lt;/td>
&lt;td>स्लॉट-फिलिंग और टेम्पलेट कॉलिंग के साथ मिलकर, इसे एक नोड जेनरेशन AI बनाया जा सकता है&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table></description></item><item><title>Win32API + C++ के साथ प्रोग्राम बनाने के फायदे और नुकसान</title><link>http://kenji.blog/hi/p/win32api-c-%E3%81%A7%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%82%92%E4%BD%9C%E3%82%8B%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88%E3%81%A8%E3%83%87%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88/</link><pubDate>Sat, 12 Jul 2025 12:30:35 +0900</pubDate><guid>http://kenji.blog/hi/p/win32api-c-%E3%81%A7%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%82%92%E4%BD%9C%E3%82%8B%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88%E3%81%A8%E3%83%87%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88/</guid><description>&lt;img src="http://kenji.blog/p/win32api-c-%E3%81%A7%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%82%92%E4%BD%9C%E3%82%8B%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88%E3%81%A8%E3%83%87%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88/img_1.png" alt="Featured image of post Win32API + C++ के साथ प्रोग्राम बनाने के फायदे और नुकसान" />&lt;h1 id="win32api--c-क-सथ-वकस-क-आकरषण-और-चनतय">Win32API + C++ के साथ विकास का आकर्षण और चुनौतियाँ
&lt;/h1>&lt;p>उन लोगों के लिए जो विंडोज ऐप डेवलपमेंट में महारत हासिल करना चाहते हैं, &lt;strong>Win32API + C++&lt;/strong> अभी भी एक शक्तिशाली विकल्प है।
यह संयोजन, जो ऑपरेटिंग सिस्टम के साथ सबसे करीबी संभव बातचीत की अनुमति देता है, गति और लचीलापन दोनों प्रदान करता है।&lt;/p>
&lt;p>दूसरी ओर, इसे मास्टर करने के लिए दृढ़ संकल्प की आवश्यकता होती है, क्योंकि यह आधुनिक विकास शैलियों से काफी भिन्न है।&lt;/p>
&lt;p>इस पृष्ठ पर, हम एक &lt;strong>सक्रिय विंडोज ऐप डेवलपर के दृष्टिकोण&lt;/strong> से फायदे और नुकसान को स्पष्ट रूप से समझाएंगे।&lt;/p>
&lt;hr>
&lt;h2 id="फयद">फायदे
&lt;/h2>&lt;h3 id="अलटर-फसट-नटव-नषपदन">अल्ट्रा-फास्ट नेटिव निष्पादन
&lt;/h3>&lt;p>चूंकि C++ और Win32API ऑपरेटिंग सिस्टम के सबसे करीब की परत पर काम करते हैं, इसलिए लगभग कोई अनावश्यक ओवरहेड नहीं है।
CPU और मेमोरी का उपयोग अत्यंत कुशल है, जो एक &lt;strong>भारी निष्पादन गति&lt;/strong> का दावा करता है।&lt;/p>
&lt;h3 id="उचच-लचलपन-और-सवततरत">उच्च लचीलापन और स्वतंत्रता
&lt;/h3>&lt;p>आप ऐप के सभी व्यवहारों को &lt;strong>स्वयं बारीकी से नियंत्रित&lt;/strong> कर सकते हैं, जैसे विंडो नियंत्रण, एसिंक्रोनस प्रोसेसिंग, COM एकीकरण और प्रक्रिया प्रबंधन।
विशिष्ट उपकरण और अपने स्वयं के मूल ढांचे बनाना भी संभव है।&lt;/p>
&lt;h3 id="रनटइम-क-आवशयकत-क-बन-वतरत-करन-म-आसन">रनटाइम की आवश्यकता के बिना वितरित करने में आसान
&lt;/h3>&lt;p>चूंकि .NET या Java जैसे किसी बाहरी रनटाइम की आवश्यकता नहीं है, इसे &lt;strong>एकल निष्पादन योग्य फ़ाइल के रूप में वितरित किया जा सकता है&lt;/strong> ।
पुनर्वितरण के दौरान समस्याओं का खतरा कम होता है और इंस्टॉलर के बिना इसे चलाना आसान होता है।&lt;/p>
&lt;h3 id="हलक-ऐपस-बन-सकत-ह">हल्के ऐप्स बना सकते हैं
&lt;/h3>&lt;p>चूंकि इसके लिए केवल न्यूनतम आवश्यक कॉन्फ़िगरेशन की आवश्यकता होती है, इसकी विशेषता यह है कि इसका &lt;strong>मेमोरी फ़ुटप्रिंट बहुत छोटा&lt;/strong> होता है।
यह कम विशिष्टताओं वाले पीसी या वर्चुअल मशीन वातावरण पर भी आराम से चलता है।&lt;/p>
&lt;h3 id="उननत-ओएस-सतरय-नयतरण-सभव">उन्नत ओएस-स्तरीय नियंत्रण संभव
&lt;/h3>&lt;p>आप ऐसे &lt;strong>नियंत्रणों को भी महसूस कर सकते हैं जो सामान्य भाषाओं और पुस्तकालयों के साथ कठिन हैं&lt;/strong> , जैसे वैश्विक माउस और कीबोर्ड हुक, विंडो शैलियों की फाइन-ट्यूनिंग, और सिस्टम मेनू संचालन।&lt;/p>
&lt;hr>
&lt;h2 id="नकसन">नुकसान
&lt;/h2>&lt;h3 id="कम-वकस-दकषत">कम विकास दक्षता
&lt;/h3>&lt;p>यहां तक कि GUI का निर्माण भी पूरी तरह से कोड में किया जाना चाहिए, और कभी-कभी &lt;strong>सिर्फ एक बटन बनाने के लिए कोड की दर्जनों पंक्तियों की आवश्यकता होती है&lt;/strong> ।
डिज़ाइन को संशोधित करना भी जटिल है, और UI फ्रेमवर्क का उपयोग करके विकास की तुलना में उत्पादकता कम है।&lt;/p>
&lt;h3 id="रखरखव-क-कम-करन-म-आसन">रखरखाव को कम करने में आसान
&lt;/h3>&lt;p>संदेश लूप और विंडो प्रक्रियाओं जैसे &lt;strong>विशेष संरचनाओं वाले कई कोड&lt;/strong> हैं, जो पठनीयता और पुन: प्रयोज्यता में बाधा डालते हैं।
इसके ऐसे पहलू भी हैं जो टीम के विकास और दीर्घकालिक रखरखाव के लिए अनुपयुक्त हैं।&lt;/p>
&lt;h3 id="आधनक-यआई-क-समरथन-करन-मशकल">आधुनिक यूआई का समर्थन करना मुश्किल
&lt;/h3>&lt;p>हाल के वर्षों में आवश्यक &lt;strong>UX का समर्थन करना मुश्किल है&lt;/strong> , जैसे कि उच्च DPI समर्थन, टच इंटरफेस, एक्सेसिबिलिटी और डार्क मोड।
आपको प्रत्येक को मैन्युअल रूप से संभालना होगा, जिसमें बहुत प्रयास की आवश्यकता होती है।&lt;/p>
&lt;h3 id="करस-पलटफरम-क-समरथन-नह-करत">क्रॉस-प्लेटफॉर्म का समर्थन नहीं करता
&lt;/h3>&lt;p>चूंकि यह पूरी तरह से विंडोज-अनन्य एपीआई है, इसलिए इसे &lt;strong>macOS या Linux पर पोर्ट नहीं किया जा सकता&lt;/strong> है।
यदि आप क्रॉस-प्लेटफॉर्म परिनियोजन की योजना बनाते हैं, तो आपको अन्य तकनीकों का चयन करना होगा।&lt;/p>
&lt;h3 id="अतयधक-उचच-सखन-क-लगत">अत्यधिक उच्च सीखने की लागत
&lt;/h3>&lt;p>आपको उन &lt;strong>अवधारणाओं और तंत्रों को समझना चाहिए जिनका आज शायद ही कभी उपयोग किया जाता है&lt;/strong> , जैसे कि हैंडल, GDI, COM और OLE।
कई दस्तावेज़ पुराने हैं, जिन्हें सीखने के लिए समय और धैर्य की आवश्यकता होती है।&lt;/p>
&lt;hr>
&lt;h2 id="उपयकत-उपयग">उपयुक्त उपयोग
&lt;/h2>&lt;ul>
&lt;li>फ़ाइल लॉन्चर और हॉटकी समर्थकों जैसे &lt;strong>हल्के उपकरण&lt;/strong>&lt;/li>
&lt;li>क्लिपबोर्ड हेरफेर और IME नियंत्रण जैसे &lt;strong>सिस्टम उपयोगिताओं&lt;/strong>&lt;/li>
&lt;li>वैश्विक हुक और विंडो कैप्चर जैसे &lt;strong>देशी नियंत्रण-आधारित ऐप्स&lt;/strong>&lt;/li>
&lt;li>&lt;strong>ड्राइवर समर्थन उपकरण&lt;/strong> जो हार्डवेयर से निकटता से जुड़े हुए हैं&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="अनपयकत-उपयग">अनुपयुक्त उपयोग
&lt;/h2>&lt;ul>
&lt;li>&lt;strong>सामान्य उपभोक्ता-सामना करने वाले ऐप्स&lt;/strong> जहां आधुनिक यूआई / यूएक्स महत्वपूर्ण हैं&lt;/li>
&lt;li>&lt;strong>प्रोटोटाइपिंग और एमवीपी विकास&lt;/strong> गति को ध्यान में रखकर बनाए गए हैं&lt;/li>
&lt;li>दीर्घकालिक संचालन और टीम के विकास के आधार पर &lt;strong>बड़े पैमाने की परियोजनाएं&lt;/strong>&lt;/li>
&lt;li>&lt;strong>क्रॉस-प्लेटफॉर्म उत्पाद&lt;/strong> जिन्हें कई ऑपरेटिंग सिस्टम का समर्थन करने की आवश्यकता होती है&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="मलयकन-सरश">मूल्यांकन सारांश
&lt;/h2>&lt;table>
&lt;thead>
&lt;tr>
&lt;th>दृष्टिकोण&lt;/th>
&lt;th>मूल्यांकन&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>निष्पादन की गति&lt;/td>
&lt;td>◎ बहुत तेज&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>मेमोरी दक्षता&lt;/td>
&lt;td>◎ उत्कृष्ट&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>विकास की गति&lt;/td>
&lt;td>× धीमी&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>रखरखाव&lt;/td>
&lt;td>× कम&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>क्रॉस-प्लेटफॉर्म समर्थन&lt;/td>
&lt;td>× समर्थित नहीं&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>आधुनिक यूआई समर्थन&lt;/td>
&lt;td>× कमजोर&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ओएस नियंत्रण की स्वतंत्रता&lt;/td>
&lt;td>◎ बहुत अधिक&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;hr>
&lt;h2 id="नषकरष">निष्कर्ष
&lt;/h2>&lt;p>&lt;strong>Win32API + C++ उन डेवलपर्स के लिए एक उपकरण है जो &amp;ldquo;ऑपरेटिंग सिस्टम में सब कुछ खुद संभालना चाहते हैं&amp;rdquo;।&lt;/strong>
हालाँकि इसकी शक्ति अपार है, इसके सीखने और संचालन के लिए तदनुसार दृढ़ संकल्प की आवश्यकता होती है।&lt;/p>
&lt;blockquote>
&lt;p>क्या &amp;ldquo;साहसपूर्वक चुनना&amp;rdquo; उचित है, यह आपके द्वारा लक्षित ऐप की प्रकृति पर निर्भर करता है।&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>जीयूआई फ्रेमवर्क या आधुनिक भाषाओं पर भरोसा किए बिना &lt;code>#include &amp;lt;windows.h&amp;gt;&lt;/code> की दुनिया में गोता लगाना ――
वह विकल्प आज भी सार्थक है।&lt;/p></description></item><item><title>FizzBuzz</title><link>http://kenji.blog/hi/p/fizzbuzz/</link><pubDate>Fri, 18 Apr 2025 00:58:11 +0900</pubDate><guid>http://kenji.blog/hi/p/fizzbuzz/</guid><description>&lt;img src="http://kenji.blog/p/fizzbuzz/img.png" alt="Featured image of post FizzBuzz" />&lt;h2 id="आखर-यह-fizzbuzz-ह-कय">आखिर यह FizzBuzz है क्या?
&lt;/h2>&lt;p>नमस्ते!&lt;/p>
&lt;p>आज मैं &amp;ldquo;FizzBuzz&amp;rdquo; के बारे में लिखना चाहता हूँ।&lt;/p>
&lt;p>चाहे आप ऐसा सोचते हों &amp;ldquo;अरे, मैं इसे जानता हूँ!&amp;rdquo;, या &amp;ldquo;मैंने इसके बारे में सुना है, लेकिन मुझे समझ में नहीं आया&amp;rdquo;, कृपया कुछ देर मेरे साथ रहें। इसे पढ़ने में कुछ ही मिनट लगेंगे, और शायद आप सोचें &amp;ldquo;यह समझ में आता है।&amp;rdquo;&lt;/p>
&lt;hr>
&lt;h3 id="कय-यह-सच-ह-क-यद-आप-fizzbuzz-नह-लख-सकत-त-आप-एक-परगरमर-क-रप-म-असफल-ह">क्या यह सच है कि &amp;ldquo;यदि आप FizzBuzz नहीं लिख सकते, तो आप एक प्रोग्रामर के रूप में असफल हैं&amp;rdquo;?
&lt;/h3>&lt;p>FizzBuzz, संक्षेप में, कुछ ऐसा है।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;span class="lnt">9
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="k">for&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="nb">range&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">101&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">15&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;FizzBuzz&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">elif&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">3&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;Fizz&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">elif&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">5&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;Buzz&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>हाँ, यह प्रसिद्ध &amp;ldquo;FizzBuzz समस्या&amp;rdquo; है।&lt;/p>
&lt;p>आप 1 से 100 तक की संख्याओं को क्रम में देखते हैं,&lt;br>
यदि यह 3 का गुणज है, तो &amp;ldquo;Fizz&amp;rdquo; प्रिंट करें, यदि यह 5 का गुणज है, तो &amp;ldquo;Buzz&amp;rdquo;,&lt;br>
यदि यह दोनों का गुणज है, तो &amp;ldquo;FizzBuzz&amp;rdquo; प्रिंट करें - यह बहुत ही सरल है।&lt;/p>
&lt;p>और फिर भी, किसी कारण से, इसे अक्सर &amp;ldquo;प्रोग्रामर के लिए न्यूनतम परीक्षण&amp;rdquo; के रूप में माना जाता है। यह साक्षात्कारों में आता है, और सोशल मीडिया पर आपको ऐसी बातें देखने को मिलेंगी जैसे &amp;ldquo;कोई जो FizzBuzz भी नहीं लिख सकता&amp;hellip;&amp;rdquo;&lt;/p>
&lt;p>लेकिन, एक मिनट रुकिए।&lt;/p>
&lt;p>क्या हम वास्तव में कह सकते हैं कि &amp;ldquo;FizzBuzz नहीं लिख सकना = प्रोग्रामिंग नहीं कर पाना&amp;rdquo;?&lt;/p>
&lt;hr>
&lt;h3 id="यह-कर-सकन-क-बर-म-नह-ह-बलक-कय-आपक-पस-कर-सकन-क-सथत-ह">यह कर सकने के बारे में नहीं है, बल्कि क्या आपके पास कर सकने की &amp;ldquo;स्थिति&amp;rdquo; है
&lt;/h3>&lt;p>यह सच है कि FizzBuzz के लिए सिंटैक्स की समझ और बुनियादी तार्किक सोच की आवश्यकता होती है। इसलिए यह समझ में आता है कि इसका उपयोग &amp;ldquo;मूल बातों की जाँच&amp;rdquo; करने के लिए किया जाता है।&lt;/p>
&lt;p>लेकिन, यहाँ बात यह है।&lt;/p>
&lt;p>अगर माहौल अलग है, तो नतीजे भी अलग होंगे।&lt;/p>
&lt;p>उदाहरण के लिए,&lt;/p>
&lt;ul>
&lt;li>जब आप किसी ऐसे साक्षात्कारकर्ता के सामने घबराए हों जिससे आप पहली बार मिले हैं&lt;/li>
&lt;li>जब आपको अचानक एक व्हाइटबोर्ड दिया जाता है और आपके पास कोई संपादक नहीं होता है&lt;/li>
&lt;li>जब आपको तुरंत याद नहीं आता, &amp;ldquo;अरे, मॉड्यूलो (modulo) क्या है?&amp;rdquo;&lt;/li>
&lt;/ul>
&lt;p>&amp;hellip;क्या ऐसा नहीं होता? हम इंसान हैं। मुझे लगता है कि ऐसा होता है।&lt;/p>
&lt;p>इसलिए, &amp;ldquo;क्या आप FizzBuzz लिख सकते हैं&amp;rdquo; के बजाय, मुझे लगता है कि &amp;ldquo;क्या आप खुद को ऐसी स्थिति में ला सकते हैं जहाँ आप FizzBuzz लिख सकें&amp;rdquo; वास्तव में अधिक महत्वपूर्ण है।&lt;/p>
&lt;hr>
&lt;h3 id="बस-परशकषण-ल-और-यह-ठक-ह-जएग-क-समनय-सलह-क-नकसन">&amp;ldquo;बस प्रशिक्षण लें और यह ठीक हो जाएगा&amp;rdquo; की सामान्य सलाह का नुकसान
&lt;/h3>&lt;p>जब यह विषय आता है, तो &amp;ldquo;तो हर दिन अभ्यास करो!&amp;rdquo; जैसी सलाह आमतौर पर दी जाती है।&lt;/p>
&lt;p>यह सच है कि बार-बार अभ्यास करने से आप इसे धाराप्रवाह रूप से लिख सकेंगे, और यह अपने आप में एक अच्छी बात है। लेकिन अगर हम इस आधार से शुरू करते हैं कि &amp;ldquo;यदि आप FizzBuzz नहीं लिख सकते हैं तो आप असफल हैं,&amp;rdquo; तो यह आसानी से सिर्फ एक डर में बदल सकता है।&lt;/p>
&lt;p>दूसरे शब्दों में, यह एक ऐसी संरचना बनाने की प्रवृत्ति रखता है जहाँ आपको लगता है कि &amp;ldquo;मैंने गलती की = मैं बेकार हूँ।&amp;rdquo;&lt;/p>
&lt;p>उदाहरण के लिए, जिस दिन आप देर तक सोते हैं, क्या आप यह नहीं सोचते कि &amp;ldquo;मैं आलसी हूँ&amp;hellip;&amp;rdquo;? लेकिन ऐसा हो सकता है कि आपका शरीर उस समय थका हुआ हो।&lt;/p>
&lt;p>FizzBuzz भी ऐसा ही है।&lt;/p>
&lt;hr>
&lt;h3 id="इसक-बवजद-fizzbuzz-अभ-भ-एक-अचछ-सवल-ह">इसके बावजूद, FizzBuzz अभी भी एक अच्छा सवाल है
&lt;/h3>&lt;p>इसके बावजूद, FizzBuzz बुरा नहीं है।&lt;/p>
&lt;p>बल्कि, मुझे लगता है कि यह बहुत ही अच्छी तरह से तैयार किया गया प्रश्न है। नियम सरल हैं, और विस्तार करना आसान है। उदाहरण के लिए, यदि आप इसे इस तरह बदलते हैं, तो आपकी सोच गहरी होगी।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="k">for&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="nb">range&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">101&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">output&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">3&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">output&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="s2">&amp;#34;Fizz&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">5&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">output&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="s2">&amp;#34;Buzz&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">output&lt;/span> &lt;span class="ow">or&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>यह एक उदाहरण है कि &amp;ldquo;आप if-elif-else का उपयोग किए बिना भी इसे लिख सकते हैं।&amp;rdquo; यह थोड़ा स्मार्ट है, है ना?&lt;/p>
&lt;p>दूसरे शब्दों में, FizzBuzz केवल &amp;ldquo;आप यह कर सके या नहीं&amp;rdquo; के बारे में नहीं है, बल्कि यह यह देखने के लिए एक प्रवेश द्वार के रूप में भी कार्य करता है कि &amp;ldquo;आप इसे कैसे लिखते हैं&amp;rdquo; और &amp;ldquo;आप कितना समझते हैं।&amp;rdquo;&lt;/p>
&lt;hr>
&lt;h3 id="सकषप-म">संक्षेप में
&lt;/h3>&lt;p>मुझे लगता है कि हमें इस बात को बहुत अधिक महत्व नहीं देना चाहिए कि आप FizzBuzz कर सकते हैं या नहीं।&lt;/p>
&lt;p>भले ही आप इसे नहीं लिख पाए हों, यह सिर्फ इतना हो सकता है कि &amp;ldquo;आप अभी ठीक महसूस नहीं कर रहे थे,&amp;rdquo; और अक्सर आप बाद में ध्यान से सोचने पर इसे कर सकेंगे।&lt;/p>
&lt;p>जल्दबाजी न करें, चलिए धीरे-धीरे आगे बढ़ते हैं।&lt;/p>
&lt;p>कोड इंसानों द्वारा लिखा जाता है। इंसान होने के नाते, हम कभी-कभी चीजें भूल जाते हैं और घबरा जाते हैं। इसे स्वीकार करते हुए, मुझे लगता है कि यह पर्याप्त है अगर हम थोड़ा-थोड़ा करके आगे बढ़ सकें।&lt;/p>
&lt;p>तो, चलिए आज भी आराम से कोड लिखते हैं।&lt;/p></description></item><item><title>हनोई का टॉवर</title><link>http://kenji.blog/hi/p/tower-of-hanoi/</link><pubDate>Thu, 17 Apr 2025 22:23:14 +0900</pubDate><guid>http://kenji.blog/hi/p/tower-of-hanoi/</guid><description>&lt;img src="http://kenji.blog/p/%E3%83%8F%E3%83%8E%E3%82%A4%E3%81%AE%E5%A1%94/img.png" alt="Featured image of post हनोई का टॉवर" />&lt;h1 id="हनई-क-टवर">हनोई का टॉवर
&lt;/h1>&lt;p>नमस्ते!&lt;/p>
&lt;p>आज, मैं एक पायथन उदाहरण कार्यक्रम का उपयोग करके &amp;ldquo;हनोई के टॉवर&amp;rdquo; के बारे में समझाना चाहूंगा।&lt;/p>
&lt;hr>
&lt;h2 id="हनई-क-टवर-कय-ह">हनोई का टॉवर क्या है?
&lt;/h2>&lt;p>हनोई का टॉवर एक पहेली है जिसमें 3 छड़ें और कई डिस्क का उपयोग किया जाता है। डिस्क अलग-अलग आकार के होते हैं, और शुरुआत में, वे आकार के घटते क्रम में एक छड़ पर रखे होते हैं। नियम इस प्रकार हैं:&lt;/p>
&lt;ol>
&lt;li>एक बार में केवल एक डिस्क को ले जाया जा सकता है।&lt;/li>
&lt;li>एक बड़ी डिस्क को एक छोटी डिस्क के ऊपर नहीं रखा जा सकता है।&lt;/li>
&lt;/ol>
&lt;p>इस पहेली को पुनरावर्ती सोच सीखने के लिए एक बेहतरीन शिक्षण सामग्री माना जाता है। पुनरावृत्ति एक समस्या को उसी प्रकार की छोटी समस्याओं में तोड़कर हल करने का एक तरीका है। हनोई के टॉवर में, n डिस्क को ले जाने के लिए, हम n-1 डिस्क को ले जाने के संचालन को दोहराते हैं।&lt;/p>
&lt;hr>
&lt;h2 id="आइए-पयथन-क-सथ-हनई-क-टवर-क-हल-कर">आइए पायथन के साथ हनोई के टॉवर को हल करें
&lt;/h2>&lt;p>नीचे पायथन में हनोई के टॉवर को हल करने के लिए एक नमूना कोड है।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">hanoi&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">source&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">target&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">auxiliary&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">n&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Move disk 1 from &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">source&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2"> to &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">target&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">hanoi&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">n&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">source&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">auxiliary&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">target&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;Move disk &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2"> from &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">source&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2"> to &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">target&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">hanoi&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">n&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">auxiliary&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">target&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">source&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># उदाहरण: 3 डिस्क को A से C पर ले जाएं&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">hanoi&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">3&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s1">&amp;#39;A&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s1">&amp;#39;C&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s1">&amp;#39;B&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>इस कोड में, &lt;code>hanoi&lt;/code> फ़ंक्शन को पुनरावर्ती रूप से कहा जाता है, और डिस्क को ले जाने के चरण प्रदर्शित होते हैं। उदाहरण के लिए, 3 डिस्क के मामले में, निम्न आउटपुट प्राप्त होता है:&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Move disk 1 from A to C
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Move disk 2 from A to B
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Move disk 1 from C to B
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Move disk 3 from A to C
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Move disk 1 from B to A
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Move disk 2 from B to C
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Move disk 1 from A to C
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>इस तरह, एक पुनरावर्ती दृष्टिकोण का उपयोग करके, जटिल समस्याओं को आसानी से हल किया जा सकता है।&lt;/p>
&lt;hr>
&lt;h2 id="64-डसक-क-ल-जन-म-कतन-समय-लगत-ह">64 डिस्क को ले जाने में कितना समय लगता है?
&lt;/h2>&lt;p>हनोई के टॉवर में चालों की संख्या कम से कम 2^n - 1 बार आवश्यक है। दूसरे शब्दों में, 64 डिस्क को ले जाने के लिए, 2^64 - 1 चालें, लगभग 1.84×10^19 चालों की आवश्यकता होती है। यदि आप एक सेकंड में एक चाल चल सकते हैं, तो भी इसमें लगभग 584.9 बिलियन वर्ष लगेंगे। यह ब्रह्मांड की आयु (लगभग 13.7 बिलियन वर्ष) का लगभग 42 गुना है।&lt;/p>
&lt;p>इस प्रकार, जैसे-जैसे डिस्क की संख्या बढ़ती है, आवश्यक चालों की संख्या घातीय रूप से बढ़ती है। इसलिए, व्यवहार में 64 डिस्क को ले जाना यथार्थवादी नहीं है।&lt;/p>
&lt;hr>
&lt;h2 id="सरश">सारांश
&lt;/h2>&lt;p>पुनरावर्ती सोच सीखने के लिए हनोई का टॉवर एक सही पहेली है। पायथन के साथ, आप आसानी से इसके समाधान को लागू कर सकते हैं। हालांकि, सावधान रहें, क्योंकि डिस्क की संख्या बढ़ने पर आवश्यक चालों की संख्या में भारी वृद्धि होती है।&lt;/p>
&lt;p>पुनरावर्ती दृष्टिकोण को समझकर और वास्तव में कोड लिखने का प्रयास करके, आप अपने प्रोग्रामिंग कौशल में सुधार कर सकते हैं। कृपया हनोई के टॉवर को चुनौती देने का प्रयास करें।&lt;/p>
&lt;hr></description></item><item><title>C++ से C++/CLI DLL के माध्यम से PowerShell को निष्पादित करने के चरण</title><link>http://kenji.blog/hi/p/c-%E3%81%8B%E3%82%89-powershell-%E3%82%92-c-cli-dll-%E7%B5%8C%E7%94%B1%E3%81%A7%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E6%89%8B%E9%A0%86/</link><pubDate>Wed, 16 Apr 2025 01:58:03 +0900</pubDate><guid>http://kenji.blog/hi/p/c-%E3%81%8B%E3%82%89-powershell-%E3%82%92-c-cli-dll-%E7%B5%8C%E7%94%B1%E3%81%A7%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E6%89%8B%E9%A0%86/</guid><description>&lt;img src="http://kenji.blog/p/c-%E3%81%8B%E3%82%89-powershell-%E3%82%92-c-cli-dll-%E7%B5%8C%E7%94%B1%E3%81%A7%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E6%89%8B%E9%A0%86/img.png" alt="Featured image of post C++ से C++/CLI DLL के माध्यम से PowerShell को निष्पादित करने के चरण" />&lt;h1 id="-c-स-ccli-dll-क-मधयम-स-powershell-क-नषपदत-करन-क-चरण-visual-studio-2022--c">🎯 C++ से C++/CLI DLL के माध्यम से PowerShell को निष्पादित करने के चरण (Visual Studio 2022 / C++)
&lt;/h1>&lt;h2 id="-समगर-वसतकल">✅ समग्र वास्तुकला
&lt;/h2>&lt;h3 id="--cli-रपर-dll-ccli">🔹 ① CLI रैपर DLL (C++/CLI)
&lt;/h3>&lt;p>PowerShell स्क्रिप्ट को निष्पादित करने की कार्यक्षमता प्रदान करता है।&lt;/p>
&lt;h3 id="--नटव-c-कलर">🔹 ② नेटिव C++ कॉलर
&lt;/h3>&lt;p>PowerShell स्क्रिप्ट चलाने के लिए CLI DLL को कॉल करता है।&lt;/p>
&lt;hr>
&lt;h2 id="-चरण-1-cli-रपर-dll-परजकट-बनन">🔧 चरण 1: CLI रैपर DLL प्रोजेक्ट बनाना
&lt;/h2>&lt;h3 id="1-परजकट-बनन">1. प्रोजेक्ट बनाना
&lt;/h3>&lt;ul>
&lt;li>[नया प्रोजेक्ट बनाएँ] → [C++] → &lt;strong>CLR क्लास लाइब्रेरी (.NET Framework)&lt;/strong>&lt;/li>
&lt;li>नाम: &lt;code>PowerShellWrapper&lt;/code>&lt;/li>
&lt;/ul>
&lt;blockquote>
&lt;p>💡 यदि यह टेम्प्लेट प्रदर्शित नहीं होता है, तो &amp;ldquo;.NET डेस्कटॉप विकास&amp;rdquo; वर्कलोड स्थापित करें।&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h3 id="2-nuget-पकज-जड">2. NuGet पैकेज जोड़ें
&lt;/h3>&lt;ol>
&lt;li>प्रोजेक्ट पर राइट-क्लिक करें → [NuGet पैकेज प्रबंधित करें]&lt;/li>
&lt;li>&lt;code>System.Management.Automation&lt;/code> खोजें और स्थापित करें&lt;br>
(संस्करण 5.x या 7.x)&lt;/li>
&lt;/ol>
&lt;hr>
&lt;h3 id="3-cli-कड-करयनवयन">3. CLI कोड कार्यान्वयन
&lt;/h3>&lt;h4 id="powershellwrapperh">PowerShellWrapper.h
&lt;/h4>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-cpp" data-lang="cpp">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#pragma once
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">using&lt;/span> &lt;span class="k">namespace&lt;/span> &lt;span class="n">System&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">namespace&lt;/span> &lt;span class="n">PowerShellWrapper&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">public&lt;/span> &lt;span class="n">ref&lt;/span> &lt;span class="k">class&lt;/span> &lt;span class="nc">PowerShellExecutor&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">public&lt;/span>&lt;span class="o">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">String&lt;/span>&lt;span class="o">^&lt;/span> &lt;span class="n">Execute&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">String&lt;/span>&lt;span class="o">^&lt;/span> &lt;span class="n">script&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">};&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h4 id="powershellwrappercpp">PowerShellWrapper.cpp
&lt;/h4>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-cpp" data-lang="cpp">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;#34;PowerShellWrapper.h&amp;#34;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>&lt;span class="k">using&lt;/span> &lt;span class="k">namespace&lt;/span> &lt;span class="n">System&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">using&lt;/span> &lt;span class="k">namespace&lt;/span> &lt;span class="n">System&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">Management&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">Automation&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">using&lt;/span> &lt;span class="k">namespace&lt;/span> &lt;span class="n">System&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">Collections&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">ObjectModel&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">String&lt;/span>&lt;span class="o">^&lt;/span> &lt;span class="n">PowerShellWrapper&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">PowerShellExecutor&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">Execute&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">String&lt;/span>&lt;span class="o">^&lt;/span> &lt;span class="n">script&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">PowerShell&lt;/span>&lt;span class="o">^&lt;/span> &lt;span class="n">ps&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">PowerShell&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">Create&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ps&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">AddScript&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">script&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Collection&lt;/span>&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">PSObject&lt;/span>&lt;span class="o">^&amp;gt;^&lt;/span> &lt;span class="n">results&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">ps&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">Invoke&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">System&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">Text&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">StringBuilder&lt;/span>&lt;span class="o">^&lt;/span> &lt;span class="n">sb&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">gcnew&lt;/span> &lt;span class="n">System&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">Text&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">StringBuilder&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span> &lt;span class="nf">each&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">PSObject&lt;/span>&lt;span class="o">^&lt;/span> &lt;span class="n">result&lt;/span> &lt;span class="n">in&lt;/span> &lt;span class="n">results&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">sb&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">AppendLine&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">result&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">ToString&lt;/span>&lt;span class="p">());&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">sb&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">ToString&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;h2 id="-चरण-2-नटव-c-स-कल-करन">🔧 चरण 2: नेटिव C++ से कॉल करना
&lt;/h2>&lt;h3 id="1-c-कसल-ऐप-परजकट-बनन">1. C++ कंसोल ऐप प्रोजेक्ट बनाना
&lt;/h3>&lt;ul>
&lt;li>नाम: &lt;code>NativeApp&lt;/code>&lt;/li>
&lt;/ul>
&lt;h3 id="2-सदरभ-सटग">2. संदर्भ सेटिंग
&lt;/h3>&lt;ul>
&lt;li>प्रोजेक्ट पर राइट-क्लिक करें → [जोड़ें] → [संदर्भ] → प्रोजेक्ट → &lt;code>PowerShellWrapper&lt;/code> जोड़ें&lt;/li>
&lt;li>[गुण] → [C/C++] → [कॉमन लैंग्वेज रनटाइम सपोर्ट] → &lt;strong>/clr&lt;/strong> में बदलें&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="3-नषपदन-कड-maincpp">3. निष्पादन कोड (main.cpp)
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-cpp" data-lang="cpp">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#using &amp;lt;System.dll&amp;gt;
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#using &amp;#34;..\\PowerShellWrapper\\Debug\\PowerShellWrapper.dll&amp;#34;
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">using&lt;/span> &lt;span class="k">namespace&lt;/span> &lt;span class="n">System&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">using&lt;/span> &lt;span class="k">namespace&lt;/span> &lt;span class="n">PowerShellWrapper&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">int&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">PowerShellExecutor&lt;/span>&lt;span class="o">^&lt;/span> &lt;span class="n">executor&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">gcnew&lt;/span> &lt;span class="n">PowerShellExecutor&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">String&lt;/span>&lt;span class="o">^&lt;/span> &lt;span class="n">result&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">executor&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">Execute&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;Get-Process | Select-Object -First 1&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Console&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">WriteLine&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">result&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;h2 id="-अतरकत-जनकर-idl--tlb--com-पजकरण">💡 अतिरिक्त जानकारी (IDL / TLB / COM पंजीकरण)
&lt;/h2>&lt;ul>
&lt;li>यह कॉन्फ़िगरेशन COM के बजाय सीधे .NET DLL को संदर्भित करता है, इसलिए &lt;strong>IDL, TLB, या COM पंजीकरण की आवश्यकता नहीं है&lt;/strong> ।&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="-अतम-वसतकल">✅ अंतिम वास्तुकला
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Solution
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">├── PowerShellWrapper (C++/CLI DLL)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">│ └── PowerShellExecutor
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">├── NativeApp (C++ EXE)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> └── main.cpp → DLL कॉल
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr></description></item><item><title>Android (Google Pixel) डिवाइस सॉफ़्टवेयर रिस्टोर (आरंभिकरण/मरम्मत) प्रक्रिया</title><link>http://kenji.blog/hi/p/androidgoogle-pixel%E7%AB%AF%E6%9C%AB%E3%81%AE%E5%BE%A9%E5%85%83%E6%89%8B%E9%A0%86/</link><pubDate>Fri, 28 Feb 2025 01:20:41 +0900</pubDate><guid>http://kenji.blog/hi/p/androidgoogle-pixel%E7%AB%AF%E6%9C%AB%E3%81%AE%E5%BE%A9%E5%85%83%E6%89%8B%E9%A0%86/</guid><description>&lt;img src="http://kenji.blog/p/androidgoogle-pixel%E7%AB%AF%E6%9C%AB%E3%81%AE%E5%BE%A9%E5%85%83%E6%89%8B%E9%A0%86/pixel_restore_eyecatch_1788588727945.jpg" alt="Featured image of post Android (Google Pixel) डिवाइस सॉफ़्टवेयर रिस्टोर (आरंभिकरण/मरम्मत) प्रक्रिया" />&lt;h1 id="android-google-pixel-डवइस-रसटर-परकरय">Android (Google Pixel) डिवाइस रिस्टोर प्रक्रिया
&lt;/h1>&lt;p>यदि आपके Google Pixel डिवाइस में कोई गंभीर सिस्टम समस्या आती है, जैसे &amp;ldquo;लगातार रीस्टार्ट होना (बूटलूप)&amp;rdquo;, &amp;ldquo;लोगो स्क्रीन पर अटक जाना&amp;rdquo;, या &amp;ldquo;सिस्टम का अत्यधिक अस्थिर होना&amp;rdquo;, तो आप Google द्वारा प्रदान किए गए आधिकारिक &lt;strong>&amp;ldquo;Pixel Update and Software Repair&amp;rdquo;&lt;/strong> टूल का उपयोग करके ब्राउज़र के माध्यम से अपने डिवाइस के सॉफ़्टवेयर को सुरक्षित रूप से रिपेयर (रिस्टोर) कर सकते हैं।&lt;/p>
&lt;p>इस लेख में, हम विशिष्ट प्रक्रियाओं और ध्यान रखने योग्य बातों के बारे में विस्तार से बताएंगे।&lt;/p>
&lt;hr>
&lt;h2 id="1-रसटर-टल-एकसस-कर">1. रिस्टोर टूल एक्सेस करें
&lt;/h2>&lt;p>सबसे पहले, अपने PC (Windows या Mac) के ब्राउज़र (Google Chrome या Microsoft Edge अनुशंसित) से निम्नलिखित आधिकारिक रिपेयर टूल पेज पर जाएं:&lt;/p>
&lt;p>🔗 &lt;strong>&lt;a class="link" href="https://pixelrepair.withgoogle.com/carrier_selection" target="_blank" rel="noopener"
>Pixel Update and Software Repair आधिकारिक साइट&lt;/a>&lt;/strong>&lt;/p>
&lt;blockquote>
&lt;p>&lt;strong>※ ध्यान दें ※&lt;/strong>
रिस्टोर प्रक्रिया निष्पादित करते समय, डिवाइस पर मौजूद डेटा (फ़ोटो, ऐप्स, संपर्क, आदि) &lt;strong>पूरी तरह से डिलीट (आरंभिकृत)&lt;/strong> हो सकता है। यदि डिवाइस काम करने की स्थिति में है, तो कृपया पहले ही Google Drive आदि पर बैकअप अवश्य लें।&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="2-रसटर-क-लए-परव-तयर">2. रिस्टोर के लिए पूर्व तैयारी
&lt;/h2>&lt;p>प्रक्रिया को सुचारू रूप से चलाने के लिए, निम्नलिखित तैयारी करें:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>बैटरी चार्जिंग&lt;/strong>
यदि प्रक्रिया के बीच में बिजली चली जाती है, तो डिवाइस ब्रिक (पूरी तरह से खराब) हो सकता है। सुनिश्चित करें कि बैटरी कम से कम 50% चार्ज हो, या बेहतर होगा कि यह पूरी तरह चार्ज हो।&lt;/li>
&lt;li>&lt;strong>असली USB केबल का उपयोग करें&lt;/strong>
डेटा ट्रांसफर स्थिर रखने के लिए, डिवाइस के साथ आए असली USB-C केबल का उपयोग करने की दृढ़ता से अनुशंसा की जाती है।&lt;/li>
&lt;li>&lt;strong>(यदि आवश्यक हो) ड्राइवर इंस्टॉल करें&lt;/strong>
Windows PC का उपयोग करते समय, हो सकता है कि डिवाइस ठीक से पहचाना न जाए। उस स्थिति में, कृपया &lt;a class="link" href="https://developer.android.com/studio/run/win-usb" target="_blank" rel="noopener"
>Google USB ड्राइवर&lt;/a> इंस्टॉल करें।&lt;/li>
&lt;/ol>
&lt;hr>
&lt;h2 id="3-वशषट-रसटर-चरण">3. विशिष्ट रिस्टोर चरण
&lt;/h2>&lt;p>तैयार होने के बाद, रिस्टोर करने के लिए स्क्रीन पर दिए गए निर्देशों का पालन करें।&lt;/p>
&lt;h3 id="step-1-करयर-चन-और-डवइस-कनकट-कर">Step 1: कैरियर चुनें और डिवाइस कनेक्ट करें
&lt;/h3>&lt;p>साइट खोलने पर, सबसे पहले संचार कैरियर (मोबाइल फोन कंपनी) चुनने वाली स्क्रीन दिखाई देगी। यदि यह सिम-फ्री है या किसी कैरियर से बंधा नहीं है, तो &amp;ldquo;अन्य (Other)&amp;rdquo; आदि चुनें।
उसके बाद, USB केबल का उपयोग करके PC और Pixel डिवाइस को कनेक्ट करें।&lt;/p>
&lt;h3 id="step-2-डवइस-क-रसकय-मड-fastboot-मड-म-डल">Step 2: डिवाइस को &amp;ldquo;रेस्क्यू मोड (Fastboot मोड)&amp;rdquo; में डालें
&lt;/h3>&lt;p>स्क्रीन पर दिए गए निर्देशों का पालन करते हुए, डिवाइस बंद होने की स्थिति से, Fastboot मोड (काले बैकग्राउंड के साथ गिरे हुए Android रोबोट वाली स्क्रीन) शुरू करने के लिए &lt;strong>पावर बटन और वॉल्यूम कम करने वाले बटन को एक साथ दबाकर रखें&lt;/strong> ।&lt;/p>
&lt;h3 id="step-3-pc-पर-डवइस-क-पहचनन-द">Step 3: PC पर डिवाइस को पहचानने दें
&lt;/h3>&lt;p>ब्राउज़र पर &amp;ldquo;डिवाइस कनेक्ट करें&amp;rdquo; बटन पर क्लिक करने पर, एक पॉप-अप खुलेगा जिसमें कनेक्टेड Pixel डिवाइस की सूची दिखाई देगी। लक्ष्य डिवाइस चुनें और कनेक्शन की अनुमति दें।&lt;/p>
&lt;h3 id="step-4-सफटवयर-डउनलड-और-इसटल-कर">Step 4: सॉफ़्टवेयर डाउनलोड और इंस्टॉल करें
&lt;/h3>&lt;p>जब डिवाइस की पहचान हो जाती है, तो सबसे उपयुक्त Android OS (फ़र्मवेयर) संस्करण स्वचालित रूप से चुना जाता है। &amp;ldquo;इंस्टॉल करें&amp;rdquo; पर क्लिक करने पर, सॉफ़्टवेयर PC पर डाउनलोड हो जाएगा और डिवाइस पर राइटिंग (फ़्लैशिंग) प्रक्रिया तुरंत शुरू हो जाएगी।&lt;/p>
&lt;blockquote>
&lt;p>⚠️ &lt;strong>चेतावनी:&lt;/strong> इस प्रक्रिया के दौरान, &lt;strong>कभी भी USB केबल न निकालें या PC को बंद न करें।&lt;/strong>&lt;/p>
&lt;/blockquote>
&lt;h3 id="step-5-समपन-और-पररभक-सटअप">Step 5: समापन और प्रारंभिक सेटअप
&lt;/h3>&lt;p>जब प्रगति पट्टी 100% तक पहुँच जाती है और &amp;ldquo;पूर्ण&amp;rdquo; संदेश दिखाई देता है, तो रिस्टोर सफल हो गया है। डिवाइस स्वचालित रूप से रीस्टार्ट होगा और वही प्रारंभिक सेटअप स्क्रीन (&amp;ldquo;नमस्ते&amp;rdquo; स्क्रीन) दिखाई देगी जो आपको इसे खरीदते समय मिली थी।&lt;/p>
&lt;hr>
&lt;h2 id="नषकरष">निष्कर्ष
&lt;/h2>&lt;p>Google Pixel का आधिकारिक रिपेयर टूल एक उत्कृष्ट टूल है जो आपको विशेष कमांड (adb या fastboot) का उपयोग किए बिना केवल ब्राउज़र में क्लिक करके सुरक्षित रूप से फ़र्मवेयर फ्लैश करने की अनुमति देता है।&lt;/p>
&lt;p>डिवाइस में खराबी के कारण इसे दुकान पर ले जाने से पहले इस प्रक्रिया को आजमाने से समस्या आसानी से हल हो सकती है। कृपया इसे अवश्य आजमाएं।&lt;/p></description></item><item><title>पायथन कोड स्निपेट्स</title><link>http://kenji.blog/hi/p/python%E3%82%B3%E3%83%BC%E3%83%89%E7%89%87/</link><pubDate>Mon, 24 Feb 2025 18:21:14 +0900</pubDate><guid>http://kenji.blog/hi/p/python%E3%82%B3%E3%83%BC%E3%83%89%E7%89%87/</guid><description>&lt;img src="http://kenji.blog/p/python%E3%82%B3%E3%83%BC%E3%83%89%E7%89%87/img.png" alt="Featured image of post पायथन कोड स्निपेट्स" />&lt;p>मानक लाइब्रेरी का उपयोग करके नमूना कोड का परिचय।&lt;/p>
&lt;h1 id="एक-छव-डउनलड-कर-और-परदरशत-कर">एक छवि डाउनलोड करें और प्रदर्शित करें
&lt;/h1>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">urllib.request&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">tempfile&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">os&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">webbrowser&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">time&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">url&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s2">&amp;#34;https://www.aomori-ringo.or.jp/kids/wp-content/uploads/2021/11/apple.png&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">try&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">with&lt;/span> &lt;span class="n">urllib&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">request&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">urlopen&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">url&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="k">as&lt;/span> &lt;span class="n">response&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">img_data&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">response&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">read&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1"># एक अस्थायी फ़ाइल में सहेजें और प्रदर्शित करें&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">with&lt;/span> &lt;span class="n">tempfile&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">NamedTemporaryFile&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">delete&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="kc">False&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">suffix&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;.png&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="k">as&lt;/span> &lt;span class="n">tmp&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">tmp&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">write&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">img_data&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;file://&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">tmp&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">name&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">webbrowser&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">open&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;file://&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">tmp&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">name&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">time&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">sleep&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">3&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">except&lt;/span> &lt;span class="ne">Exception&lt;/span> &lt;span class="k">as&lt;/span> &lt;span class="n">e&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;एक त्रुटि उत्पन्न हुई: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">e&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">finally&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="s1">&amp;#39;tmp&amp;#39;&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="nb">locals&lt;/span>&lt;span class="p">():&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">os&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">unlink&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">tmp&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">name&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="c1"># अस्थायी फ़ाइल हटाएँ&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>curl से ChatGPT API को कॉल करना</title><link>http://kenji.blog/hi/p/chatgpt-api%E3%82%92curl%E3%81%8B%E3%82%89%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99/</link><pubDate>Sat, 01 Feb 2025 17:15:34 +0900</pubDate><guid>http://kenji.blog/hi/p/chatgpt-api%E3%82%92curl%E3%81%8B%E3%82%89%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99/</guid><description>&lt;img src="http://kenji.blog/p/chatgpt-api%E3%82%92curl%E3%81%8B%E3%82%89%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99/img.png" alt="Featured image of post curl से ChatGPT API को कॉल करना" />&lt;h1 id="curl-स-chatgpt-api-क-कल-करन">curl से ChatGPT API को कॉल करना
&lt;/h1>&lt;p>यह मान कर चला जाता है कि इसे Windows के कमांड प्रॉम्प्ट से कॉल किया जा रहा है।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">curl https://api.openai.com/v1/chat/completions -H &amp;#34;Content-Type: application/json&amp;#34; -H &amp;#34;Authorization: Bearer sk-proj-XXXXXXXXXXXXXXXXXXXX&amp;#34; -d &amp;#34;{&amp;#34;&amp;#34;model&amp;#34;&amp;#34;: &amp;#34;&amp;#34;gpt-3.5-turbo&amp;#34;&amp;#34;,&amp;#34;&amp;#34;messages&amp;#34;&amp;#34;: [{&amp;#34;&amp;#34;role&amp;#34;&amp;#34;: &amp;#34;&amp;#34;system&amp;#34;&amp;#34;, &amp;#34;&amp;#34;content&amp;#34;&amp;#34;: &amp;#34;&amp;#34;कृपया कंसाई बोली में उत्तर दें।&amp;#34;&amp;#34;}, {&amp;#34;&amp;#34;role&amp;#34;&amp;#34;: &amp;#34;&amp;#34;user&amp;#34;&amp;#34;, &amp;#34;&amp;#34;content&amp;#34;&amp;#34;: &amp;#34;&amp;#34;यहां वह संदेश डालें जिसे आप भेजना चाहते हैं&amp;#34;&amp;#34;}]}&amp;#34;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>LoadIcon को DestroyIcon कॉल करने की आवश्यकता नहीं है</title><link>http://kenji.blog/hi/p/loadicon-%E0%A4%95%E0%A5%8B-destroyicon-%E0%A4%95%E0%A5%89%E0%A4%B2-%E0%A4%95%E0%A4%B0%E0%A4%A8%E0%A5%87-%E0%A4%95%E0%A5%80-%E0%A4%86%E0%A4%B5%E0%A4%B6%E0%A5%8D%E0%A4%AF%E0%A4%95%E0%A4%A4%E0%A4%BE-%E0%A4%A8%E0%A4%B9%E0%A5%80%E0%A4%82-%E0%A4%B9%E0%A5%88/</link><pubDate>Fri, 19 Apr 2024 01:55:17 +0900</pubDate><guid>http://kenji.blog/hi/p/loadicon-%E0%A4%95%E0%A5%8B-destroyicon-%E0%A4%95%E0%A5%89%E0%A4%B2-%E0%A4%95%E0%A4%B0%E0%A4%A8%E0%A5%87-%E0%A4%95%E0%A5%80-%E0%A4%86%E0%A4%B5%E0%A4%B6%E0%A5%8D%E0%A4%AF%E0%A4%95%E0%A4%A4%E0%A4%BE-%E0%A4%A8%E0%A4%B9%E0%A5%80%E0%A4%82-%E0%A4%B9%E0%A5%88/</guid><description>&lt;h1 id="destroyicon-क-कल-करन-क-आवशयकत-क-बर-म">DestroyIcon को कॉल करने की आवश्यकता के बारे में
&lt;/h1>&lt;p>निम्नलिखित मामलों में DestroyIcon को कॉल करना आवश्यक है:&lt;/p>
&lt;ul>
&lt;li>CreateIconFromResourceEx (यदि LR_SHARED ध्वज के बिना कॉल किया गया हो)&lt;/li>
&lt;li>CreateIconIndirect&lt;/li>
&lt;li>CopyIcon&lt;/li>
&lt;/ul>
&lt;p>जब उपरोक्त फ़ंक्शंस द्वारा बनाया गया हो।&lt;/p>
&lt;ul>
&lt;li>LoadIcon&lt;/li>
&lt;li>LoadImage (यदि LR_SHARED ध्वज का उपयोग कर रहे हैं)&lt;/li>
&lt;li>CopyImage (यदि LR_COPYRETURNORG ध्वज का उपयोग कर रहे हैं और hImage पैरामीटर एक साझा आइकन है)&lt;/li>
&lt;li>CreateIconFromResource&lt;/li>
&lt;li>CreateIconFromResourceEx (यदि LR_SHARED ध्वज का उपयोग कर रहे हैं)&lt;/li>
&lt;/ul>
&lt;p>उपरोक्त मामलों में बनाए और लोड किए गए आइकन के लिए DestroyIcon को कॉल नहीं करना चाहिए।&lt;/p>
&lt;h3 id="सदरभ">संदर्भ
&lt;/h3>&lt;ul>
&lt;li>&lt;a class="link" href="https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-destroyicon" target="_blank" rel="noopener"
>DestroyIcon फ़ंक्शन (winuser.h)&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>प्रोग्रामिंग के लिए फ़ॉन्ट्स का संग्रह</title><link>http://kenji.blog/hi/p/programming-fonts-collection/</link><pubDate>Sat, 30 Mar 2024 02:21:31 +0900</pubDate><guid>http://kenji.blog/hi/p/programming-fonts-collection/</guid><description>&lt;img src="http://kenji.blog/p/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%A7%E4%BD%BF%E3%81%88%E3%82%8B%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88%E9%9B%86/img.png" alt="Featured image of post प्रोग्रामिंग के लिए फ़ॉन्ट्स का संग्रह" />&lt;h2 id="jetbrains-mono">JetBrains Mono
&lt;/h2>&lt;p>यह JetBrains द्वारा प्रदान किया गया एक ओपन-सोर्स प्रोग्रामिंग फ़ॉन्ट है।&lt;/p>
&lt;p>डाउनलोड: &lt;a class="link" href="https://www.jetbrains.com/ja-jp/lp/mono/" target="_blank" rel="noopener"
>https://www.jetbrains.com/ja-jp/lp/mono/&lt;/a>&lt;/p>
&lt;h2 id="hackgen">HackGen
&lt;/h2>&lt;p>हकुगेन (HackGen) एक प्रोग्रामिंग फ़ॉन्ट है जो प्रोग्रामिंग के लिए डिज़ाइन किए गए अंग्रेजी फ़ॉन्ट Hack और Source Han Sans से प्राप्त फ़ॉन्ट GenJyuu Gothic को मिलाकर बनाया गया है।&lt;/p>
&lt;p>डाउनलोड: &lt;a class="link" href="https://github.com/yuru7/HackGen/releases" target="_blank" rel="noopener"
>https://github.com/yuru7/HackGen/releases&lt;/a>&lt;/p>
&lt;h2 id="ricty-diminished">Ricty Diminished
&lt;/h2>&lt;p>&lt;code>Ricty Diminished&lt;/code> , &lt;code>Ricty&lt;/code> का एक सिस्टर फ़ॉन्ट है, जिसे &lt;code>Inconsolata&lt;/code> और &lt;code>Migu 1M&lt;/code> के बजाय &lt;code>Inconsolata&lt;/code> और &lt;code>Circle M+ 1m&lt;/code> को &lt;code>Ricty&lt;/code> जनरेशन स्क्रिप्ट के साथ मिलाकर बनाया गया है। क्योंकि इसमें IPA Gothic के ग्लिफ़ शामिल नहीं हैं, इसके पास उपयोग करने योग्य कांजी ग्लिफ़्स की संख्या कम है, लेकिन इसके बदले में इसे &lt;code>SIL Open Font License&lt;/code> के तहत वितरित किया जा सकता है।&lt;/p>
&lt;p>डाउनलोड: &lt;a class="link" href="https://rictyfonts.github.io/diminished" target="_blank" rel="noopener"
>https://rictyfonts.github.io/diminished&lt;/a>&lt;/p>
&lt;h2 id="cica">Cica
&lt;/h2>&lt;p>अल्फ़ान्यूमेरिक वर्णों और प्रतीकों के लिए &lt;code>Hack&lt;/code> + &lt;code>DejaVu Sans Mono&lt;/code> का उपयोग किया गया है।
अन्य वर्णों के लिए, यह एक प्रोग्रामिंग फ़ॉन्ट है जो &lt;code>Rounded Mgen+&lt;/code> का उपयोग करता है।&lt;/p>
&lt;p>डाउनलोड: &lt;a class="link" href="https://github.com/miiton/Cica/releases" target="_blank" rel="noopener"
>https://github.com/miiton/Cica/releases&lt;/a>&lt;/p>
&lt;p>संदर्भ:&lt;/p>
&lt;ul>
&lt;li>&lt;a class="link" href="https://sourcefoundry.org/hack/" target="_blank" rel="noopener"
>Hack&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://dejavu-fonts.github.io/" target="_blank" rel="noopener"
>DejaVu Sans Mono&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="http://jikasei.me/font/rounded-mgenplus/" target="_blank" rel="noopener"
>Rounded Mgen+&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="migu">Migu
&lt;/h2>&lt;p>यह M+ और IPA का एक संयुक्त फ़ॉन्ट है।&lt;/p>
&lt;p>डाउनलोड: &lt;a class="link" href="https://itouhiro.github.io/mixfont-mplus-ipa/migu/" target="_blank" rel="noopener"
>https://itouhiro.github.io/mixfont-mplus-ipa/migu/&lt;/a>&lt;/p>
&lt;h2 id="osaka">Osaka
&lt;/h2>&lt;p>यह एक फ़ॉन्ट है जो Mac OS मानक फ़ॉन्ट &lt;code>Osaka&lt;/code> को Windows पर उपयोग करने की अनुमति देता है।&lt;/p>
&lt;p>डाउनलोड: &lt;a class="link" href="http://ifs.nog.cc/osakattf.hp.infoseek.co.jp/" target="_blank" rel="noopener"
>http://ifs.nog.cc/osakattf.hp.infoseek.co.jp/&lt;/a>&lt;/p>
&lt;h2 id="plemoljp">PlemolJP
&lt;/h2>&lt;p>यह एक प्रोग्रामिंग फ़ॉन्ट है जो IBM द्वारा जारी किए गए ओपन-सोर्स जापानी फ़ॉन्ट &lt;code>IBM Plex Sans JP&lt;/code> और IBM की Plex श्रृंखला से &lt;code>IBM Plex Mono&lt;/code> को जोड़ता है।&lt;/p>
&lt;p>डाउनलोड: &lt;a class="link" href="https://github.com/yuru7/PlemolJP/releases" target="_blank" rel="noopener"
>https://github.com/yuru7/PlemolJP/releases&lt;/a>&lt;/p></description></item><item><title>wxWidgets का उपयोग करते हुए उदाहरण</title><link>http://kenji.blog/hi/p/wxwidgets-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB/</link><pubDate>Tue, 18 Apr 2023 00:18:22 +0900</pubDate><guid>http://kenji.blog/hi/p/wxwidgets-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB/</guid><description>&lt;img src="http://kenji.blog/p/wxwidgets-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB/img.png" alt="Featured image of post wxWidgets का उपयोग करते हुए उदाहरण" />&lt;h2 id="wxwidgets-कय-ह">wxWidgets क्या है
&lt;/h2>&lt;p>wxWidgets एक C++ GUI लाइब्रेरी है जो Windows, Mac, Linux, Android, iOS आदि प्लेटफॉर्म पर काम करती है।&lt;/p>
&lt;h2 id="wxwidgets-क-सथपन">wxWidgets की स्थापना
&lt;/h2>&lt;ol>
&lt;li>&lt;a class="link" href="https://www.wxwidgets.org/downloads/" target="_blank" rel="noopener"
>https://www.wxwidgets.org/downloads/&lt;/a> खोलें और &lt;code>Windows Installer&lt;/code> डाउनलोड करें।&lt;/li>
&lt;li>स्थापित करने के लिए &lt;code>wxMSW-3.2.2.1-Setup.exe&lt;/code> चलाएं।&lt;/li>
&lt;li>इंस्टॉल किए गए फ़ोल्डर से &amp;ldquo;C:\wxWidgets-3.2.2.1\build\msw\wx_vc17.sln&amp;rdquo; खोलें।&lt;/li>
&lt;li>&lt;code>wx_vc17.sln&lt;/code> खोलने के बाद &lt;code>Build&lt;/code> &amp;gt; &lt;code>Batch Build&lt;/code> चुनें।&lt;/li>
&lt;li>&lt;code>Select All&lt;/code> बटन दबाएं, और फिर &lt;code>Rebuild&lt;/code> बटन दबाएं।&lt;/li>
&lt;li>निर्माण समाप्त होने के बाद, विज़ुअल स्टूडियो को अस्थायी रूप से बंद कर दें।&lt;/li>
&lt;/ol>
&lt;h2 id="उदहरण-परजकट-बनन">उदाहरण प्रोजेक्ट बनाना
&lt;/h2>&lt;ol>
&lt;li>Visual Studio खोलें।&lt;/li>
&lt;li>&lt;code>File&lt;/code> &amp;gt; &lt;code>New&lt;/code> &amp;gt; &lt;code>Project&lt;/code> चुनें।&lt;/li>
&lt;li>&lt;code>Windows Desktop Application&lt;/code> चुनें (टैब हैं &lt;code>C++&lt;/code>, &lt;code>Windows&lt;/code>, &lt;code>Desktop&lt;/code>)।&lt;/li>
&lt;li>&lt;code>Project name&lt;/code> में &lt;code>wxWidgetsSample&lt;/code> दर्ज करें।&lt;/li>
&lt;li>&lt;code>Create&lt;/code> पर क्लिक करें।&lt;/li>
&lt;li>&lt;code>wxWidgetsSample&lt;/code> पर राइट-क्लिक करें और &lt;code>Properties&lt;/code> चुनें।&lt;/li>
&lt;li>&lt;code>Configuration Properties&lt;/code> &amp;gt; &lt;code>C/C++&lt;/code> &amp;gt; &lt;code>Additional Include Directories&lt;/code> में &lt;code>C:\wxWidgets-3.2.2.1\include&lt;/code> और &lt;code>C:\wxWidgets-3.2.2.1\include\msvc&lt;/code> जोड़ें।&lt;/li>
&lt;li>&lt;code>Configuration Properties&lt;/code> &amp;gt; &lt;code>Linker&lt;/code> &amp;gt; &lt;code>Additional Library Directories&lt;/code> में &lt;code>C:\wxWidgets-3.2.2.1\lib\vc_x64_lib&lt;/code> जोड़ें।&lt;/li>
&lt;li>&lt;code>wxWidgetsSample.cpp&lt;/code> खोलें और इसे नीचे दिए गए कोड से बदलें।&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;span class="lnt">29
&lt;/span>&lt;span class="lnt">30
&lt;/span>&lt;span class="lnt">31
&lt;/span>&lt;span class="lnt">32
&lt;/span>&lt;span class="lnt">33
&lt;/span>&lt;span class="lnt">34
&lt;/span>&lt;span class="lnt">35
&lt;/span>&lt;span class="lnt">36
&lt;/span>&lt;span class="lnt">37
&lt;/span>&lt;span class="lnt">38
&lt;/span>&lt;span class="lnt">39
&lt;/span>&lt;span class="lnt">40
&lt;/span>&lt;span class="lnt">41
&lt;/span>&lt;span class="lnt">42
&lt;/span>&lt;span class="lnt">43
&lt;/span>&lt;span class="lnt">44
&lt;/span>&lt;span class="lnt">45
&lt;/span>&lt;span class="lnt">46
&lt;/span>&lt;span class="lnt">47
&lt;/span>&lt;span class="lnt">48
&lt;/span>&lt;span class="lnt">49
&lt;/span>&lt;span class="lnt">50
&lt;/span>&lt;span class="lnt">51
&lt;/span>&lt;span class="lnt">52
&lt;/span>&lt;span class="lnt">53
&lt;/span>&lt;span class="lnt">54
&lt;/span>&lt;span class="lnt">55
&lt;/span>&lt;span class="lnt">56
&lt;/span>&lt;span class="lnt">57
&lt;/span>&lt;span class="lnt">58
&lt;/span>&lt;span class="lnt">59
&lt;/span>&lt;span class="lnt">60
&lt;/span>&lt;span class="lnt">61
&lt;/span>&lt;span class="lnt">62
&lt;/span>&lt;span class="lnt">63
&lt;/span>&lt;span class="lnt">64
&lt;/span>&lt;span class="lnt">65
&lt;/span>&lt;span class="lnt">66
&lt;/span>&lt;span class="lnt">67
&lt;/span>&lt;span class="lnt">68
&lt;/span>&lt;span class="lnt">69
&lt;/span>&lt;span class="lnt">70
&lt;/span>&lt;span class="lnt">71
&lt;/span>&lt;span class="lnt">72
&lt;/span>&lt;span class="lnt">73
&lt;/span>&lt;span class="lnt">74
&lt;/span>&lt;span class="lnt">75
&lt;/span>&lt;span class="lnt">76
&lt;/span>&lt;span class="lnt">77
&lt;/span>&lt;span class="lnt">78
&lt;/span>&lt;span class="lnt">79
&lt;/span>&lt;span class="lnt">80
&lt;/span>&lt;span class="lnt">81
&lt;/span>&lt;span class="lnt">82
&lt;/span>&lt;span class="lnt">83
&lt;/span>&lt;span class="lnt">84
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-cpp" data-lang="cpp">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#pragma comment(linker,&amp;#34;\&amp;#34;/manifestdependency:type=&amp;#39;win32&amp;#39; name=&amp;#39;Microsoft.Windows.Common-Controls&amp;#39; version=&amp;#39;6.0.0.0&amp;#39; processorArchitecture=&amp;#39;*&amp;#39; publicKeyToken=&amp;#39;6595b64144ccf1df&amp;#39; language=&amp;#39;*&amp;#39;\&amp;#34;&amp;#34;)
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;wx/wxprec.h&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#ifndef WX_PRECOMP
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;wx/wx.h&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#endif
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">class&lt;/span> &lt;span class="nc">MyApp&lt;/span> &lt;span class="o">:&lt;/span> &lt;span class="k">public&lt;/span> &lt;span class="n">wxApp&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">public&lt;/span>&lt;span class="o">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">virtual&lt;/span> &lt;span class="kt">bool&lt;/span> &lt;span class="n">OnInit&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">};&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">class&lt;/span> &lt;span class="nc">MyFrame&lt;/span> &lt;span class="o">:&lt;/span> &lt;span class="k">public&lt;/span> &lt;span class="n">wxFrame&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">public&lt;/span>&lt;span class="o">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">MyFrame&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">private&lt;/span>&lt;span class="o">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">void&lt;/span> &lt;span class="n">OnHello&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxCommandEvent&lt;/span>&lt;span class="o">&amp;amp;&lt;/span> &lt;span class="n">event&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">void&lt;/span> &lt;span class="nf">OnExit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxCommandEvent&lt;/span>&lt;span class="o">&amp;amp;&lt;/span> &lt;span class="n">event&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">void&lt;/span> &lt;span class="nf">OnAbout&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxCommandEvent&lt;/span>&lt;span class="o">&amp;amp;&lt;/span> &lt;span class="n">event&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">};&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">enum&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ID_Hello&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">1&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">};&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">wxIMPLEMENT_APP&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">MyApp&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">bool&lt;/span> &lt;span class="n">MyApp&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnInit&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">MyFrame&lt;/span>&lt;span class="o">*&lt;/span> &lt;span class="n">frame&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">MyFrame&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">frame&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">Show&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nb">true&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="nb">true&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">MyFrame&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">:&lt;/span> &lt;span class="n">wxFrame&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nb">NULL&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxID_ANY&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s">&amp;#34;Hello World&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">wxMenu&lt;/span>&lt;span class="o">*&lt;/span> &lt;span class="n">menuFile&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">wxMenu&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">menuFile&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">Append&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ID_Hello&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s">&amp;#34;&amp;amp;Hello...&lt;/span>&lt;span class="se">\t&lt;/span>&lt;span class="s">Ctrl-H&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s">&amp;#34;Help string shown in status bar for this menu item&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">menuFile&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">AppendSeparator&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">menuFile&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">Append&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxID_EXIT&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">wxMenu&lt;/span>&lt;span class="o">*&lt;/span> &lt;span class="n">menuHelp&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">wxMenu&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">menuHelp&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">Append&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxID_ABOUT&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">wxMenuBar&lt;/span>&lt;span class="o">*&lt;/span> &lt;span class="n">menuBar&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">wxMenuBar&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">menuBar&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">Append&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">menuFile&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s">&amp;#34;&amp;amp;File&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">menuBar&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">Append&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">menuHelp&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s">&amp;#34;&amp;amp;Help&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">SetMenuBar&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">menuBar&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">wxButton&lt;/span>&lt;span class="o">*&lt;/span> &lt;span class="n">button1&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">wxButton&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="k">this&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">ID_Hello&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">_&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;Hello&amp;#34;&lt;/span>&lt;span class="p">),&lt;/span> &lt;span class="n">wxPoint&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">20&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">20&lt;/span>&lt;span class="p">),&lt;/span> &lt;span class="n">wxSize&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">100&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">32&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Connect&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ID_Hello&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxEVT_COMMAND_BUTTON_CLICKED&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxCommandEventHandler&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnHello&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">wxButton&lt;/span>&lt;span class="o">*&lt;/span> &lt;span class="n">button2&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">wxButton&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="k">this&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxID_ABOUT&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">_&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;About&amp;#34;&lt;/span>&lt;span class="p">),&lt;/span> &lt;span class="n">wxPoint&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">20&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">60&lt;/span>&lt;span class="p">),&lt;/span> &lt;span class="n">wxSize&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">100&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">32&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Connect&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxID_ABOUT&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxEVT_COMMAND_BUTTON_CLICKED&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxCommandEventHandler&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnAbout&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">wxButton&lt;/span>&lt;span class="o">*&lt;/span> &lt;span class="n">button3&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">wxButton&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="k">this&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxID_EXIT&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">_&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;Exit&amp;#34;&lt;/span>&lt;span class="p">),&lt;/span> &lt;span class="n">wxPoint&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">20&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">100&lt;/span>&lt;span class="p">),&lt;/span> &lt;span class="n">wxSize&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">100&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">32&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Connect&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxID_EXIT&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxEVT_COMMAND_BUTTON_CLICKED&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxCommandEventHandler&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnExit&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">CreateStatusBar&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">SetStatusText&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;Welcome to wxWidgets!&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Bind&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxEVT_MENU&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnHello&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="k">this&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">ID_Hello&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Bind&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxEVT_MENU&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnAbout&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="k">this&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxID_ABOUT&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Bind&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxEVT_MENU&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnExit&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="k">this&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxID_EXIT&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">void&lt;/span> &lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnExit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxCommandEvent&lt;/span>&lt;span class="o">&amp;amp;&lt;/span> &lt;span class="n">event&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Close&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nb">true&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">void&lt;/span> &lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnAbout&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxCommandEvent&lt;/span>&lt;span class="o">&amp;amp;&lt;/span> &lt;span class="n">event&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">wxMessageBox&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;This is a wxWidgets&amp;#39; Hello world sample&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s">&amp;#34;About Hello World&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">wxOK&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="n">wxICON_INFORMATION&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">void&lt;/span> &lt;span class="n">MyFrame&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">OnHello&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">wxCommandEvent&lt;/span>&lt;span class="o">&amp;amp;&lt;/span> &lt;span class="n">event&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">wxLogMessage&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;Hello world from wxWidgets!&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="10">
&lt;li>बिल्ड और रन करने पर, नीचे दिए गए अनुसार एक विंडो खुलेगी।&lt;/li>
&lt;/ol>
&lt;p>&lt;img src="http://kenji.blog/p/wxwidgets-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB/img_1.png"
width="386"
height="243"
srcset="http://kenji.blog/p/wxwidgets-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB/img_1_hu5f63ad1505c8497f33a78280f704873d_5545_480x0_resize_box_3.png 480w, http://kenji.blog/p/wxwidgets-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB/img_1_hu5f63ad1505c8497f33a78280f704873d_5545_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_1.png"
class="gallery-image"
data-flex-grow="158"
data-flex-basis="381px"
>&lt;/p>
&lt;h2 id="सदरभ">संदर्भ
&lt;/h2>&lt;p>उदाहरण प्रोजेक्ट नीचे दिया गया है।
&lt;a class="link" href="https://github.com/kenjinote/wxWidgetsSample" target="_blank" rel="noopener"
>wxWidgetsSample&lt;/a>&lt;/p>
&lt;ul>
&lt;li>&lt;a class="link" href="https://www.wxwidgets.org" target="_blank" rel="noopener"
>आधिकारिक वेबसाइट&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://ken-ohwada.hatenadiary.org/entry/2022/07/14/165213" target="_blank" rel="noopener"
>C++ और wxWidgets का उपयोग करके गेम&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>यही सब है।&lt;/p></description></item><item><title>C++ में वर्तमान समय को ISO 8601 प्रारूप में कैसे प्रिंट करें</title><link>http://kenji.blog/hi/p/c-%E3%81%A7%E7%8F%BE%E5%9C%A8%E6%99%82%E5%88%BB%E3%82%92iso8601%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88%E3%81%A7%E5%87%BA%E5%8A%9B%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/</link><pubDate>Sat, 15 Apr 2023 19:35:27 +0900</pubDate><guid>http://kenji.blog/hi/p/c-%E3%81%A7%E7%8F%BE%E5%9C%A8%E6%99%82%E5%88%BB%E3%82%92iso8601%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88%E3%81%A7%E5%87%BA%E5%8A%9B%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/</guid><description>&lt;img src="http://kenji.blog/p/c-%E3%81%A7%E7%8F%BE%E5%9C%A8%E6%99%82%E5%88%BB%E3%82%92iso8601%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88%E3%81%A7%E5%87%BA%E5%8A%9B%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img.png" alt="Featured image of post C++ में वर्तमान समय को ISO 8601 प्रारूप में कैसे प्रिंट करें" />&lt;h3 id="परव-शरत">पूर्व शर्तें
&lt;/h3>&lt;ul>
&lt;li>ISO C++ 20 मानक (/std:c++20)&lt;/li>
&lt;/ul>
&lt;h3 id="कड">कोड
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-c++" data-lang="c++">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;chrono&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;format&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">std&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">string&lt;/span> &lt;span class="n">datetime&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">std&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">format&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;{:%FT%TZ}&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">system_clock&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="n">now&lt;/span>&lt;span class="p">());&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>इस प्रकार आप C++ में वर्तमान समय को ISO 8601 प्रारूप में प्रिंट कर सकते हैं।&lt;/p>
&lt;h3 id="सदरभ">संदर्भ
&lt;/h3>&lt;ul>
&lt;li>&lt;a class="link" href="https://eel.is/c&amp;#43;&amp;#43;draft/time.format" target="_blank" rel="noopener"
>std::format&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>[भाषा के अनुसार] ऑनलाइन कोड निष्पादन वातावरण सारांश</title><link>http://kenji.blog/hi/p/%E3%82%AA%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%B3%E3%81%AE%E3%82%B3%E3%83%BC%E3%83%89%E5%AE%9F%E8%A1%8C%E7%92%B0%E5%A2%83%E3%81%BE%E3%81%A8%E3%82%81/</link><pubDate>Sun, 09 Apr 2023 14:01:00 +0900</pubDate><guid>http://kenji.blog/hi/p/%E3%82%AA%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%B3%E3%81%AE%E3%82%B3%E3%83%BC%E3%83%89%E5%AE%9F%E8%A1%8C%E7%92%B0%E5%A2%83%E3%81%BE%E3%81%A8%E3%82%81/</guid><description>&lt;img src="http://kenji.blog/p/%E3%82%AA%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%B3%E3%81%AE%E3%82%B3%E3%83%BC%E3%83%89%E5%AE%9F%E8%A1%8C%E7%92%B0%E5%A2%83%E3%81%BE%E3%81%A8%E3%82%81/img.png" alt="Featured image of post [भाषा के अनुसार] ऑनलाइन कोड निष्पादन वातावरण सारांश" />&lt;h2 id="python">Python
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://colab.research.google.com/#create=true" target="_blank" rel="noopener"
>Google Colaboratory&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>Google Colaboratory एक ऑनलाइन Python निष्पादन वातावरण है।&lt;/p>
&lt;ul>
&lt;li>GPU का उपयोग भी संभव है।&lt;/li>
&lt;li>Colab नोटबुक का उपयोग करके, आप एक ही दस्तावेज़ में निष्पादन योग्य कोड और रिच टेक्स्ट (चित्र, HTML, LaTeX, आदि सहित) लिख सकते हैं।&lt;/li>
&lt;/ul>
&lt;p>यह Jupyter Notebook पर आधारित है।&lt;/p>
&lt;h2 id="rust">Rust
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://play.rust-lang.org/?version=stable&amp;amp;mode=debug&amp;amp;edition=2021" target="_blank" rel="noopener"
>Rust Playground&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="javascript">JavaScript
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://playcode.io/" target="_blank" rel="noopener"
>Javascript Playground&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="java">Java
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://paiza.io/ja/projects/new?language=java" target="_blank" rel="noopener"
>paiza.IO Online Java compiler&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="haskell">Haskell
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://play.haskell.org/" target="_blank" rel="noopener"
>Haskell Playground&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="swift">Swift
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://online.swiftplayground.run/" target="_blank" rel="noopener"
>Online Swift Playground&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="c">C++
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://www.onlinegdb.com/online_c&amp;#43;&amp;#43;_compiler" target="_blank" rel="noopener"
>C++ 14&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="अनय">अन्य
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://aws.amazon.com/jp/cloud9/" target="_blank" rel="noopener"
>AWS Cloud9&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>Amazon AWS द्वारा प्रदान किया गया एक ऑनलाइन एकीकृत विकास वातावरण। इसमें Node.js, JavaScript, Python, PHP, Ruby, Go, C++ जैसी 40 से अधिक प्रोग्रामिंग भाषाओं के लिए टूल पहले से पैक होते हैं।&lt;/p>
&lt;ul>
&lt;li>&lt;a class="link" href="https://vscode.dev/" target="_blank" rel="noopener"
>Visual Studio Code for the Web&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>Microsoft द्वारा प्रदान किया गया एक ऑनलाइन विकास वातावरण। हालाँकि, संकलन (compilation) की आवश्यकता वाली भाषाओं को निष्पादित या डीबग नहीं किया जा सकता है।&lt;/p>
&lt;ul>
&lt;li>&lt;a class="link" href="https://paiza.io/projects/CGAcQLfW-IOXYy8Dq2OHBw?locale=ja-jp" target="_blank" rel="noopener"
>paiza.IO&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>एक ऑनलाइन निष्पादन वातावरण जो C, C++, Java, Ruby, Python, PHP, Perl आदि जैसी 24 प्रमुख भाषाओं का समर्थन करता है।&lt;/p>
&lt;ul>
&lt;li>&lt;a class="link" href="https://codepen.io/" target="_blank" rel="noopener"
>CodePen&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>HTML, CSS और JavaScript के लिए एक ऑनलाइन निष्पादन वातावरण।&lt;/p>
&lt;ul>
&lt;li>&lt;a class="link" href="https://codeanywhere.com/" target="_blank" rel="noopener"
>codeanywhere&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>एक ऑनलाइन IDE। आपको कोड साझा करने और चैट करने की अनुमति देता है।&lt;/p></description></item><item><title>Twitter API और Google Colaboratory का उपयोग करके ट्वीट कैसे करें</title><link>http://kenji.blog/hi/p/how-to-tweet-using-twitter-api-and-google-colaboratory-hi/</link><pubDate>Sat, 08 Apr 2023 18:48:32 +0900</pubDate><guid>http://kenji.blog/hi/p/how-to-tweet-using-twitter-api-and-google-colaboratory-hi/</guid><description>&lt;img src="http://kenji.blog/p/twitter-api%E3%81%A8google-colaboratory%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6tweet%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img.png" alt="Featured image of post Twitter API और Google Colaboratory का उपयोग करके ट्वीट कैसे करें" />&lt;h1 id="कय-चहए">क्या चाहिए
&lt;/h1>&lt;ul>
&lt;li>Twitter API&lt;/li>
&lt;li>Twitter API SECRET&lt;/li>
&lt;li>Twitter ACCESS TOKEN&lt;/li>
&lt;li>Twitter ACCESS TOKEN SECRET&lt;/li>
&lt;li>Google अकाउंट&lt;/li>
&lt;/ul>
&lt;p>Twitter API कैसे प्राप्त करें, इसके लिए संदर्भ साइट देखें।&lt;/p>
&lt;h1 id="api-क-उपयग-करक-टवट-करन-क-चरण">API का उपयोग करके ट्वीट करने के चरण
&lt;/h1>&lt;ol>
&lt;li>&lt;a class="link" href="https://colab.research.google.com/" target="_blank" rel="noopener"
>https://colab.research.google.com/&lt;/a> पर जाएं&lt;/li>
&lt;li>&amp;ldquo;फ़ाइल&amp;rdquo; -&amp;gt; &amp;ldquo;नई नोटबुक&amp;rdquo; चुनें&lt;/li>
&lt;li>नीचे दिया गया कोड पेस्ट करें और चलाएं (कृपया अपने द्वारा प्राप्त वास्तविक मानों का उपयोग करें)&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">API_KEY = &amp;#39;9Smu2f2RoLqbVQHQq6n79Z2JW&amp;#39;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">API_SECRET = &amp;#39;uGVRIkLL2l8sRyPv2Lr4mXxXppnQF1isMoRnvktcXCtFgAK2R8&amp;#39;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">ACCESS_TOKEN = &amp;#39;0367292979164670705-7hSErDoQbO6fkFtnn5UY0vqpvecy0O&amp;#39;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">ACCESS_TOKEN_SECRET = &amp;#39;pUv81U9GVzZirz5g4AxZPHAJ4GpSXnBo8GUcZ1egtjw9q&amp;#39;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="3">
&lt;li>नीचे दिया गया कोड पेस्ट करें और चलाएं&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">import tweepy
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="4">
&lt;li>नीचे दिया गया कोड पेस्ट करें और चलाएं (API v1.1)&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">auth = tweepy.OAuthHandler(API_KEY, API_SECRET)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">api = tweepy.API(auth)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">api.update_status(&amp;#34;hello&amp;#34;)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>→ &lt;code>hello&lt;/code> कहने वाला एक ट्वीट पोस्ट किया जाएगा&lt;/p>
&lt;ol start="5">
&lt;li>नीचे दिया गया कोड पेस्ट करें और चलाएं (API v2.0)&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">client = tweepy.Client(consumer_key=API_KEY, consumer_secret=API_SECRET, access_token=ACCESS_TOKEN, access_token_secret=ACCESS_TOKEN_SECRET)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">client.create_tweet(text=&amp;#39;hello v2&amp;#39;)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>→ &lt;code>hello v2&lt;/code> कहने वाला एक ट्वीट पोस्ट किया जाएगा&lt;/p>
&lt;p>बस इतना ही&lt;/p>
&lt;h1 id="सदरभ">संदर्भ
&lt;/h1>&lt;ul>
&lt;li>&lt;a class="link" href="https://bloomtectec.com/twitter-api-application-procedure/" target="_blank" rel="noopener"
>【अप्रैल 2021 तक】उपयोग उदाहरणों और स्क्रीनशॉट के साथ Twitter API उपयोग एप्लिकेशन की विस्तृत व्याख्या&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://bloomtectec.com/use-twitter-api-in-google-colab/" target="_blank" rel="noopener"
>【जटिल सेटिंग्स की कोई आवश्यकता नहीं!】Twitter API परीक्षण वातावरण के लिए Google Colaboratory की अनुशंसा की जाती है 【स्रोत कोड भी साझा किया गया है】&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://3pysci.com/tweepy-28/" target="_blank" rel="noopener"
>【Tweepy】Twitter API v2: ट्वीट, रिप्लाई, पोल वाले ट्वीट, मीडिया वाले ट्वीट (v1.1) [Python]&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>HTML के साथ प्रेजेंटेशन कैसे बनाएं (reveal.js)</title><link>http://kenji.blog/hi/p/html%E3%81%A7%E3%83%97%E3%83%AC%E3%82%BC%E3%83%B3%E8%B3%87%E6%96%99%E3%82%92%E4%BD%9C%E3%82%8B%E6%96%B9%E6%B3%95reveal.js/</link><pubDate>Thu, 06 Apr 2023 23:23:46 +0900</pubDate><guid>http://kenji.blog/hi/p/html%E3%81%A7%E3%83%97%E3%83%AC%E3%82%BC%E3%83%B3%E8%B3%87%E6%96%99%E3%82%92%E4%BD%9C%E3%82%8B%E6%96%B9%E6%B3%95reveal.js/</guid><description>&lt;img src="http://kenji.blog/p/html%E3%81%A7%E3%83%97%E3%83%AC%E3%82%BC%E3%83%B3%E8%B3%87%E6%96%99%E3%82%92%E4%BD%9C%E3%82%8B%E6%96%B9%E6%B3%95reveal.js/img.png" alt="Featured image of post HTML के साथ प्रेजेंटेशन कैसे बनाएं (reveal.js)" />&lt;h1 id="html-क-सथ-परजटशन-कस-बनए">HTML के साथ प्रेजेंटेशन कैसे बनाएं
&lt;/h1>&lt;p>reveal.js, HTML और Markdown का उपयोग करने वाला एक प्रेजेंटेशन निर्माण उपकरण है, जिसमें निम्नलिखित विशेषताएं हैं:&lt;/p>
&lt;ul>
&lt;li>गणितीय सूत्र, एनिमेशन और स्वाइप संचालन जैसी विभिन्न प्रेजेंटेशन विशेषताएं&lt;/li>
&lt;li>अनुकूलन योग्य थीम और लेआउट&lt;/li>
&lt;li>माउस, कीबोर्ड और टचपैड जैसे कई उपकरणों के लिए नेविगेशन समर्थन&lt;/li>
&lt;li>स्लाइड ऑटो-प्ले और एम्बेडेड वीडियो जैसी उन्नत विशेषताएं प्रदान करता है&lt;/li>
&lt;li>PDF प्रारूप में निर्यात किया जा सकता है&lt;/li>
&lt;/ul>
&lt;p>इन सुविधाओं के साथ, उपयोगकर्ता आसानी से इंटरैक्टिव और आकर्षक प्रेजेंटेशन बना सकते हैं।&lt;/p>
&lt;h1 id="revealjs-क-सथपन-और-उपयग">reveal.js की स्थापना और उपयोग
&lt;/h1>&lt;p>इसे उपयोग करने का सबसे आसान तरीका निम्नलिखित पृष्ठ से संपूर्ण ZIP डाउनलोड करना और उसे निकालना है।&lt;/p>
&lt;ol>
&lt;li>&lt;a class="link" href="https://revealjs.com/installation" target="_blank" rel="noopener"
>https://revealjs.com/installation&lt;/a> खोलें और लिंक से &lt;code>master.zip&lt;/code> डाउनलोड करें&lt;/li>
&lt;li>निकाले गए फ़ोल्डर में मौजूद index.html को ब्राउज़र में खोलें&lt;/li>
&lt;li>अपनी खुद की प्रेजेंटेशन सामग्री बनाने के लिए index.html को फिर से लिखें&lt;/li>
&lt;/ol>
&lt;p>※ चूंकि डेमो HTML कोड demo.html में लिखा गया है, आप इसे संदर्भ के रूप में उपयोग कर सकते हैं।&lt;/p>
&lt;h1 id="कस-उपयग-कर">कैसे उपयोग करें
&lt;/h1>&lt;p>आपके द्वारा बनाए गए प्रेजेंटेशन को वेब पेजों के रूप में प्रकाशित किया जा सकता है या PDF के रूप में निर्यात किया जा सकता है।
इसके अलावा, चूंकि प्रेजेंटेशन का स्रोत पाठ है, इसलिए इसे संस्करण नियंत्रण प्रणाली के साथ प्रबंधित करना आसान है।&lt;/p>
&lt;p>Markdown प्रारूप में प्रेजेंटेशन सामग्री बनाना भी संभव लगता है।&lt;/p>
&lt;h1 id="सदरभ">संदर्भ
&lt;/h1>&lt;ul>
&lt;li>&lt;a class="link" href="https://qiita.com/Targityen/items/40ae4795e2cb77c1adc6" target="_blank" rel="noopener"
>आइए भविष्य में प्रेजेंटेशन सामग्री के लिए reveal.js का उपयोग करें&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://qiita.com/jkjoluvjlajelljicvjzojieoaid/items/01cd7ff819bc2e69b652" target="_blank" rel="noopener"
>Markdown सिंटैक्स नमूना सूची&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>AI (Stable Diffusion) का उपयोग करके इलस्ट्रेशन इमेजेज कैसे जनरेट करें</title><link>http://kenji.blog/hi/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/</link><pubDate>Thu, 06 Apr 2023 00:43:19 +0900</pubDate><guid>http://kenji.blog/hi/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/</guid><description>&lt;img src="http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img.png" alt="Featured image of post AI (Stable Diffusion) का उपयोग करके इलस्ट्रेशन इमेजेज कैसे जनरेट करें" />&lt;h1 id="stable-diffusion-कय-ह">Stable diffusion क्या है
&lt;/h1>&lt;p>Stable diffusion म्यूनिख विश्वविद्यालय, जर्मनी की एक शोध टीम द्वारा विकसित एक AI है, जो इनपुट टेक्स्ट जानकारी से इमेजेज जनरेट करता है।
विभिन्न इमेजेज पर ट्रेनिंग देकर, यह वास्तविक तस्वीरों से लेकर इलस्ट्रेशन्स तक विभिन्न प्रकार की इमेजेज जनरेट कर सकता है।&lt;/p>
&lt;p>इस बार, मैं पेश करूंगा कि Stable diffusion के प्री-ट्रेंड डेटा का उपयोग करके इलस्ट्रेशन इमेजेज कैसे जनरेट करें।&lt;/p>
&lt;h1 id="आपक-कय-चहए">आपको क्या चाहिए
&lt;/h1>&lt;ul>
&lt;li>Google अकाउंट&lt;/li>
&lt;/ul>
&lt;p>केवल यही&lt;/p>
&lt;h1 id="जनरशन-परकरय">जनरेशन प्रक्रिया
&lt;/h1>&lt;ol>
&lt;li>&lt;a class="link" href="https://colab.research.google.com" target="_blank" rel="noopener"
>https://colab.research.google.com&lt;/a> खोलें&lt;/li>
&lt;li>ऊपर बाईं ओर &lt;code>फ़ाइल&lt;/code> से &lt;code>नई नोटबुक&lt;/code> चुनें&lt;/li>
&lt;li>&lt;code>संपादित करें&lt;/code> से &lt;code>नोटबुक सेटिंग&lt;/code> चुनें&lt;/li>
&lt;li>&lt;code>हार्डवेयर एक्सेलेरेटर&lt;/code> को &lt;code>GPU&lt;/code> में बदलें
&lt;img src="http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_2.png"
width="627"
height="324"
srcset="http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_2_hud7bbdf6a24e33b2b36528d9e25b016c8_23961_480x0_resize_box_3.png 480w, http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_2_hud7bbdf6a24e33b2b36528d9e25b016c8_23961_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_2.png"
class="gallery-image"
data-flex-grow="193"
data-flex-basis="464px"
>&lt;/li>
&lt;li>नीचे दिए गए कोड को पेस्ट करें और चलाएं&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">!pip install diffusers==0.8.0 transformers
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="6">
&lt;li>नीचे दिए गए कोड को पेस्ट करें और चलाएं&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">from diffusers import StableDiffusionPipeline
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="7">
&lt;li>नीचे दिए गए कोड को पेस्ट करें और चलाएं&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">pipe = StableDiffusionPipeline.from_pretrained(&amp;#34;gsdf/Counterfeit-V2.5&amp;#34;)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">pipe.to(&amp;#34;cuda&amp;#34;)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="8">
&lt;li>नीचे दिए गए कोड को पेस्ट करें और चलाएं&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">prompt = &amp;#34;((masterpiece,best quality)),1girl, solo, animal ears, rabbit, barefoot, knees up, dress, sitting, rabbit ears, short sleeves, looking at viewer, grass, short hair, smile, white hair, puffy sleeves, outdoors, puffy short sleeves, bangs, on ground, full body, animal, white dress, sunlight, brown eyes, dappled sunlight, day, depth of field&amp;#34;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">n_prompt = &amp;#34;EasyNegative, extra fingers,fewer fingers&amp;#34;
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">image = pipe(prompt, negative_prompt = n_prompt).images[0]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">image
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>यहाँ उपयोग किया गया &lt;code>Prompt&lt;/code>, &lt;a class="link" href="https://huggingface.co/gsdf/Counterfeit-V2.5" target="_blank" rel="noopener"
>https://huggingface.co/gsdf/Counterfeit-V2.5&lt;/a> के &lt;code>Prompt&lt;/code> पर आधारित है।&lt;/p>
&lt;h2 id="जनरट-कए-गए-परणम-कछ">जनरेट किए गए परिणाम (कुछ)
&lt;/h2>&lt;p>&lt;img src="http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_1.png"
width="512"
height="512"
srcset="http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_1_hu1ec19e515fd7538067cc14f2c3c8bddf_594392_480x0_resize_box_3.png 480w, http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_1_hu1ec19e515fd7538067cc14f2c3c8bddf_594392_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_1.png"
class="gallery-image"
data-flex-grow="100"
data-flex-basis="240px"
>&lt;/p>
&lt;p>&lt;img src="http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_3.png"
width="512"
height="512"
srcset="http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_3_hu67e673668e1b02812ead4fb15912ac36_533749_480x0_resize_box_3.png 480w, http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_3_hu67e673668e1b02812ead4fb15912ac36_533749_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_3.png"
class="gallery-image"
data-flex-grow="100"
data-flex-basis="240px"
>&lt;/p>
&lt;p>&lt;img src="http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_4.png"
width="512"
height="512"
srcset="http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_4_hu2b826ec3ad4d7685d995efaa40aac0c5_597506_480x0_resize_box_3.png 480w, http://kenji.blog/p/aistablediffusion%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88%E7%94%BB%E5%83%8F%E7%94%9F%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img_4_hu2b826ec3ad4d7685d995efaa40aac0c5_597506_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_4.png"
class="gallery-image"
data-flex-grow="100"
data-flex-basis="240px"
>&lt;/p>
&lt;h2 id="सदरभ">संदर्भ
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://huggingface.co/gsdf/Counterfeit-V2.5" target="_blank" rel="noopener"
>https://huggingface.co/gsdf/Counterfeit-V2.5&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://www.youtube.com/watch?v=l8-fVSM2PVQ" target="_blank" rel="noopener"
>मैंने 15 मिनट में आर्टिफिशियल इंटेलिजेंस (AI) का उपयोग करके एक इमेज जनरेशन प्रोग्राम बनाया 【लाइव प्रोग्रामिंग】&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>rustc को अपडेट करने का तरीका</title><link>http://kenji.blog/hi/p/rustc%E3%82%92%E3%82%A2%E3%83%83%E3%83%97%E3%83%87%E3%83%BC%E3%83%88%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/</link><pubDate>Sat, 18 Mar 2023 10:27:02 +0900</pubDate><guid>http://kenji.blog/hi/p/rustc%E3%82%92%E3%82%A2%E3%83%83%E3%83%97%E3%83%87%E3%83%BC%E3%83%88%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/</guid><description>&lt;img src="http://kenji.blog/p/rustc%E3%82%92%E3%82%A2%E3%83%83%E3%83%97%E3%83%87%E3%83%BC%E3%83%88%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/img.png" alt="Featured image of post rustc को अपडेट करने का तरीका" />&lt;h1 id="rustc-क-अपडट-करन-क-तरक">rustc को अपडेट करने का तरीका
&lt;/h1>&lt;p>बस कमांड में निम्नलिखित एक पंक्ति चलाएं।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">rustup update
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h1 id="आउटपट-सदरभ">आउटपुट संदर्भ
&lt;/h1>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;span class="lnt">29
&lt;/span>&lt;span class="lnt">30
&lt;/span>&lt;span class="lnt">31
&lt;/span>&lt;span class="lnt">32
&lt;/span>&lt;span class="lnt">33
&lt;/span>&lt;span class="lnt">34
&lt;/span>&lt;span class="lnt">35
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-gdscript3" data-lang="gdscript3">&lt;span class="line">&lt;span class="cl">&lt;span class="n">rustup&lt;/span> &lt;span class="n">update&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">syncing&lt;/span> &lt;span class="n">channel&lt;/span> &lt;span class="n">updates&lt;/span> &lt;span class="k">for&lt;/span> &lt;span class="s1">&amp;#39;stable-x86_64-pc-windows-msvc&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">warning&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Signature&lt;/span> &lt;span class="n">verification&lt;/span> &lt;span class="n">failed&lt;/span> &lt;span class="k">for&lt;/span> &lt;span class="s1">&amp;#39;https://static.rust-lang.org/dist/channel-rust-stable.toml&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">latest&lt;/span> &lt;span class="n">update&lt;/span> &lt;span class="n">on&lt;/span> &lt;span class="mi">2023&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">03&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">09&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">rust&lt;/span> &lt;span class="n">version&lt;/span> &lt;span class="mf">1.68&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="mi">0&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="n">c8cc3432&lt;/span> &lt;span class="mi">2023&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">03&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">06&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">downloading&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rust-src&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">downloading&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;cargo&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">downloading&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;clippy&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">downloading&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rust-docs&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">downloading&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rust-std&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">downloading&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rustc&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="mf">63.9&lt;/span> &lt;span class="n">MiB&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="mf">63.9&lt;/span> &lt;span class="n">MiB&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mi">100&lt;/span> &lt;span class="o">%&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="mf">37.5&lt;/span> &lt;span class="n">MiB&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">s&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="n">s&lt;/span> &lt;span class="n">ETA&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="n">s&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">downloading&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rustfmt&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">removing&lt;/span> &lt;span class="n">previous&lt;/span> &lt;span class="n">version&lt;/span> &lt;span class="n">of&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rust-src&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">removing&lt;/span> &lt;span class="n">previous&lt;/span> &lt;span class="n">version&lt;/span> &lt;span class="n">of&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;cargo&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">removing&lt;/span> &lt;span class="n">previous&lt;/span> &lt;span class="n">version&lt;/span> &lt;span class="n">of&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;clippy&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">removing&lt;/span> &lt;span class="n">previous&lt;/span> &lt;span class="n">version&lt;/span> &lt;span class="n">of&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rust-docs&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">removing&lt;/span> &lt;span class="n">previous&lt;/span> &lt;span class="n">version&lt;/span> &lt;span class="n">of&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rust-std&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">removing&lt;/span> &lt;span class="n">previous&lt;/span> &lt;span class="n">version&lt;/span> &lt;span class="n">of&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rustc&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">removing&lt;/span> &lt;span class="n">previous&lt;/span> &lt;span class="n">version&lt;/span> &lt;span class="n">of&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rustfmt&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">installing&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rust-src&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">installing&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;cargo&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">installing&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;clippy&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">installing&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rust-docs&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="mf">19.4&lt;/span> &lt;span class="n">MiB&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="mf">19.4&lt;/span> &lt;span class="n">MiB&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mi">100&lt;/span> &lt;span class="o">%&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="mf">2.4&lt;/span> &lt;span class="n">MiB&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">s&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="mi">6&lt;/span>&lt;span class="n">s&lt;/span> &lt;span class="n">ETA&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="n">s&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">installing&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rust-std&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="mf">27.6&lt;/span> &lt;span class="n">MiB&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="mf">27.6&lt;/span> &lt;span class="n">MiB&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mi">100&lt;/span> &lt;span class="o">%&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="mf">12.7&lt;/span> &lt;span class="n">MiB&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">s&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="mi">2&lt;/span>&lt;span class="n">s&lt;/span> &lt;span class="n">ETA&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="n">s&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">installing&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rustc&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="mf">63.9&lt;/span> &lt;span class="n">MiB&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="mf">63.9&lt;/span> &lt;span class="n">MiB&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mi">100&lt;/span> &lt;span class="o">%&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="mf">13.8&lt;/span> &lt;span class="n">MiB&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">s&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="mi">4&lt;/span>&lt;span class="n">s&lt;/span> &lt;span class="n">ETA&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="n">s&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">installing&lt;/span> &lt;span class="n">component&lt;/span> &lt;span class="s1">&amp;#39;rustfmt&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">checking&lt;/span> &lt;span class="k">for&lt;/span> &lt;span class="bp">self&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">updates&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">downloading&lt;/span> &lt;span class="bp">self&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">update&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">stable&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">x86_64&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">pc&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">windows&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">msvc&lt;/span> &lt;span class="n">updated&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="n">rustc&lt;/span> &lt;span class="mf">1.68&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="mi">0&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="n">c8cc3432&lt;/span> &lt;span class="mi">2023&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">03&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">06&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">from&lt;/span> &lt;span class="n">rustc&lt;/span> &lt;span class="mf">1.64&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="mi">0&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">a55dd71d5&lt;/span> &lt;span class="mi">2022&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">09&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">19&lt;/span>&lt;span class="p">))&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">cleaning&lt;/span> &lt;span class="n">up&lt;/span> &lt;span class="n">downloads&lt;/span> &lt;span class="o">&amp;amp;&lt;/span> &lt;span class="n">tmp&lt;/span> &lt;span class="n">directories&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Rust की विशेषताएं</title><link>http://kenji.blog/hi/p/rust%E3%81%AE%E7%89%B9%E5%BE%B4/</link><pubDate>Mon, 03 Oct 2022 22:47:20 +0900</pubDate><guid>http://kenji.blog/hi/p/rust%E3%81%AE%E7%89%B9%E5%BE%B4/</guid><description>&lt;img src="http://kenji.blog/p/rust%E3%81%AE%E7%89%B9%E5%BE%B4/img.png" alt="Featured image of post Rust की विशेषताएं" />&lt;h1 id="rust-क-वशषतए">Rust की विशेषताएं
&lt;/h1>&lt;ul>
&lt;li>मोज़िला (Mozilla) द्वारा विकसित एक अपेक्षाकृत नई ओपन-सोर्स प्रोग्रामिंग भाषा&lt;/li>
&lt;li>बिना गार्बेज कलेक्शन वाली एक तेज़ भाषा जो सिस्टम प्रोग्रामिंग के लिए विशेष रूप से डिज़ाइन की गई है&lt;/li>
&lt;li>इसमें स्वामित्व (ownership) और उधार (borrowing) के अद्वितीय तंत्र भाषा विनिर्देश के रूप में हैं, जो मेमोरी सुरक्षा की गारंटी देते हैं&lt;/li>
&lt;li>यह क्रॉस-प्लेटफॉर्म पर काम करती है&lt;/li>
&lt;li>इसमें मानक के रूप में Cargo नामक एक बेहतरीन पैकेज मैनेजर है&lt;/li>
&lt;/ul></description></item><item><title>Rust में एक साधारण विंडो प्रदर्शित करना</title><link>http://kenji.blog/hi/p/rust%E3%81%A7%E3%82%B7%E3%83%B3%E3%83%97%E3%83%AB%E3%81%AA%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/</link><pubDate>Sat, 01 Oct 2022 19:08:58 +0900</pubDate><guid>http://kenji.blog/hi/p/rust%E3%81%A7%E3%82%B7%E3%83%B3%E3%83%97%E3%83%AB%E3%81%AA%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/</guid><description>&lt;img src="http://kenji.blog/p/rust%E3%81%A7%E3%82%B7%E3%83%B3%E3%83%97%E3%83%AB%E3%81%AA%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/images/rust_logo.png" alt="Featured image of post Rust में एक साधारण विंडो प्रदर्शित करना" />&lt;p>Rust में एक साधारण विंडो प्रदर्शित करना&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-Cargo.toml" data-lang="Cargo.toml">&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="nx">package&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">name&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;win&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">version&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;0.1.0&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">edition&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;2021&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c"># See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="nx">dependencies&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">winapi&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">version&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;0.3&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">features&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="s2">&amp;#34;winuser&amp;#34;&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>स्रोत कोड नीचे है&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;span class="lnt">29
&lt;/span>&lt;span class="lnt">30
&lt;/span>&lt;span class="lnt">31
&lt;/span>&lt;span class="lnt">32
&lt;/span>&lt;span class="lnt">33
&lt;/span>&lt;span class="lnt">34
&lt;/span>&lt;span class="lnt">35
&lt;/span>&lt;span class="lnt">36
&lt;/span>&lt;span class="lnt">37
&lt;/span>&lt;span class="lnt">38
&lt;/span>&lt;span class="lnt">39
&lt;/span>&lt;span class="lnt">40
&lt;/span>&lt;span class="lnt">41
&lt;/span>&lt;span class="lnt">42
&lt;/span>&lt;span class="lnt">43
&lt;/span>&lt;span class="lnt">44
&lt;/span>&lt;span class="lnt">45
&lt;/span>&lt;span class="lnt">46
&lt;/span>&lt;span class="lnt">47
&lt;/span>&lt;span class="lnt">48
&lt;/span>&lt;span class="lnt">49
&lt;/span>&lt;span class="lnt">50
&lt;/span>&lt;span class="lnt">51
&lt;/span>&lt;span class="lnt">52
&lt;/span>&lt;span class="lnt">53
&lt;/span>&lt;span class="lnt">54
&lt;/span>&lt;span class="lnt">55
&lt;/span>&lt;span class="lnt">56
&lt;/span>&lt;span class="lnt">57
&lt;/span>&lt;span class="lnt">58
&lt;/span>&lt;span class="lnt">59
&lt;/span>&lt;span class="lnt">60
&lt;/span>&lt;span class="lnt">61
&lt;/span>&lt;span class="lnt">62
&lt;/span>&lt;span class="lnt">63
&lt;/span>&lt;span class="lnt">64
&lt;/span>&lt;span class="lnt">65
&lt;/span>&lt;span class="lnt">66
&lt;/span>&lt;span class="lnt">67
&lt;/span>&lt;span class="lnt">68
&lt;/span>&lt;span class="lnt">69
&lt;/span>&lt;span class="lnt">70
&lt;/span>&lt;span class="lnt">71
&lt;/span>&lt;span class="lnt">72
&lt;/span>&lt;span class="lnt">73
&lt;/span>&lt;span class="lnt">74
&lt;/span>&lt;span class="lnt">75
&lt;/span>&lt;span class="lnt">76
&lt;/span>&lt;span class="lnt">77
&lt;/span>&lt;span class="lnt">78
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-main.rs" data-lang="main.rs">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#![windows_subsystem = &lt;/span>&lt;span class="s">&amp;#34;windows&amp;#34;&lt;/span>&lt;span class="cp">]&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">use&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">winapi&lt;/span>::&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">um&lt;/span>::&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">winuser&lt;/span>::&lt;span class="p">{&lt;/span>&lt;span class="n">RegisterClassW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">WNDCLASSW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">CS_HREDRAW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">CS_VREDRAW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">LoadIconW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">IDI_APPLICATION&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">LoadCursorW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">IDC_ARROW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">CreateWindowExW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">ShowWindow&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">SW_NORMAL&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">UpdateWindow&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">GetMessageW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">TranslateMessage&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">DispatchMessageW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">MSG&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="no">WM_DESTROY&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">PostQuitMessage&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">DefWindowProcW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">WS_OVERLAPPEDWINDOW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="no">CW_USEDEFAULT&lt;/span>&lt;span class="p">},&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">wingdi&lt;/span>::&lt;span class="p">{&lt;/span>&lt;span class="n">GetStockObject&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">WHITE_BRUSH&lt;/span>&lt;span class="p">},&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">},&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">shared&lt;/span>::&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">windef&lt;/span>::&lt;span class="p">{&lt;/span>&lt;span class="no">HWND&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">HBRUSH&lt;/span>&lt;span class="p">},&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">minwindef&lt;/span>::&lt;span class="p">{&lt;/span>&lt;span class="no">UINT&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">WPARAM&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">LPARAM&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">LRESULT&lt;/span>&lt;span class="p">},&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">},&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">};&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">use&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">std&lt;/span>::&lt;span class="n">ptr&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">use&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">std&lt;/span>::&lt;span class="n">mem&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">fn&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">()&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">unsafe&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">class_name&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">encode&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;my_window_class_name&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">if&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">!&lt;/span>&lt;span class="n">register_wndclass&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">class_name&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">return&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">hwnd&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">create_window&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">class_name&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">if&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">hwnd&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">is_null&lt;/span>&lt;span class="p">()&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">return&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">ShowWindow&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">hwnd&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">SW_NORMAL&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">UpdateWindow&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">hwnd&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">mut&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">msg&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">mem&lt;/span>::&lt;span class="n">uninitialized&lt;/span>::&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="no">MSG&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="p">();&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">loop&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">if&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">GetMessageW&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="k">mut&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">msg&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">ptr&lt;/span>::&lt;span class="n">null_mut&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">==&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">return&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">TranslateMessage&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="k">mut&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">msg&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">DispatchMessageW&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="k">mut&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">msg&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">fn&lt;/span> &lt;span class="nf">encode&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">source&lt;/span>: &lt;span class="kp">&amp;amp;&lt;/span>&lt;span class="kt">str&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w"> &lt;/span>-&amp;gt; &lt;span class="nb">Vec&lt;/span>&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="kt">u16&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">source&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">encode_utf16&lt;/span>&lt;span class="p">().&lt;/span>&lt;span class="n">chain&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nb">Some&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">)).&lt;/span>&lt;span class="n">collect&lt;/span>&lt;span class="p">()&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">unsafe&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">fn&lt;/span> &lt;span class="nf">register_wndclass&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">class_name&lt;/span>: &lt;span class="kp">&amp;amp;&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="kt">u16&lt;/span>&lt;span class="p">])&lt;/span>&lt;span class="w"> &lt;/span>-&amp;gt; &lt;span class="kt">bool&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">mut&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">winc&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">mem&lt;/span>::&lt;span class="n">zeroed&lt;/span>::&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="no">WNDCLASSW&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="p">();&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">winc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">style&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">CS_HREDRAW&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">|&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">CS_VREDRAW&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">winc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">lpfnWndProc&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="nb">Some&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">win_proc&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">winc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">hIcon&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">LoadIconW&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ptr&lt;/span>::&lt;span class="n">null_mut&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">IDI_APPLICATION&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">winc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">hCursor&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">LoadCursorW&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ptr&lt;/span>::&lt;span class="n">null_mut&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">IDC_ARROW&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">winc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">hbrBackground&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">GetStockObject&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="no">WHITE_BRUSH&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">as&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="kt">i32&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">as&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">HBRUSH&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">winc&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">lpszClassName&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">class_name&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">as_ptr&lt;/span>&lt;span class="p">();&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">RegisterClassW&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">winc&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">unsafe&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">fn&lt;/span> &lt;span class="nf">create_window&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">class_name&lt;/span>: &lt;span class="kp">&amp;amp;&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="kt">u16&lt;/span>&lt;span class="p">])&lt;/span>&lt;span class="w"> &lt;/span>-&amp;gt; &lt;span class="nc">HWND&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">CreateWindowExW&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">class_name&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">as_ptr&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">encode&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;Hello, World!&amp;#34;&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="n">as_ptr&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="no">WS_OVERLAPPEDWINDOW&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="no">CW_USEDEFAULT&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">CW_USEDEFAULT&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">ptr&lt;/span>::&lt;span class="n">null_mut&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">ptr&lt;/span>::&lt;span class="n">null_mut&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">ptr&lt;/span>::&lt;span class="n">null_mut&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">ptr&lt;/span>::&lt;span class="n">null_mut&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">unsafe&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">extern&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="s">&amp;#34;system&amp;#34;&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">fn&lt;/span> &lt;span class="nf">win_proc&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">hwnd&lt;/span>: &lt;span class="nc">HWND&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">msg&lt;/span>: &lt;span class="nc">UINT&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">w_param&lt;/span>: &lt;span class="nc">WPARAM&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">l_param&lt;/span>: &lt;span class="nc">LPARAM&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w"> &lt;/span>-&amp;gt; &lt;span class="nc">LRESULT&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">match&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">msg&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="no">WM_DESTROY&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&amp;gt;&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">PostQuitMessage&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">_&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&amp;gt;&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">return&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">DefWindowProcW&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">hwnd&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">msg&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">w_param&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">l_param&lt;/span>&lt;span class="p">),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">};&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="सदरभ">संदर्भ
&lt;/h2>&lt;p>&lt;a class="link" href="https://qiita.com/benki/items/c01f7da1e1a71cc91d11" target="_blank" rel="noopener"
>Rust में विंडोज प्रोग्रामिंग - CreateWindow&lt;/a>&lt;/p></description></item><item><title>Rust में टेस्ट लिखना</title><link>http://kenji.blog/hi/p/rust%E3%81%A7%E3%83%86%E3%82%B9%E3%83%88%E3%82%92%E6%9B%B8%E3%81%8F/</link><pubDate>Sat, 01 Oct 2022 02:00:59 +0900</pubDate><guid>http://kenji.blog/hi/p/rust%E3%81%A7%E3%83%86%E3%82%B9%E3%83%88%E3%82%92%E6%9B%B8%E3%81%8F/</guid><description>&lt;img src="http://kenji.blog/p/rust%E3%81%A7%E3%83%86%E3%82%B9%E3%83%88%E3%82%92%E6%9B%B8%E3%81%8F/images/rust_logo.png" alt="Featured image of post Rust में टेस्ट लिखना" />&lt;p>Rust में टेस्ट लिखने के लिए, टेस्ट फ़ंक्शन की परिभाषा के ठीक ऊपर &lt;code>#[test]&lt;/code> एट्रिब्यूट जोड़कर फ़ंक्शन बनाएं।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-rust" data-lang="rust">&lt;span class="line">&lt;span class="cl">&lt;span class="k">fn&lt;/span> &lt;span class="nf">plus&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>:&lt;span class="kt">i32&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="n">b&lt;/span>:&lt;span class="kt">i32&lt;/span>&lt;span class="p">)&lt;/span>-&amp;gt;&lt;span class="kt">i32&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">b&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="cp">#[test]&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">fn&lt;/span> &lt;span class="nf">plus_test&lt;/span>&lt;span class="p">()&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="fm">assert_eq!&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">plus&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">),&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>टेस्ट कोड को &lt;code>cargo test&lt;/code> से चलाया जा सकता है। जब टेस्ट सफल होता है, तो यह &lt;code>ok&lt;/code> आउटपुट देता है।
विफल होने पर, यह &lt;code>FAILED&lt;/code> आउटपुट देता है।&lt;/p>
&lt;p>सफल होने पर&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;span class="lnt">9
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">C:&lt;span class="se">\U&lt;/span>sers&lt;span class="se">\a&lt;/span>dmin&lt;span class="se">\D&lt;/span>esktop&lt;span class="se">\t&lt;/span>est1&amp;gt;cargo &lt;span class="nb">test&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> Compiling test1 v0.1.0 &lt;span class="o">(&lt;/span>C:&lt;span class="se">\U&lt;/span>sers&lt;span class="se">\a&lt;/span>dmin&lt;span class="se">\D&lt;/span>esktop&lt;span class="se">\t&lt;/span>est1&lt;span class="o">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> Finished &lt;span class="nb">test&lt;/span> &lt;span class="o">[&lt;/span>unoptimized + debuginfo&lt;span class="o">]&lt;/span> target&lt;span class="o">(&lt;/span>s&lt;span class="o">)&lt;/span> in 0.35s
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> Running unittests src&lt;span class="se">\m&lt;/span>ain.rs &lt;span class="o">(&lt;/span>target&lt;span class="se">\d&lt;/span>ebug&lt;span class="se">\d&lt;/span>eps&lt;span class="se">\t&lt;/span>est1-be5d3118bc52cb3a.exe&lt;span class="o">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">running &lt;span class="m">1&lt;/span> &lt;span class="nb">test&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">test&lt;/span> plus_test ... ok
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">test&lt;/span> result: ok. &lt;span class="m">1&lt;/span> passed&lt;span class="p">;&lt;/span> &lt;span class="m">0&lt;/span> failed&lt;span class="p">;&lt;/span> &lt;span class="m">0&lt;/span> ignored&lt;span class="p">;&lt;/span> &lt;span class="m">0&lt;/span> measured&lt;span class="p">;&lt;/span> &lt;span class="m">0&lt;/span> filtered out&lt;span class="p">;&lt;/span> finished in 0.00s
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>विफल होने पर&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">C:&lt;span class="se">\U&lt;/span>sers&lt;span class="se">\a&lt;/span>dmin&lt;span class="se">\D&lt;/span>esktop&lt;span class="se">\t&lt;/span>est1&amp;gt;cargo &lt;span class="nb">test&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> Compiling test1 v0.1.0 &lt;span class="o">(&lt;/span>C:&lt;span class="se">\U&lt;/span>sers&lt;span class="se">\a&lt;/span>dmin&lt;span class="se">\D&lt;/span>esktop&lt;span class="se">\t&lt;/span>est1&lt;span class="o">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> Finished &lt;span class="nb">test&lt;/span> &lt;span class="o">[&lt;/span>unoptimized + debuginfo&lt;span class="o">]&lt;/span> target&lt;span class="o">(&lt;/span>s&lt;span class="o">)&lt;/span> in 0.33s
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> Running unittests src&lt;span class="se">\m&lt;/span>ain.rs &lt;span class="o">(&lt;/span>target&lt;span class="se">\d&lt;/span>ebug&lt;span class="se">\d&lt;/span>eps&lt;span class="se">\t&lt;/span>est1-be5d3118bc52cb3a.exe&lt;span class="o">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">running &lt;span class="m">1&lt;/span> &lt;span class="nb">test&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">test&lt;/span> plus_test ... FAILED
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">failures:
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">---- plus_test stdout ----
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">thread &lt;span class="s1">&amp;#39;plus_test&amp;#39;&lt;/span> panicked at &lt;span class="s1">&amp;#39;assertion failed: `(left == right)`
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s1"> left: `2`,
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s1"> right: `3`&amp;#39;&lt;/span>, src&lt;span class="se">\m&lt;/span>ain.rs:7:5
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">note: run with &lt;span class="sb">`&lt;/span>&lt;span class="nv">RUST_BACKTRACE&lt;/span>&lt;span class="o">=&lt;/span>1&lt;span class="sb">`&lt;/span> environment variable to display a backtrace
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">failures:
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> plus_test
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">test&lt;/span> result: FAILED. &lt;span class="m">0&lt;/span> passed&lt;span class="p">;&lt;/span> &lt;span class="m">1&lt;/span> failed&lt;span class="p">;&lt;/span> &lt;span class="m">0&lt;/span> ignored&lt;span class="p">;&lt;/span> &lt;span class="m">0&lt;/span> measured&lt;span class="p">;&lt;/span> &lt;span class="m">0&lt;/span> filtered out&lt;span class="p">;&lt;/span> finished in 0.00s
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">error: &lt;span class="nb">test&lt;/span> failed, to rerun pass &lt;span class="s1">&amp;#39;--bin test1&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Rust में MessageBox प्रदर्शित करें</title><link>http://kenji.blog/hi/p/rust-%E0%A4%AE%E0%A5%87%E0%A4%82-messagebox-%E0%A4%AA%E0%A5%8D%E0%A4%B0%E0%A4%A6%E0%A4%B0%E0%A5%8D%E0%A4%B6%E0%A4%BF%E0%A4%A4-%E0%A4%95%E0%A4%B0%E0%A5%87%E0%A4%82/</link><pubDate>Fri, 30 Sep 2022 23:54:31 +0900</pubDate><guid>http://kenji.blog/hi/p/rust-%E0%A4%AE%E0%A5%87%E0%A4%82-messagebox-%E0%A4%AA%E0%A5%8D%E0%A4%B0%E0%A4%A6%E0%A4%B0%E0%A5%8D%E0%A4%B6%E0%A4%BF%E0%A4%A4-%E0%A4%95%E0%A4%B0%E0%A5%87%E0%A4%82/</guid><description>&lt;img src="http://kenji.blog/p/rust%E3%81%A7messagebox%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/images/rust_logo.png" alt="Featured image of post Rust में MessageBox प्रदर्शित करें" />&lt;p>आप नीचे दिए गए चरणों का पालन करके Rust में MessageBox प्रदर्शित कर सकते हैं।&lt;/p>
&lt;ol>
&lt;li>Rust स्थापित करें। &lt;a class="link" href="https://kenji.blog/posts/rust%E3%81%AE%E3%81%AF%E3%81%98%E3%82%81%E3%81%8B%E3%81%9F/" target="_blank" rel="noopener"
>Rust के साथ शुरुआत कैसे करें&lt;/a> देखें&lt;/li>
&lt;li>कमांड प्रॉम्प्ट में &lt;code>cargo new --bin MessageBox&lt;/code> चलाएँ।&lt;/li>
&lt;li>&lt;code>MessageBox&lt;/code> निर्देशिका में जाएँ।&lt;/li>
&lt;li>&lt;code>Cargo.toml&lt;/code> खोलें और नीचे दिए गए अनुसार संशोधित करें।&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-toml" data-lang="toml">&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="nx">package&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">name&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;hello_world&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">version&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;0.1.0&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">edition&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;2021&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c"># See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="nx">dependencies&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">winapi&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;0.2.7&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nx">user32-sys&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s2">&amp;#34;0.2.0&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="5">
&lt;li>&lt;code>src\main.rs&lt;/code> खोलें और नीचे दिए गए अनुसार संशोधित करें।&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-main.rs" data-lang="main.rs">&lt;span class="line">&lt;span class="cl">&lt;span class="k">extern&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">crate&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">user32&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">extern&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">crate&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">winapi&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">use&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">std&lt;/span>::&lt;span class="n">ffi&lt;/span>::&lt;span class="n">CString&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">use&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">user32&lt;/span>::&lt;span class="n">MessageBoxA&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">use&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">winapi&lt;/span>::&lt;span class="n">winuser&lt;/span>::&lt;span class="p">{&lt;/span>&lt;span class="no">MB_OK&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">MB_ICONINFORMATION&lt;/span>&lt;span class="p">};&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="k">fn&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">()&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">lp_text&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">CString&lt;/span>::&lt;span class="n">new&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;Hello, world!&amp;#34;&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="n">unwrap&lt;/span>&lt;span class="p">();&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">lp_caption&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">CString&lt;/span>::&lt;span class="n">new&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;MessageBox Example&amp;#34;&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="n">unwrap&lt;/span>&lt;span class="p">();&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">unsafe&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">MessageBoxA&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">std&lt;/span>::&lt;span class="n">ptr&lt;/span>::&lt;span class="n">null_mut&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">lp_text&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">as_ptr&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">lp_caption&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">as_ptr&lt;/span>&lt;span class="p">(),&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="no">MB_OK&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">|&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="no">MB_ICONINFORMATION&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="6">
&lt;li>
&lt;p>कमांड प्रॉम्प्ट में &lt;code>cargo run&lt;/code> चलाएँ।
&lt;img src="http://kenji.blog/p/rust%E3%81%A7messagebox%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/img.png"
width="160"
height="152"
srcset="http://kenji.blog/p/rust%E3%81%A7messagebox%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/img_hu634f1117052e2b61756baa5f3866eef5_4266_480x0_resize_box_3.png 480w, http://kenji.blog/p/rust%E3%81%A7messagebox%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/img_hu634f1117052e2b61756baa5f3866eef5_4266_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img.png"
class="gallery-image"
data-flex-grow="105"
data-flex-basis="252px"
>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>रिलीज़ बिल्ड बनाने के लिए &lt;code>cargo build --release&lt;/code> चलाएँ।&lt;/p>
&lt;/li>
&lt;/ol>
&lt;h1 id="सदरभ">संदर्भ
&lt;/h1>&lt;p>&lt;a class="link" href="https://wesleywiser.github.io/post/rust-windows-messagebox-hello-world/" target="_blank" rel="noopener"
>Hello World MesssageBox example in Rust&lt;/a>&lt;/p></description></item><item><title>विंडो शीर्षक की गणना करना</title><link>http://kenji.blog/hi/p/%E0%A4%B5%E0%A4%BF%E0%A4%82%E0%A4%A1%E0%A5%8B-%E0%A4%B6%E0%A5%80%E0%A4%B0%E0%A5%8D%E0%A4%B7%E0%A4%95-%E0%A4%95%E0%A5%80-%E0%A4%97%E0%A4%A3%E0%A4%A8%E0%A4%BE-%E0%A4%95%E0%A4%B0%E0%A4%A8%E0%A4%BE/</link><pubDate>Tue, 20 Sep 2022 17:03:15 +0900</pubDate><guid>http://kenji.blog/hi/p/%E0%A4%B5%E0%A4%BF%E0%A4%82%E0%A4%A1%E0%A5%8B-%E0%A4%B6%E0%A5%80%E0%A4%B0%E0%A5%8D%E0%A4%B7%E0%A4%95-%E0%A4%95%E0%A5%80-%E0%A4%97%E0%A4%A3%E0%A4%A8%E0%A4%BE-%E0%A4%95%E0%A4%B0%E0%A4%A8%E0%A4%BE/</guid><description>&lt;img src="http://kenji.blog/p/%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6%E3%82%BF%E3%82%A4%E3%83%88%E3%83%AB%E3%81%AE%E5%88%97%E6%8C%99/img.png" alt="Featured image of post विंडो शीर्षक की गणना करना" />&lt;h1 id="वड-शरषक-क-गणन-करन">विंडो शीर्षक की गणना करना
&lt;/h1>&lt;p>PowerShell का उपयोग करके वर्तमान में खुले विंडो के शीर्षकों की गणना करने का तरीका यहां दिया गया है।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-powershell" data-lang="powershell">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">Get-Process&lt;/span>&lt;span class="p">|&lt;/span>&lt;span class="n">where&lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="nv">$_&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">mainWindowTItle&lt;/span>&lt;span class="p">}|&lt;/span>&lt;span class="nb">Select-Object&lt;/span> &lt;span class="n">MainWindowTitle&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>आउटपुट का उदाहरण&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;span class="lnt">9
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">MainWindowTitle
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">---------------
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Windows PowerShell
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Internet Explorer
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">अनाम - पेंट
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">अनाम - नोटपैड
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">कार्य प्रबंधक
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">विंडोज इनपुट एक्सपीरियंस
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">दस्तावेज़ - वर्डपैड
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>PowerShell के साथ .DS_Store को एक साथ हटाएं</title><link>http://kenji.blog/hi/p/powershell-%E0%A4%95%E0%A5%87-%E0%A4%B8%E0%A4%BE%E0%A4%A5-.ds_store-%E0%A4%95%E0%A5%8B-%E0%A4%8F%E0%A4%95-%E0%A4%B8%E0%A4%BE%E0%A4%A5-%E0%A4%B9%E0%A4%9F%E0%A4%BE%E0%A4%8F%E0%A4%82/</link><pubDate>Mon, 12 Sep 2022 10:11:42 +0900</pubDate><guid>http://kenji.blog/hi/p/powershell-%E0%A4%95%E0%A5%87-%E0%A4%B8%E0%A4%BE%E0%A4%A5-.ds_store-%E0%A4%95%E0%A5%8B-%E0%A4%8F%E0%A4%95-%E0%A4%B8%E0%A4%BE%E0%A4%A5-%E0%A4%B9%E0%A4%9F%E0%A4%BE%E0%A4%8F%E0%A4%82/</guid><description>&lt;img src="http://kenji.blog/p/powershell%E3%81%A7.ds_store%E3%82%92%E4%B8%80%E6%8B%AC%E5%89%8A%E9%99%A4%E3%81%99%E3%82%8B/img.png" alt="Featured image of post PowerShell के साथ .DS_Store को एक साथ हटाएं" />&lt;p>वर्तमान निर्देशिका को लक्ष्य फ़ोल्डर में ले जाएँ और सबफ़ोल्डर सहित .DS_Store फ़ाइलों को एक साथ हटाने के लिए निम्नलिखित कमांड चलाएँ।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-powershell" data-lang="powershell">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">Get-ChildItem&lt;/span> &lt;span class="p">.&lt;/span> &lt;span class="n">-include&lt;/span> &lt;span class="s1">&amp;#39;.DS_Store&amp;#39;&lt;/span> &lt;span class="n">-Recurse&lt;/span> &lt;span class="n">-Force&lt;/span> &lt;span class="p">|&lt;/span> &lt;span class="nb">Remove-Item&lt;/span> &lt;span class="n">-Force&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Go कैसे इंस्टॉल करें</title><link>http://kenji.blog/hi/p/go-kaise-install-karen/</link><pubDate>Sat, 10 Sep 2022 00:48:17 +0900</pubDate><guid>http://kenji.blog/hi/p/go-kaise-install-karen/</guid><description>&lt;img src="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/cover.png" alt="Featured image of post Go कैसे इंस्टॉल करें" />&lt;h1 id="परचय">परिचय
&lt;/h1>&lt;p>Go एक अपेक्षाकृत नई प्रोग्रामिंग भाषा है जिसे Google ने 2009 में जारी किया था।
Go के कंपाइलर, टूल और लाइब्रेरी ओपन सोर्स के रूप में उपलब्ध हैं।
इसके अलावा, Go, C या Java जैसी एक स्टैटिकली टाइप्ड भाषा है, लेकिन यह C भाषा की तरह पॉइंटर्स का उपयोग नहीं करती है।&lt;/p>
&lt;h1 id="इसटलशन-वध">इंस्टॉलेशन विधि
&lt;/h1>&lt;p>&lt;a class="link" href="https://go.dev/dl/" target="_blank" rel="noopener"
>Go इंस्टॉल करें&lt;/a>&lt;/p>
&lt;p>उपरोक्त साइट पर प्रत्येक प्लेटफॉर्म के लिए इंस्टॉलर उपलब्ध हैं।&lt;/p>
&lt;p>स्क्रीन पर दिए गए निर्देशों का पालन करते हुए इंस्टॉलेशन के साथ आगे बढ़ें।
&lt;img src="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img.png"
width="495"
height="387"
srcset="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_hudec02a4f1dfaca9415d58a56d502b14f_18782_480x0_resize_box_3.png 480w, http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_hudec02a4f1dfaca9415d58a56d502b14f_18782_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img.png"
class="gallery-image"
data-flex-grow="127"
data-flex-basis="306px"
>&lt;/p>
&lt;p>&lt;img src="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_1.png"
width="495"
height="387"
srcset="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_1_hu803f0fb268a2cf0fa74e4e36a5b3a765_20314_480x0_resize_box_3.png 480w, http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_1_hu803f0fb268a2cf0fa74e4e36a5b3a765_20314_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_1.png"
class="gallery-image"
data-flex-grow="127"
data-flex-basis="306px"
>&lt;/p>
&lt;p>&lt;img src="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_2.png"
width="495"
height="387"
srcset="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_2_hu05fb3923212918b7539badd0200ea75c_11067_480x0_resize_box_3.png 480w, http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_2_hu05fb3923212918b7539badd0200ea75c_11067_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_2.png"
class="gallery-image"
data-flex-grow="127"
data-flex-basis="306px"
>&lt;/p>
&lt;p>&lt;img src="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_3.png"
width="495"
height="387"
srcset="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_3_hu316d63501ec24e1e74dc3cb674d4cc1f_11612_480x0_resize_box_3.png 480w, http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_3_hu316d63501ec24e1e74dc3cb674d4cc1f_11612_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_3.png"
class="gallery-image"
data-flex-grow="127"
data-flex-basis="306px"
>&lt;/p>
&lt;p>&lt;img src="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_5.png"
width="495"
height="387"
srcset="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_5_hu8bb188f8700bed3c70acaed6e511012d_14167_480x0_resize_box_3.png 480w, http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_5_hu8bb188f8700bed3c70acaed6e511012d_14167_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_5.png"
class="gallery-image"
data-flex-grow="127"
data-flex-basis="306px"
>&lt;/p>
&lt;p>&lt;img src="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_6.png"
width="495"
height="387"
srcset="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_6_hu0a1b7e9cf2cb725ed5a7ea7685880608_16796_480x0_resize_box_3.png 480w, http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_6_hu0a1b7e9cf2cb725ed5a7ea7685880608_16796_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_6.png"
class="gallery-image"
data-flex-grow="127"
data-flex-basis="306px"
>&lt;/p>
&lt;p>इंस्टॉलेशन पूरा हो गया। यह आसान है, है ना?&lt;/p>
&lt;h1 id="पहल-परगरम">पहला प्रोग्राम
&lt;/h1>&lt;p>निम्नलिखित प्रोग्राम को &lt;code>hello.go&lt;/code> के रूप में सेव करें।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-go" data-lang="go">&lt;span class="line">&lt;span class="cl">&lt;span class="kn">package&lt;/span> &lt;span class="nx">main&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="s">&amp;#34;fmt&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kd">func&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">fmt&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nf">Printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;Hello World\n&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>कमांड प्रॉम्प्ट या टर्मिनल से &lt;code>go run hello.go&lt;/code> चलाने पर, &lt;code>Hello, world!&lt;/code> आउटपुट होगा।&lt;/p>
&lt;p>कंपाइल करने के लिए, &lt;code>go build hello.go&lt;/code> चलाने पर &lt;code>hello.exe&lt;/code> उत्पन्न होगा।
&lt;code>hello.exe&lt;/code> चलाने पर, &lt;code>Hello, world!&lt;/code> आउटपुट होगा।&lt;/p>
&lt;h1 id="आप-वब-पज-पर-भ-कड-चल-सकत-ह">आप वेब पेज पर भी कोड चला सकते हैं
&lt;/h1>&lt;p>&lt;a class="link" href="https://go.dev/play/" target="_blank" rel="noopener"
>https://go.dev/play/&lt;/a>&lt;/p>
&lt;p>&lt;img src="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_7.png"
width="793"
height="668"
srcset="http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_7_hu4549f097b6cd8fd929d9562692076ffb_15605_480x0_resize_box_3.png 480w, http://kenji.blog/p/go%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/images/img_7_hu4549f097b6cd8fd929d9562692076ffb_15605_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="img_7.png"
class="gallery-image"
data-flex-grow="118"
data-flex-basis="284px"
>&lt;/p>
&lt;h1 id="जपन-दसतवज">जापानी दस्तावेज़
&lt;/h1>&lt;p>&lt;a class="link" href="http://go.shibu.jp/" target="_blank" rel="noopener"
>http://go.shibu.jp/&lt;/a>&lt;/p>
&lt;p>Go सीखने के लिए आवश्यक स्पष्टीकरण उपरोक्त लिंक (जापानी अनुवाद संस्करण) में समेकित किए गए हैं।
Go से संबंधित तकनीक इतनी खुली और समृद्ध है कि पेपर टेक्स्ट खरीदने की लगभग कोई आवश्यकता नहीं है।&lt;/p>
&lt;p>तो फिर, अपने Go जीवन का आनंद लें!&lt;/p></description></item><item><title>Rust में अभाज्य संख्याओं की गणना</title><link>http://kenji.blog/hi/p/rust-%E0%A4%AE%E0%A5%87%E0%A4%82-%E0%A4%85%E0%A4%AD%E0%A4%BE%E0%A4%9C%E0%A5%8D%E0%A4%AF-%E0%A4%B8%E0%A4%82%E0%A4%96%E0%A5%8D%E0%A4%AF%E0%A4%BE%E0%A4%93%E0%A4%82-%E0%A4%95%E0%A5%80-%E0%A4%97%E0%A4%A3%E0%A4%A8%E0%A4%BE/</link><pubDate>Fri, 09 Sep 2022 07:08:49 +0900</pubDate><guid>http://kenji.blog/hi/p/rust-%E0%A4%AE%E0%A5%87%E0%A4%82-%E0%A4%85%E0%A4%AD%E0%A4%BE%E0%A4%9C%E0%A5%8D%E0%A4%AF-%E0%A4%B8%E0%A4%82%E0%A4%96%E0%A5%8D%E0%A4%AF%E0%A4%BE%E0%A4%93%E0%A4%82-%E0%A4%95%E0%A5%80-%E0%A4%97%E0%A4%A3%E0%A4%A8%E0%A4%BE/</guid><description>&lt;img src="http://kenji.blog/p/rust%E3%81%A7%E7%B4%A0%E6%95%B0%E3%82%92%E5%88%97%E6%8C%99%E3%81%99%E3%82%8B/images/img.png" alt="Featured image of post Rust में अभाज्य संख्याओं की गणना" />&lt;p>मैंने Rust में अभाज्य संख्याओं की गणना करने के लिए एक प्रोग्राम लिखा है।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-rust" data-lang="rust">&lt;span class="line">&lt;span class="cl">&lt;span class="k">fn&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">()&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">max&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">1000&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">mut&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">primes&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="fm">vec!&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">];&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">mut&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">3&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">loop&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">let&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">mut&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">is_prime&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="kc">true&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">for&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">p&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">in&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">primes&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">if&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">%&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">p&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">==&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">is_prime&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="kc">false&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">break&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">if&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">is_prime&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">primes&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">push&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">+=&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">if&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">max&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">break&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="k">for&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">p&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="k">in&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">primes&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="fm">println!&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="si">{}&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">p&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>Rust के साथ कैसे शुरू करें</title><link>http://kenji.blog/hi/p/rust-%E0%A4%95%E0%A5%87-%E0%A4%B8%E0%A4%BE%E0%A4%A5-%E0%A4%95%E0%A5%88%E0%A4%B8%E0%A5%87-%E0%A4%B6%E0%A5%81%E0%A4%B0%E0%A5%82-%E0%A4%95%E0%A4%B0%E0%A5%87%E0%A4%82/</link><pubDate>Tue, 06 Sep 2022 00:12:36 +0900</pubDate><guid>http://kenji.blog/hi/p/rust-%E0%A4%95%E0%A5%87-%E0%A4%B8%E0%A4%BE%E0%A4%A5-%E0%A4%95%E0%A5%88%E0%A4%B8%E0%A5%87-%E0%A4%B6%E0%A5%81%E0%A4%B0%E0%A5%82-%E0%A4%95%E0%A4%B0%E0%A5%87%E0%A4%82/</guid><description>&lt;img src="http://kenji.blog/p/rust%E3%81%AE%E3%81%AF%E3%81%98%E3%82%81%E3%81%8B%E3%81%9F/images/rust_logo.png" alt="Featured image of post Rust के साथ कैसे शुरू करें" />&lt;h1 id="परचय">परिचय
&lt;/h1>&lt;p>Rust एक अपेक्षाकृत नई प्रोग्रामिंग भाषा है जो आपको आधुनिक सिंटैक्स के साथ तेज़ और मेमोरी-कुशल मॉड्यूल लिखने की अनुमति देती है।
यह मल्टी-प्लेटफॉर्म का समर्थन करती है और इसका उपयोग WebAssembly और एम्बेडेड सिस्टम की दुनिया में भी किया जाता है।
प्रसिद्ध रूप से, इसे Firefox, DropBox और Cloudflare द्वारा अपनाया गया है।&lt;/p>
&lt;p>यह C++ के विकल्प के रूप में भी ध्यान आकर्षित कर रहा है।&lt;/p>
&lt;h1 id="कस-इसटल-कर">कैसे इंस्टॉल करें
&lt;/h1>&lt;p>&lt;a class="link" href="https://www.rust-lang.org/ja/tools/install" target="_blank" rel="noopener"
>Rust इंस्टॉल करें&lt;/a>&lt;/p>
&lt;p>उपरोक्त वेबसाइट प्रत्येक प्लेटफॉर्म के लिए इंस्टॉलेशन निर्देश प्रदान करती है।&lt;/p>
&lt;h1 id="पहल-परगरम">पहला प्रोग्राम
&lt;/h1>&lt;p>निम्नलिखित प्रोग्राम को &lt;code>main.rs&lt;/code> के रूप में सहेजें।&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">fn main() {
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> println!(&amp;#34;Hello, world!&amp;#34;);
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>कमांड प्रॉम्प्ट या टर्मिनल से &lt;code>rustc main.rs&lt;/code> चलाने पर, यह संकलित हो जाएगा। &lt;code>./main&lt;/code> (Windows पर &lt;code>main.exe&lt;/code>) चलाने से &lt;code>Hello, world!&lt;/code> आउटपुट होगा।&lt;/p>
&lt;h1 id="जपन-दसतवजकरण">जापानी दस्तावेज़ीकरण
&lt;/h1>&lt;p>&lt;a class="link" href="https://doc.rust-jp.rs/book-ja/" target="_blank" rel="noopener"
>The Rust Programming Language जापानी संस्करण&lt;/a>&lt;/p>
&lt;p>Rust सीखने के लिए आवश्यक स्पष्टीकरण उपरोक्त लिंक (जापानी अनुवाद संस्करण) में संकलित हैं।
यह इतना व्यापक है कि आपको Rust के बारे में कोई किताब खरीदने की आवश्यकता नहीं है।&lt;/p>
&lt;h1 id="यद-आप-इस-वब-पर-आजमन-चहत-ह">यदि आप इसे वेब पर आजमाना चाहते हैं
&lt;/h1>&lt;p>यदि आप कंपाइलर स्थापित किए बिना इसे वेब पर आजमाना चाहते हैं, तो आप &lt;a class="link" href="https://play.rust-lang.org/" target="_blank" rel="noopener"
>The Rust Playground&lt;/a> का उपयोग कर सकते हैं।
कोड दर्ज करने और &amp;ldquo;Run&amp;rdquo; बटन दबाने के बाद, यह वेब पर संकलित और निष्पादित किया जाएगा।&lt;/p></description></item></channel></rss>