Dans la couche Win32, nous rencontrons souvent ERROR_PATH_NOT_FOUND
, ERROR_NAME_NOT_FOUND
.
Quand WinAPI(eg CreateFileW, RemoveDirectoryW)
renvoie-t-il ces valeurs? Et quelle est la différence?
Si j’écris un pilote de système de fichiers, quand dois-je définir STATUS_OBJECT_PATH_NOT_FOUND
ou STATUS_OBJECT_NAME_NOT_FOUND
?
Comment déterminez-vous?
Je suis si confus. Y a-t-il quelqu’un qui peut expliquer clairement?
Ou existe-t-il des documents expliquant cela? Je n’ai pas pu les trouver.
Merci d’avance.
ERROR_NAME_NOT_FOUND
n’est pas un code d’erreur standard de l’API Win32. ERROR_FILE_NOT_FOUND
et ERROR_PATH_NOT_FOUND
sont les erreurs typiques renvoyées par les API associées aux fichiers. La meilleure façon de déterminer quel code d’erreur renvoyer consiste à utiliser un exemple WDK comme guide. Le fichier de code source create.c
l’exemple create.c
par exemple. Il renvoie STATUS_OBJECT_PATH_NOT_FOUND
s’il ne peut pas localiser un répertoire, STATUS_OBJECT_NAME_NOT_FOUND
s’il ne peut pas localiser un fichier.