Frage Wie kann ich eine Liste aller offenen Named Pipes in Windows erhalten?


Gibt es eine einfache Möglichkeit zu testen, ob Ihre Named Pipe ordnungsgemäß funktioniert? Ich möchte sicherstellen, dass die Daten, die ich aus meiner App sende, tatsächlich gesendet werden. Gibt es eine schnelle und einfache Möglichkeit, eine Liste aller Named Pipes zu erhalten?


75
2017-11-03 14:04


Ursprung


Antworten:


Sie können diese mit anzeigen Process Explorer von sysinternals. Verwenden Sie die Option "Find -> Find Handle oder DLL ..." und geben Sie das Muster "\ Device \ NamedPipe \" ein. Es zeigt Ihnen, welche Prozesse welche Pipes geöffnet haben.


79
2017-11-03 14:39



Versuchen Sie stattdessen Folgendes:

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

55
2017-11-23 02:13



Geben Sie in der Windows Powershell-Konsole ein

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


Wenn Ihre Betriebssystemversion größer als Windows 7 ist, können Sie auch eingeben

get-childitem \\.\pipe\

47
2017-08-22 04:44



Benutzen pipeliste.exe von Sysinternals.


39
2017-09-16 22:19



C #:

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

16
2017-11-17 22:31



Die zweite Pipe wurde von dieser Website beim Übermitteln interpretiert ... Sie benötigen zu Beginn zwei Backslashes. Stellen Sie also sicher, dass System.IO.Directory.GetFiles (@ "\\. \ Pipe \") verwendet wird.

Beachten Sie, dass dieser Funktionsaufruf einen 'unzulässigen Zeichen im Pfad' angezeigt hat. Ausnahme, wenn eine der Pipes auf meinem Rechner ungültige Zeichen hatte. PipleList.exe funktionierte jedoch in Ordnung, so dass es wie ein Fehler in MS.NET-Code scheint.


7
2018-01-03 22:30



Ich bin über eine Funktion in Chrome gestolpert, die alle geöffneten Named Pipes aufführt, indem ich zu "file: //.//pipe//" navigiere.

Da ich keinen Hinweis darauf finden kann und es mir sehr geholfen hat, dachte ich, ich könnte es teilen.


7
2018-01-05 14:44