Bagikan melalui


Direktif INF DelFiles

Perhatian

Jika Anda membangun paket Universal atau Windows Driver, direktif ini tidak valid. Lihat Menggunakan File INF Universal dan Mulai mengembangkan driver Windows.

Direktif DelFiles mereferensikan bagian yang ditentukan inf-writer di tempat lain dalam file INF, dan menyebabkan daftar file dihapus dalam konteks operasi pada bagian di mana direktif DelFiles yang merujuk ditentukan.

[DDInstall] | 
[DDInstall.CoInstallers] | 
[ClassInstall32] | 
[ClassInstall32.ntx86] | 
[ClassInstall32.ntia64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntamd64] | (Windows XP and later versions of Windows) 
[ClassInstall32.ntarm] | (Windows 8 and later versions of Windows) 
[ClassInstall32.ntarm64] (Windows 10 version 1709 and later versions of Windows) 
  
Delfiles=file-list-section[,file-list-section]... 

Direktif DelFiles dapat ditentukan dalam salah satu bagian yang ditampilkan dalam pernyataan sintaks formal. Arahan ini juga dapat ditentukan dalam salah satu bagian yang ditentukan inf-writer berikut:

Setiap bagian bernama yang direferensikan oleh direktif DelFiles memiliki satu atau beberapa entri formulir berikut:

[file-list-section]
 
destination-file-name[,,,flag]
...

Bagian daftar file dapat memiliki sejumlah entri, masing-masing pada baris terpisah.

Entri

destination-file-name
Menentukan nama file yang akan dihapus dari tujuan.

Jangan tentukan file yang tercantum dalam direktif CopyFiles. Jika file tercantum di bagian yang direferensikan CopyFiles dan yang direferensikan DelFiles, dan file saat ini ada di sistem dengan tanda tangan yang valid, sistem operasi mungkin mengoptimalkan operasi penyalinan tetapi melakukan operasi penghapusan. Ini sangat mungkin bukan apa yang dimaksudkan penulis INF.

Catatan

Anda tidak dapat menggunakan token %strkey% untuk menentukan entri destination-file-name. Untuk informasi selengkapnya tentang token %strkey%, lihat Bagian String INF.

bendera
Nilai opsional ini bisa menjadi salah satu dari yang berikut ini, dinyatakan dalam notasi heksadesimal seperti yang ditunjukkan di sini atau sebagai nilai desimal:

0x00000001 (DELFLG_IN_USE)
Hapus file bernama, mungkin setelah digunakan selama proses penginstalan.

Mengatur nilai bendera ini dalam INF mengantrekan operasi penghapusan file hingga sistem dimulai ulang jika file yang diberikan tidak dapat dihapus karena sedang digunakan saat INF ini sedang diproses. Jika tidak, file seperti itu tidak akan dihapus.

0x00010000 (DELFLG_IN_USE1) (Windows 2000 atau versi Windows yang lebih baru)
Bendera ini adalah versi kata tinggi dari bendera DELFLG_IN_USE, dan memiliki tujuan dan efek yang sama. Bendera ini harus digunakan hanya untuk penginstalan pada sistem berbasis NT.

Mengatur nilai bendera ini dalam INF mencegah konflik dengan bendera COPYFLG_WARN_IF_SKIP dalam INF dengan direktif DelFiles dan CopyFiles yang mereferensikan bagian daftar file yang sama.

Keterangan

Penting

Arahan ini harus digunakan dengan hati-hati. Kami sangat menyarankan agar Anda tidak menggunakan direktif DelFiles dalam file INF untuk driver fungsi Plug and Play (PnP).

Nama bagian daftar file apa pun harus unik untuk file INF, tetapi dapat direferensikan oleh direktif CopyFiles, DelFiles, atau RenFiles di tempat lain di INF yang sama. Nama bagian yang ditentukan penulis INF seperti itu harus mengikuti aturan umum untuk menentukan nama bagian. Untuk informasi selengkapnya tentang aturan ini, lihat Aturan Sintaks Umum untuk File INF.

Direktif DelFiles tidak mendukung dekorasi nama bagian daftar file dengan ekstensi platform yang ditentukan sistem (.nt, .ntx86, .ntia64, .ntamd64, .ntarm, atau .ntarm64).

Bagian DestinationDirs dari file INF mengontrol tujuan untuk semua operasi penghapusan file, terlepas dari bagian yang berisi arahan DelFiles tertentu. Jika bagian bernama yang direferensikan oleh direktif DelFiles memiliki entri yang sesuai di bagian DestinationDirs dari INF yang sama, entri tersebut secara eksplisit menentukan direktori tujuan target tempat semua file yang tercantum di bagian bernama akan dihapus. Jika bagian bernama tidak tercantum di bagian DestinationDirs , Windows menggunakan entri DefaultDestDir di INF.

Contoh

Contoh ini menunjukkan bagaimana bagian DestinationDirs menentukan jalur untuk operasi delete-file yang terjadi dalam memproses INF driver perangkat sederhana.

[DestinationDirs]
DefaultDestDir = 12  ; DIRID_DRIVERS 

; ... 

[AHA154X]
CopyFiles=@AHA154x.MPD
DelFiles=ASPIDEV ; defines delete-files section name
; ... some other directives and sections omitted here

[ASPIDEV]
VASPID.SYS ; name of file to be deleted, if it exists on target 
; ...

Lihat juga

AddInterface

ClassInstall32

CopyFiles

DDInstall

DestinationDirs

InterfaceInstall32

RenFiles

String