"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > मैं C या C++ में Win32 API का उपयोग करके DLL और EXE से संस्करण जानकारी कैसे प्राप्त कर सकता हूं?

मैं C या C++ में Win32 API का उपयोग करके DLL और EXE से संस्करण जानकारी कैसे प्राप्त कर सकता हूं?

2024-11-18 को प्रकाशित
ब्राउज़ करें:959

How can I retrieve version information from DLLs and EXEs using Win32 API in C or C  ?

DLL और EXE के लिए संस्करण जानकारी प्राप्त करना

कई अनुप्रयोगों को फ़ाइलों से संस्करण जानकारी पुनर्प्राप्त करने की क्षमता की आवश्यकता होती है। इस जानकारी का उपयोग प्रदर्शन उद्देश्यों के लिए किया जाता है, जैसे गुण संवाद बॉक्स पर संस्करण संख्या दिखाना।

Win32 API कई फ़ंक्शन प्रदान करता है जिनका उपयोग संस्करण जानकारी प्राप्त करने के लिए किया जा सकता है। एक सामान्य दृष्टिकोण GetFileVersionInfo API का उपयोग करना है।

GetFileVersionInfo का उपयोग करना

GetFileVersionInfo फ़ंक्शन फ़ाइल के संस्करण संसाधनों के बारे में जानकारी पुनर्प्राप्त करता है। इस फ़ंक्शन का उपयोग करने में शामिल चरण हैं:

  1. फ़ाइल पथ और DWORD वेरिएबल के लिए एक पॉइंटर के साथ GetFileVersionInfo को कॉल करें जो संस्करण जानकारी के लिए हैंडल प्राप्त करेगा।
  2. GetFileVersionInfoSize के साथ कॉल करें संस्करण जानकारी का आकार निर्धारित करने के लिए चरण 1 से फ़ाइल पथ और हैंडल।
  3. चरण 2 में प्राप्त आकार का एक बफर आवंटित करें।
  4. फ़ाइल पथ, हैंडल के साथ GetFileVersionInfo को फिर से कॉल करें संस्करण जानकारी प्राप्त करने के लिए चरण 3 से बफर के लिए , आकार और सूचक। विशिष्ट जानकारी. निम्नलिखित नमूना कोड दर्शाता है कि उत्पाद संस्करण और फ़ाइल संस्करण संख्याएँ कैसे निकालें:
LPSTR verData = new char[verSize]; यदि (GetFileVersionInfo(szVersionFile, verHandle, verSize, verData)) { यदि (VerQueryValue(verData, "\\", (शून्य FAR* FAR*)&lpBuffer, &size)) { यदि (आकार) { VS_FIXEDFILEINFO *verInfo = (VS_FIXEDFILEINFO *)lpBuffer; यदि (verInfo->dwSignature == 0xfeef04bd) { ट्रेस("फ़ाइल संस्करण: %d.%d.%d.%d\n", (verInfo->dwFileVersionMS >> 16) और 0xffff, (verInfo->dwFileVersionMS >> 0) और 0xffff, (verInfo->dwFileVersionLS >> 16) और 0xffff, (verInfo->dwFileVersionLS >> 0) और 0xffff ); } } } }

इन चरणों का पालन करके, आप C या C में Win32 मूल API का उपयोग करके DLL या EXE फ़ाइलों के लिए प्रोग्रामेटिक रूप से उत्पाद संस्करण और फ़ाइल संस्करण संख्या प्राप्त कर सकते हैं।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3