Banyak aplikasi memerlukan keupayaan untuk mendapatkan semula maklumat versi daripada fail. Maklumat ini digunakan untuk tujuan paparan, seperti menunjukkan nombor versi pada kotak dialog sifat.
API Win32 menyediakan beberapa fungsi yang boleh digunakan untuk mendapatkan maklumat versi. Satu pendekatan biasa ialah menggunakan API GetFileVersionInfo.
Fungsi GetFileVersionInfo mendapatkan semula maklumat tentang sumber versi fail. Langkah-langkah yang terlibat dalam menggunakan fungsi ini ialah:
Setelah maklumat versi diperoleh semula, anda boleh menggunakan fungsi VerQueryValue untuk mengekstrak maklumat tertentu. Kod sampel berikut menunjukkan cara mengekstrak versi produk dan nombor versi fail:
LPSTR verData = new char[verSize]; if (GetFileVersionInfo(szVersionFile, verHandle, verSize, verData)) { if (VerQueryValue(verData, "\", (VOID FAR* FAR*)&lpBuffer, &size)) { if (size) { VS_FIXEDFILEINFO *verInfo = (VS_FIXEDFILEINFO *)lpBuffer; if (verInfo->dwSignature == 0xfeef04bd) { TRACE("File Version: %d.%d.%d.%d\n", (verInfo->dwFileVersionMS >> 16) & 0xffff, (verInfo->dwFileVersionMS >> 0) & 0xffff, (verInfo->dwFileVersionLS >> 16) & 0xffff, (verInfo->dwFileVersionLS >> 0) & 0xffff ); } } } }
Dengan mengikuti langkah ini, anda boleh mendapatkan versi produk dan nombor versi fail secara pemrograman untuk fail DLL atau EXE menggunakan API asli Win32 dalam C atau C .
Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan maklumat versi daripada DLL dan EXE menggunakan Win32 API dalam C atau C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!