Bagikan melalui


Menghapus Penginstal Bersama dari Paket Driver

Peringatan

Mulai Januari 2023, paket driver berisi penginstal bersama tidak lagi ditandatangani oleh portal pusat pengembang perangkat keras . Untuk detail persyaratan, silakan lihat Spesifikasi dan Kebijakan Program Kompatibilitas Perangkat Keras Windows, khususnya kebijakan versi 22H2, bagian Device.DevFund.INF.Declarative.

Halaman ini membahas alasan umum mengapa penginstal bersama diperlukan dalam paket driver, dan menawarkan mekanisme-mekanisme untuk melakukan tugas yang sama tanpa penginstal bersama.

Ko-penginstal WDF dan WinUSB

Penginstal bersama WDF dan penginstal bersama WinUSB tidak diperlukan pada sistem apa pun yang menjalankan Windows 10 dan yang lebih baru. Referensi penginstal bersama WDF dapat dihapus tanpa pekerjaan tambahan. Referensi ko-penginstal WinUSB dapat dihapus, dan WinUSB harus dirujuk dalam INF paket driver menggunakan arahan Include dan Needs.

panduan untuk paket driver WinUSB

Menginstal perangkat lunak yang menyajikan antarmuka pengguna

Daripada meluncurkan aplikasi selama proses instalasi, sediakan aplikasi Universal Windows Platform yang diinstal menggunakan direktif AddSoftware dari bagian DDInstall.Software pada paket driver INF.

Untuk informasi selengkapnya, lihat Memasangkan driver dengan aplikasi Universal Windows Platform (UWP). direktif AddSoftware didukung pada Windows 10, versi 1703, dan versi Windows yang lebih baru.

Untuk detail tambahan, lihat Menginstal Perangkat Lunak Terkait di bawah ini.

Mengatur nama yang mudah diingat perangkat

INF File

INF paket driver dapat mengatur nama ramah perangkat sebagai berikut:

[DDInstall.HW]
AddReg = FriendlyName_AddReg

[FriendlyName_AddReg]
HKR,,FriendlyName,, "Device Friendly Name"

Runtime

Nama yang mudah diingat dapat diatur oleh driver selama Start IRP atau fase PrepareHardware dengan mengatur properti DEVPKEY_Device_FriendlyName dengan salah satu API berikut:

Pengaturan/konfigurasi perangkat lainnya

Jika memungkinkan, driver dapat mengubah pengaturan dan konfigurasi perangkat dalam driver Start IRP atau fase PrepareHardware. Saat memodifikasi status pada runtime, driver harus mengikuti persyaratan isolasi paket driver . Persyaratan ini berisi panduan tentang konfigurasi driver dan tata letak status dan membantu membuktikan driver di masa depan dengan membuatnya lebih tangguh terhadap perubahan eksternal, lebih mudah diperbarui, dan lebih mudah diinstal.

Untuk pengaturan dan konfigurasi yang tidak dapat diatur dalam driver itu sendiri, paket driver juga dapat mencakup komponen runtime mode pengguna yang mengubah pengaturan dan konfigurasi. Ini bisa menjadi aplikasi yang menghadap pengguna atau layanan Win32 yang memperbarui konfigurasi. Untuk informasi tentang cara menyertakan perangkat lunak mode pengguna untuk digunakan dengan perangkat, lihat bagian Menggunakan File INF Komponen.

Jika komponen persisten seperti layanan digunakan, pastikan bahwa fungsionalitasnya diperlukan dan tidak dapat dilakukan dengan cara yang kurang membutuhkan sumber daya, seperti dalam paket driver INF atau dalam driver itu sendiri. Untuk informasi tentang cara memastikan bahwa layanan hanya berjalan saat perangkat yang relevan terhubung, lihat Pemicu Layanan, layanan Win32 yang berinteraksi dengan perangkat, dan Mendaftar untuk pemberitahuan antarmuka perangkat. Layanan ini juga harus memenuhi persyaratan terbaru, misalnya melewati Validator API .

Menginstal Perangkat Lunak Terkait

