Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: mmob en 19 Noviembre 2007, 12:55 pm



Título: Ficheros que mis procesos abren en otras maquinas
Publicado por: mmob en 19 Noviembre 2007, 12:55 pm
Hola, alguien conoce algun comando o metodo para poder listar los ficheros alojados en otras maquinas que mis procesos tienen abiertos?
Actualmente estoy utilizando handle (http://www.microsoft.com/technet/sysinternals/utilities/handle.mspx). Capturo su salida y obtengo los archivos abiertos por mis procesos, pero solo me da aquellos que s e encuentran en mi maquina. Para colmo de males me he dado cuenta que tampoco los lista todos, por ejemplo, si abro un txt con el notepad tampoco lo lista.
Sabeis como lo hace el File Monitor? porque esta aplicación obtiene toda esta información
Gracias por vuestra ayuda y por vuestro tiempo.


Título: Re: Ficheros que mis procesos abren en otras maquinas
Publicado por: mmob en 19 Noviembre 2007, 17:20 pm
Bueno, ya he averiguado que el motivo por el que comandos como Handle no detectan la apertura de determinados archivos es porque algunas aplicaciones como el notepad abren el fichero, lo leen y lo cierran.
Necesito que mi aplicacion detecte archivos que han sido abiertos y que proceso los ha abierto, tanto si estos archivos estan alojados en mi maquina como si lo estan en otras.
He leido que la funcion NetFileEnum te permite enumerar los ficheros abiertos en el servidor que le indiques, pero, además de que no he conseguido que me funcione, he leido que tiene el mismo problema que handle con lo del notepad.
Sigo pensando que la estrategia para detectar la apertura de archivos tendrá que ser similar a la que utiliza File Monitor, sabeis como lo hace? si teneis cualquier otra idea os la agradezco.
Saludos.