Pregunta ¿Cómo puedo obtener una lista de todas las canalizaciones con nombre abierto en Windows?


¿Hay alguna manera fácil de probar si su tubería con nombre funciona correctamente? Quiero asegurarme de que los datos que estoy enviando desde mi aplicación se estén enviando realmente. ¿Existe una manera rápida y fácil de obtener una lista de todas las tuberías nombradas?


75
2017-11-03 14:04


origen


Respuestas:


Puedes verlos con Process Explorer de sysinternals. Use la opción "Buscar -> Buscar identificador o DLL ..." e ingrese el patrón "\ Dispositivo \ PirámideNamed". Le mostrará qué procesos tienen qué tubos abiertos.


79
2017-11-03 14:39



Pruebe lo siguiente en su lugar:

String[] listOfPipes = System.IO.Directory.GetFiles(@"\\.\pipe\");

55
2017-11-23 02:13



En la consola de Windows Powershell, escriba

[System.IO.Directory]::GetFiles("\\.\\pipe\\")


Si su versión del sistema operativo es mayor que Windows 7, también puede escribir

get-childitem \\.\pipe\

47
2017-08-22 04:44



Utilizar pipelist.exe de Sysinternals.


39
2017-09-16 22:19



DO#:

String[] listOfPipes = System.IO.Directory.GetFiles(@"\\.\pipe\");

16
2017-11-17 22:31



El segundo tubo fue interpretado por este sitio web cuando se envió ... Necesitas dos barras diagonales inversas al principio. Así que asegúrese de usar System.IO.Directory.GetFiles (@ "\\. \ Pipe \").

Tenga en cuenta que he visto esta función llamada lanzar un 'caracteres ilegales en la ruta'. excepción cuando una de las tuberías en mi máquina tenía caracteres no válidos. PipleList.exe funcionó bien, por lo que parece un error en el código .net de MS.


7
2018-01-03 22:30



Me encontré con una función en Chrome que enumerará todas las canalizaciones con nombre abiertas, navegando a "file: //.//pipe//"

Como no puedo encontrar ninguna referencia a esto y me ha sido muy útil, pensé que podría compartirlo.


7
2018-01-05 14:44