Bagian 'Komponen' dari persyaratan driver DCH memperkenalkan konsep yang disebut SoftwareComponent, yang merupakan mekanisme untuk memisahkan penginstalan driver perangkat dari perangkat lunak terkait. Ketika komponen perangkat lunak dibuat oleh INF, komponen tersebut akan secara otomatis membuat perangkat turunan yang dipetakan ke komponen perangkat lunak. Perangkat anak ini akan ada untuk tujuan menginstal perangkat lunak yang terkait dengan perangkat induk. Perangkat lunak ini dapat diinstal dan diperbarui secara independen dari perangkat utama dan driver.

Dalam paket driver SoftwareComponent INF, mekanisme yang direkomendasikan untuk menginstal perangkat lunak menggunakan direktif AddSoftware. Ini akan memicu pengunduhan dan penginstalan perangkat lunak dari Bursa Windows.

Dependensi antara driver dan perangkat

Dependensi pengurutan mulai/enumerasi perangkat

Sejauh mungkin, dependensi antar-perangkat atau persyaratan urutan mulai harus dihindari.

Untuk perangkat yang terdaftar oleh ACPI, objek dependensi (_DEP) dapat digunakan dalam firmware ACPI untuk memberlakukan urutan mulai perangkat. Untuk informasi selengkapnya, lihat Namespace Manajemen Perangkat.

Driver dapat menanggapi IRP IRP_MN_QUERY_DEVICE_RELATIONS untuk menentukan hubungan antara perangkat, seperti hubungan penghapusan. Untuk informasi selengkapnya, lihat IRP_MN_QUERY_DEVICE_RELATIONS.

Dependensi paket driver untuk penginstalan

CopyInf Directive dapat juga digunakan untuk menginstal paket driver tambahan selama panggilan API penginstalan yang sama dengan driver lain. Paket driver yang diteruskan ke API penginstalan akan diinstal sebelum paket driver yang direferensikan CopyInf, tetapi paket driver yang direferensikan oleh CopyInf tidak dijamin diinstal dalam urutan tertentu.

Mengonfigurasi komponen dari beberapa vendor yang dibundel dalam paket driver tunggal

Paket driver mendukung jenis paket driver INF yang disebut INF ekstensinya. Ini adalah file INF yang dirancang khusus untuk menambah dan memperluas fungsionalitas INF paket driver "dasar". Ekstensi mungkin tidak menyediakan driver fungsi untuk perangkat, tetapi dapat menggunakan arahan lain atau menulis pengaturan lain untuk perangkat. Selama penginstalan driver, satu INF paket driver dasar dipilih menggunakan peringkat driver untuk menyediakan fungsionalitas bagi perangkat, kemudian INF ekstensi apa pun dipilih untuk perangkat. Untuk informasi selengkapnya, lihat Menggunakan berkas INF ekstensi.

Paradigma umum untuk menggunakan INF paket driver ekstensi adalah bagi produsen perangkat keras untuk menyediakan INF paket driver dasar, dan bagi OEM yang mengirimkan bagian tersebut dalam sistem untuk membuat INF paket driver ekstensi yang menyesuaikan driver dengan sistem tersebut.

Menginstal/mengatur pembaruan firmware

Mekanisme pembaruan firmware yang berbeda direkomendasikan tergantung pada sifat perangkat yang diperbarui. Masing-masing hal berikut dapat digunakan untuk mengirim dan menginstal pembaruan firmware melalui Windows Update.

Tidak dapat dilepas

Platform pembaruan firmware UEFI dirancang untuk memperbarui komponen sistem yang tidak dapat dihapus, seperti firmware sistem. Untuk informasi selengkapnya, lihat Platform Pembaruan Firmware UEFI.

Dapat dilepas

Untuk perangkat yang dapat dilepas seperti perangkat HID atau USB, model CFU memungkinkan pembaruan firmware yang aman. Untuk informasi selengkapnya, lihat Pembaruan Firmware Komponen .

Implementasi Kustom

Atau, driver kustom yang memperbarui firmware perangkat dapat ditulis menurut kebijaksanaan driver. Untuk informasi selengkapnya, lihat Driver Pembaruan Firmware Kustom.