¿Cómo puedo enumerar todos los archivos en \GLOBAL??\

Tengo un montón de archivos de dispositivo a los que se puede acceder usando \\.\name_of_file como argumento para CreateFile.

Puedo usar WinObj para ver la lista de estos archivos, pero lo que me gustaría hacer es iterarlos mediante programación. Muchas búsquedas en Google parecen implicar que puedo usar el Administrador de objetos o el espacio de nombres NT, pero no puedo encontrar una API para ninguno de estos, ni la fuente para que WinObj pueda rastrear...

¿Alguien puede iluminarme por favor?

preguntado el 22 de mayo de 12 a las 16:05

No sé si quiere decir exactamente esto, pero la función NtQuerySymbolicLinkObject / ZwQuerySymbolicLinkObject se usa para enumerar todos los enlaces simbólicos. -

Puede explorar algunos espacios de nombres con el for mando. Prueba esto en la línea de comando for %i in (\\.\Mailslot\*) do @echo %i -

@ ixe013: el enfoque 'para' no parece funcionar para mis archivos :( -

2 Respuestas

Serpenteando a través del administrador de objetos podría ser lo que estás buscando. Osronline es genial

contestado el 22 de mayo de 12 a las 16:05

Gracias, esa fue una de las páginas que encontré en mi búsqueda inicial, pero no cubre ninguna de las llamadas API que necesitaría para crear una herramienta como WinObj: martin thompson

Las API para hacer esto están documentadas. pero no se garantiza que funcionen en futuras versiones de Windows. Con eso en mente, mira lo siguiente: NtOpenDirectoryObjectNtOpenDirectoryObject , NtQueryDirectoryObjectNtQueryDirectoryObject

contestado el 23 de mayo de 12 a las 22:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.