Fungsi SetupDiGetActualSectionToInstallExA (setupapi.h)
Fungsi SetupDiGetActualSectionToInstallEx mengambil nama bagian INF DDInstall yang menginstal perangkat untuk sistem operasi dan arsitektur prosesor tertentu.
Sintaks
WINSETUPAPI BOOL SetupDiGetActualSectionToInstallExA(
[in] HINF InfHandle,
[in] PCSTR InfSectionName,
[in, optional] PSP_ALTPLATFORM_INFO AlternatePlatformInfo,
[out, optional] PSTR InfSectionWithExt,
[in] DWORD InfSectionWithExtSize,
[out, optional] PDWORD RequiredSize,
[out, optional] PSTR *Extension,
PVOID Reserved
);
Parameter
[in] InfHandle
Handel ke file INF yang berisi bagian DDInstall .
[in] InfSectionName
Penunjuk ke nama bagian DDInstall (seperti yang ditentukan di bagian Model INF). Panjang maksimum nama bagian, dalam karakter, adalah 254.
[in, optional] AlternatePlatformInfo
Pointer, jika non-NULL, ke struktur SP_ALTPLATFORM_INFO . Struktur ini digunakan untuk menentukan sistem operasi dan arsitektur prosesor yang berbeda dari yang ada di komputer lokal. Untuk mengembalikan nama bagian DDInstall untuk komputer lokal, atur parameter ini ke NULL. Jika tidak, berikan struktur SP_ALTPLATFORM dan tetapkan anggotanya sebagai berikut:
cbSize
Atur ke ukuran, dalam byte, dari struktur SP_ALTPLATFORM_INFO.
Platform
Atur ke VER_PLATFORM_WIN32_NT untuk Windows XP dan versi Windows yang lebih baru.
MajorVersion
Tidak digunakan.
MinorVersion
Tidak Digunakan.
ProcessorArchitecture
Atur salah satu konstanta arsitektur prosesor berikut.
Konstanta Arsitektur Prosesor | Makna |
---|---|
PROCESSOR_ARCHITECTURE_INTEL | Platform alternatif adalah arsitektur prosesor berbasis x86. |
PROCESSOR_ARCHITECTURE_IA64 | Platform alternatifnya adalah arsitektur prosesor berbasis Itanium. |
PROCESSOR_ARCHITECTURE_AMD64 | Platform alternatif adalah arsitektur prosesor berbasis x64. |
Dicadangkan
Atur ke nol.
[out, optional] InfSectionWithExt
Penunjuk ke buffer karakter untuk menerima nama bagian DDInstall , ekstensi platformnya, dan terminator NULL. Ini adalah nama bagian yang didekorasi yang harus digunakan untuk penginstalan. Jika parameter ini NULL, fungsi mengembalikan TRUE dan mengatur RequiredSize ke ukuran, dalam karakter, yang diperlukan untuk mengembalikan nama bagian DDInstall , ekstensi platformnya, dan karakter NULL yang mengakhiri.
[in] InfSectionWithExtSize
Ukuran, dalam karakter, dari buffer yang diacu oleh parameter InfSectionWithExt . Panjang maksimum nama bagian INF yang dihentikan NULL, dalam karakter, adalah MAX_INF_SECTION_NAME_LENGTH.
[out, optional] RequiredSize
Penunjuk ke variabel yang menerima ukuran, dalam karakter, yang diperlukan untuk mengembalikan nama bagian DDInstall , ekstensi platform, dan karakter NULL yang mengakhiri.
[out, optional] Extension
Penunjuk ke variabel yang menerima penunjuk ke karakter '.' yang menandai awal ekstensi di buffer InfSectionWithExt . Jika buffer InfSectionWithExt tidak disediakan atau terlalu kecil, parameter ini tidak diatur. Atur parameter ini ke NULL jika penunjuk ke ekstensi tidak diperlukan.
Reserved
Dicadangkan untuk penggunaan internal saja. Harus diatur ke NULL.
Mengembalikan nilai
Jika fungsi berhasil, fungsi akan mengembalikan TRUE. Jika tidak, ia mengembalikan FALSE. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.
Keterangan
SetupDiGetActualSectionToInstallEx adalah bentuk tambahan dari SetupDiGetActualSectionToInstall. Fungsi-fungsi ini mendukung ekstensi ke nama bagian DDInstall yang digunakan untuk menentukan tindakan penginstalan khusus OS dan khusus arsitektur untuk perangkat. Untuk informasi tentang ekstensi ini, lihat Membuat File INF untuk Beberapa Platform dan Sistem Operasi.
Jika Anda tidak menyediakan informasi platform alternatif dengan panggilan ke SetupDiGetActualSectionToInstallEx, fungsi melakukan operasi yang sama dengan SetupDiGetActualSectionToInstall. Fungsi terakhir mencari nama bagian penginstalan yang ditentukan menggunakan informasi platform untuk komputer lokal.
Jika Anda memberikan informasi platform alternatif dengan panggilan ke SetupDiGetActualSectionToInstallEx, fungsi melakukan hal berikut:
-
Jika Anda menentukan platform VER_PLATFORM_WIN32_NT, fungsi pertama-tama mencari dalam file INF yang ditentukan untuk nama bagian penginstalan yang dihiasi yang cocok dengan nama, sistem operasi, dan arsitektur prosesor yang Anda tentukan. Jika, misalnya, Anda menentukan nama bagian penginstalan InstallSec, fungsi mencari salah satu nama yang didekorasi berikut, tergantung pada arsitektur prosesor yang ditentukan:
- Jika Anda menentukan arsitektur prosesor berbasis x86, fungsi mencari nama yang didekorasi InstallSec.ntx86.
- Jika Anda menentukan arsitektur prosesor berbasis x64, fungsi mencari nama yang didekorasi InstallSec.ntamd64.
- Jika Anda menentukan arsitektur prosesor berbasis Itanium, fungsi mencari nama yang didekorasi InstallSec.ntia64.
Jika fungsi menemukan kecocokan untuk nama, sistem operasi, dan arsitektur prosesor, fungsi mengakhiri pencarian dan mengembalikan nama yang didekorasi yang sesuai. Jika fungsi tidak menemukan kecocokan seperti itu, fungsi mencari bagian yang namanya InstallSec.nt. Jika fungsi menemukan kecocokan untuk InstallSec.nt, fungsi akan mengakhiri pencarian dan mengembalikan nama ini. Jika fungsi tidak menemukan kecocokan untuk salah satu pencarian di atas, fungsi mengembalikan InstallSec, tetapi tidak memverifikasi bahwa file INF berisi bagian penginstalan yang namanya InstallSec.
Catatan
Header setupapi.h mendefinisikan SetupDiGetActualSectionToInstallEx sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preproscessor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia di Windows XP dan versi Windows yang lebih baru. |
Target Platform | Desktop |
Header | setupapi.h (termasuk Setupapi.h) |
Pustaka | Setupapi.lib |