Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Caution
Jeśli tworzysz uniwersalny lub Windows pakiet sterowników, ta dyrektywa jest nieprawidłowa. Zobacz Using a Universal INF File (Używanie uniwersalnego pliku INF) i Get started developing Windows drivers (Rozpoczynanie opracowywania sterowników Windows).
Dyrektywa DelFiles odwołuje się do sekcji zdefiniowanej przez moduł zapisywania INF w innym miejscu w pliku INF i powoduje usunięcie tej listy plików w kontekście operacji w sekcji, w której określono dyrektywę DelFiles odwołującą się.
[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]...
Dyrektywę DelFiles można określić w dowolnej sekcji pokazanej w instrukcji składni formalnej. Tę dyrektywę można również określić w dowolnej z następujących sekcji zdefiniowanych przez moduł zapisywania INF:
- Sekcja add-interface-referenced by the AddInterface dyrektywy w DDInstall. Sekcja Interfejsy .
- Sekcja install-interface-reference w sekcji InterfaceInstall32
Każda nazwana sekcja, do której odwołuje się dyrektywa DelFiles , zawiera co najmniej jeden wpis następującego formularza:
[file-list-section]
destination-file-name[,,,flag]
...
Sekcja lista-plików może zawierać dowolną liczbę wpisów, z których każda znajduje się w osobnym wierszu.
Wpisy
nazwa pliku docelowego
Określa nazwę pliku, który ma zostać usunięty z miejsca docelowego.
Nie należy określać pliku wymienionego w dyrektywie CopyFiles . Jeśli plik jest wymieniony zarówno w sekcji przywoływałej do pliku CopyFiles, jak i w sekcji z odwołaniem do delFiles, a plik jest obecnie obecny w systemie z prawidłowym podpisem, system operacyjny może zoptymalizować operację kopiowania, ale wykonać operację usuwania. Jest to bardzo prawdopodobne , że nie jest to, co zamierza pisarz INF.
Uwaga
Nie można użyć tokenu % strkey %, aby określić wpis destination-file-name. Aby uzyskać więcej informacji na temat tokenów% strkey %, zobacz sekcję Ciągi INF.
flag
Ta opcjonalna wartość może być jedną z następujących wartości wyrażonych w notacji szesnastkowej, jak pokazano tutaj lub jako wartość dziesiętna:
0x00000001 (DELFLG_IN_USE)
Usuń nazwany plik, prawdopodobnie po jego użyciu podczas procesu instalacji.
Ustawienie tej wartości flagi w kolejce INF operacji usuwania plików do czasu ponownego uruchomienia systemu, jeśli nie można usunąć danego pliku, ponieważ jest używany podczas przetwarzania tego INF. W przeciwnym razie taki plik nie zostanie usunięty.
0x00010000 (DELFLG_IN_USE1) (Windows 2000 lub nowsze wersje Windows)
Ta flaga jest wersją o wysokim słowie flagi DELFLG_IN_USE i ma ten sam cel i efekt. Ta flaga powinna być używana tylko w przypadku instalacji w systemach opartych na nt.
Ustawienie tej wartości flagi w inf zapobiega konfliktom z flagą COPYFLG_WARN_IF_SKIP w inf z zarówno dyrektywami DelFiles , jak i CopyFiles , które odwołują się do tej samej sekcji file-list-section.
Remarks
Important
Niniejsza dyrektywa musi być starannie używana. Zdecydowanie zalecamy, aby nie używać dyrektywy DelFiles w pliku INF dla sterownika funkcji Plug and Play (PnP).
Dowolna nazwa sekcji listy plików musi być unikatowa dla pliku INF, ale może być przywołyna przez dyrektywy CopyFiles, DelFiles lub RenFiles w innym miejscu w tej samej innej lokalizacji INF. Taka nazwa sekcji zdefiniowanej przez moduł zapisywania INF musi być zgodna z ogólnymi regułami definiowania nazw sekcji. Aby uzyskać więcej informacji na temat tych reguł, zobacz Ogólne reguły składni dla plików INF.
Dyrektywa DelFiles nie obsługuje dekorowania nazwy sekcji file-list-section z rozszerzeniem platformy zdefiniowanej przez system (.nt, ntx86, .ntia64, .ntamd64, .ntarm lub .ntarm64).
Sekcja DestinationDirs pliku INF kontroluje miejsce docelowe wszystkich operacji usuwania plików, niezależnie od sekcji zawierającej konkretną dyrektywę DelFiles . Jeśli nazwana sekcja, do której odwołuje się dyrektywa DelFiles , ma odpowiedni wpis w sekcji DestinationDirs tego samego INF, ten wpis jawnie określa docelowy katalog docelowy, z którego zostaną usunięte wszystkie pliki wymienione w nazwanej sekcji. Jeśli nazwana sekcja nie znajduje się na liście w sekcji DestinationDirs, Windows używa wpisu DefaultDestDir w inf.
Examples
W tym przykładzie pokazano, jak sekcja DestinationDirs określa ścieżkę operacji usuwania pliku, która występuje podczas przetwarzania prostego sterownika urządzenia INF.
[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
; ...