DLL और EXE के लिए संस्करण जानकारी प्राप्त करना
कई अनुप्रयोगों को फ़ाइलों से संस्करण जानकारी पुनर्प्राप्त करने की क्षमता की आवश्यकता होती है। इस जानकारी का उपयोग प्रदर्शन उद्देश्यों के लिए किया जाता है, जैसे गुण संवाद बॉक्स पर संस्करण संख्या दिखाना।
Win32 API कई फ़ंक्शन प्रदान करता है जिनका उपयोग संस्करण जानकारी प्राप्त करने के लिए किया जा सकता है। एक सामान्य दृष्टिकोण GetFileVersionInfo API का उपयोग करना है।
GetFileVersionInfo का उपयोग करना
GetFileVersionInfo फ़ंक्शन फ़ाइल के संस्करण संसाधनों के बारे में जानकारी पुनर्प्राप्त करता है। इस फ़ंक्शन का उपयोग करने में शामिल चरण हैं:
- फ़ाइल पथ और DWORD वेरिएबल के लिए एक पॉइंटर के साथ GetFileVersionInfo को कॉल करें जो संस्करण जानकारी के लिए हैंडल प्राप्त करेगा।
- GetFileVersionInfoSize के साथ कॉल करें संस्करण जानकारी का आकार निर्धारित करने के लिए चरण 1 से फ़ाइल पथ और हैंडल।
- चरण 2 में प्राप्त आकार का एक बफर आवंटित करें।
- फ़ाइल पथ, हैंडल के साथ 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 फ़ाइलों के लिए प्रोग्रामेटिक रूप से उत्पाद संस्करण और फ़ाइल संस्करण संख्या प्राप्त कर सकते हैं।