我需要一个命名管道。这个管道可能早先已由同一个PowerShell-Script定义,我可以通过以下方式找到它:
$pipeName = "testpipe"
$delPipe = [System.IO.Directory]::GetFiles("\\.\pipe\") | where { $_ -match $pipeName }
简单
Remove-Item $delPipe
失败:(
删除/取消此管道需要做什么?
我可以通过以下方式找出“锁定什么”的管道Lockhunter?
提前致谢,
Gooly
PS为别人给他们一个主意 我找到了一个解决方案,以便选择一个自由管道,时间将删除以前使用过的管道:
$BaseName = "testpipe"
$n = 0;
do {
$n++
$pipeName = "$BaseName$n"
$usedPipe = [System.IO.Directory]::GetFiles("\\.\pipe\") | where { $_ -match $pipeName }
} while ( $usedPipe.Length -gt 5 )
答案 0 :(得分:2)
用户代码不会删除命名管道。根据{{3}}:
当最后一个句柄到时,总是删除命名管道的实例 命名管道的实例已关闭。
来自C#方面的documentation也是如此,因为Powershell也利用了.Net。