Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Setiap addSoftware direktif menjelaskan penginstalan perangkat lunak mandiri. Arahan ini harus digunakan dalam file INF dari kelas penyiapan SoftwareComponent. Untuk detail selengkapnya tentang komponen perangkat lunak, lihat Menggunakan File INF Komponen. Arahan ini didukung untuk Windows 10 versi 1703 dan yang lebih baru.
Jenis penginstalan yang valid bergantung pada platform target . Misalnya, Desktop mendukung penginstal MSI dan menyiapkan EXE.
Nota
Tipe 2 didukung di Driver Universal, Tipe 1 hanya untuk desktop.
Ketika file INF komponen perangkat lunak menentukan AddSoftware, sistem mengantrekan perangkat lunak yang akan diinstal setelah penginstalan perangkat. Tidak ada jaminan kapan atau apakah perangkat lunak akan diinstal. Jika perangkat lunak yang direferensikan gagal diinstal, sistem mencoba lagi ketika komponen perangkat lunak referensi diperbarui.
Direktif AddSoftware digunakan dalam INFDDInstall . Bagian perangkat lunak.
[DDInstall.Software]
AddSoftware=SoftwareName,[flags],software-install-section
Entri
SoftwareName
Menentukan nama perangkat lunak yang akan diinstal. Nama ini harus unik di seluruh sistem, terlepas dari NAMA INF atau bagian. Pemrosesan direktif AddSoftware memeriksa versi terhadap perangkat lunak sebelumnya yang diinstal dengan nama yang sama dengan AddSoftware direktif dari paket driver apa pun. Sebaiknya awali SoftwareName dengan nama vendor, misalnya ContosoControlPanel.
bendera
Menentukan satu atau beberapa bendera (ORed).
0x00000000
Direktif AddSoftware hanya diproses sekali.
0x00000001
Direktif AddSoftware diproses sekali untuk setiap perangkat komponen yang menentukan AddSoftware dengan SoftwareNameunik yang sama.
Misalnya, pertimbangkan konfigurasi di mana tiga perangkat diinstal menggunakan file INF yang sama. Proses penginstalan perangkat lunak hanya berjalan sekali untuk bendera 0x00000000 tetapi tiga kali untuk bendera 0x00000001.
bagian penginstalan perangkat lunak
Mereferensikan bagian yang ditentukan inf-writer yang berisi informasi untuk menginstal perangkat lunak.
Komentar
Setiap nama bagian yang dibuat inf-writer harus unik dalam file INF dan harus mengikuti aturan umum untuk menentukan nama bagian. Untuk informasi selengkapnya tentang aturan ini, lihat Aturan Sintaks Umum untuk File INF.
Direktif AddSoftware harus mereferensikan bagian penginstalan perangkat lunak di tempat lain dalam file INF. Setiap bagian tersebut memiliki formulir berikut:
[software-install-section]
SoftwareType=type-code
[SoftwareBinary=path-to-binary]
[SoftwareArguments=argument[, argument] …]
[SoftwareVersion=w.x.y.z]
[SoftwareID=pfn://x.y.z]
Nota
Lihat SoftwareType untuk informasi tentang batasan entri dan nilai bagian.
Perangkat lunak apa pun yang diinstal menggunakan AddSoftware harus diinstal secara diam-diam (atau diam-diam). Dengan kata lain, tidak ada antarmuka pengguna yang dapat ditampilkan kepada pengguna selama penginstalan.
Perangkat lunak apa pun yang diinstal menggunakan AddSoftware akan tidak dihapus instalasinya jika perangkat komponen perangkat lunak virtual atau perangkat induknya dihapus instalannya. Jika perangkat lunak Anda bukan aplikasi UWP (yaitu Anda menggunakan AddSoftware dengan SoftwareType 1), pastikan pengguna dapat dengan mudah menghapusnya tanpa meninggalkan jejak di registri. Untuk melakukannya:
Jika Anda menggunakan penginstal MSI, siapkan entri Tambahkan/Hapus Program dalam paket Windows Installer aplikasi.
Jika Anda menggunakan EXE kustom yang menginstal status registri/file global (alih-alih melengkapi pengaturan perangkat lokal), gunakan Kunci Registri Hapus Instalan.
Entri dan nilai bagian penginstalan perangkat lunak
SoftwareType={type-code}
SoftwareType menentukan jenis penginstalan perangkat lunak dan merupakan entri yang diperlukan.
Nilai 1 menunjukkan bahwa perangkat lunak terkait adalah biner MSI atau EXE. Ketika nilai ini diatur, entri SoftwareBinary juga diperlukan. Nilai 1 tidak didukung pada Windows 10 S.
Jika SoftwareType diatur ke 1, SoftwareBinary dan SoftwareVersion juga diperlukan, tetapi SoftwareArguments dan bendera (di direktif AddSoftware) bersifat opsional.
Mulai Windows 10 versi 1709, nilai 2 menunjukkan bahwa perangkat lunak terkait adalah tautan Microsoft Store. Gunakan nilai 1 hanya untuk perangkat lunak khusus perangkat yang tidak memiliki antarmuka pengguna grafis. Jika Anda memiliki aplikasi khusus perangkat dengan elemen grafis, aplikasi tersebut harus berasal dari Microsoft Store, dan driver harus mereferensikannya menggunakan nilai SoftwareType 2.
Jika SoftwareType diatur ke 2, SoftwareID diperlukan, dan bendera (di direktif AddSoftware) bersifat opsional. Jika SoftwareType diatur ke 2, SoftwareBinary dan SoftwareVersion tidak digunakan.
Nota
Saat menggunakan SoftwareType 2 dari direktif AddSoftware, tidak diperlukan untuk menggunakan INF Komponen. Direktif dapat berhasil digunakan dalam INF apa pun. Direktif AddSoftware dari Tipe 1, bagaimanapun, harus digunakan dari INF Komponen.
Jangan gunakan AddSoftware untuk mendistribusikan perangkat lunak yang tidak terkait dengan perangkat. Misalnya, program utilitas PC khusus OEM tidak boleh diinstal dengan AddSoftware. Sebagai gantinya, gunakan salah satu opsi berikut untuk menginstal aplikasi sebelumnya dalam gambar OEM Windows 10:
Untuk menginstal aplikasi Win32 sebelumnya, boot ke mode audit dan instal aplikasi. Untuk detailnya, lihat Gambaran Umum Mode Audit .
Untuk menginstal aplikasi Microsoft Store (UWP) sebelumnya, lihat Aplikasi yang dapat dihapus sebelumnya untuk perangkat desktop
Untuk informasi tentang memasangkan driver dengan aplikasi Universal Windows Platform (UWP), lihat Memasangkan driver dengan aplikasi Universal Windows Platform (UWP) dan Hardware Support App (HSA): Langkah-langkah untuk Pengembang Driver.
SoftwareBinary={filename}
Menentukan jalur ke executable. Sistem menghasilkan baris perintah seperti berikut:
MSI: msiexec /i "<SoftwareBinary>" ALLUSERS=1 /quiet /qn /promptrestart [<SoftwareArguments>]
EXE: <SoftwareBinary> [<SoftwareArguments>]
Jika Anda menggunakan entri ini, Anda harus menambahkan executable ke DriverStore dengan menentukan Petunjuk CopyFiles INF dengan nilai DestinationDirs 13.
Nota
Lihat SoftwareType untuk informasi tentang batasan entri dan nilai SoftwareBinary.
SoftwareArguments={argument1[, argument2[, ... argumenN]]}
Menentukan argumen khusus ekstensi untuk ditambahkan ke baris perintah. Anda dapat menentukan argumen baris perintah yang hanya diteruskan sistem ke baris perintah yang dihasilkan. Anda juga dapat menentukan string khusus yang disebut variabel konteks runtime . Saat Anda menentukan variabel konteks runtime, sistem mengonversinya menjadi nilai khusus perangkat sebelum menambahkannya ke baris perintah yang dihasilkan. Anda dapat mencampur dan mencocokkan argumen string literal dengan variabel konteks runtime. Variabel konteks runtime yang didukung adalah:
<<DeviceInstanceID>>
Sistem mengganti string di atas dengan ID instans perangkat dari komponen perangkat lunak.
Contohnya:
[DDInstall.Software]
AddSoftware=ContosoControlPanel,,Contoso_ControlPanel_Software
[Contoso_ControlPanel_Software]
SoftwareType=1
SoftwareBinary=ContosoControlPanel.exe
SoftwareArguments=<<DeviceInstanceID>>
SoftwareVersion=1.0.0.0
Contoh di atas menghasilkan baris perintah seperti ini:
<DriverStorePath>\ContosoControlPanel.exe PCI\VEN_0000&DEV_0001&SUBSYS_00000000&REV_00\0123
Jika SoftwareArguments berisi beberapa argumen:
SoftwareArguments=arg1,<<DeviceInstanceID>>,arg2
Hal di atas menghasilkan:
<DriverStorePath>\ContosoControlPanel.exe arg1 PCI\VEN_0000&DEV_0001&SUBSYS_00000000&REV_00\0123 arg2
Nota
Lihat SoftwareType untuk informasi tentang batasan entri dan nilai SoftwareArguments.
SoftwareVersion={w.x.y.z}
Menentukan versi perangkat lunak. Setiap nilai tidak boleh melebihi 65535. Ketika sistem menemukan SoftwareNameduplikat , sistem memeriksa SoftwareVersion terhadap SoftwareVersionsebelumnya. Jika lebih besar, Windows menjalankan perangkat lunak.
Nota
Lihat SoftwareType untuk informasi tentang batasan entri dan nilai SoftwareVersion.
SoftwareID={x.y.z}
Menentukan pengidentifikasi dan jenis pengidentifikasi Microsoft Store. Saat ini, hanya Nama Keluarga Paket (PFN) yang didukung. Gunakan PFN untuk mereferensikan aplikasi Universal Windows Platform (UWP) menggunakan formulir pfn://<x.y.z>.
Nota
Lihat SoftwareType untuk informasi tentang batasan entri dan nilai SoftwareID.
Lihat Juga
Menggunakan File INF Komponen
Memasangkan driver dengan aplikasi Universal Windows Platform (UWP)
Aplikasi Dukungan Perangkat Keras (HSA): Langkah-langkah untuk Pengembang Driver