Quelle est la différence entre PATH_NOT_FOUND et NAME_NOT_FOUND

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.