与Powershell V2的空的回收站

问题描述 投票:2回答:2

有没有办法使用Powershell 2.0清空回收站。

我不想更新Powershell。

powershell powershell-v2.0 recycle-bin
2个回答
2
投票

您可以通过com对象清除回收站。像这样:

$Shell= New-Object -ComObject Shell.Application 
$Bin = $Shell.NameSpace(10)
foreach ($Item in @($Bin.Items())){Remove-item $Item.Path -Force}

1
投票

你也可以直接调用SHEmptyRecycleBin Win32函数:

$definition = @'
[DllImport("Shell32.dll", CharSet = CharSet.Unicode)]
public static extern uint SHEmptyRecycleBin(IntPtr hwnd, string pszRootPath, uint dwFlags);
'@
$winApi = Add-Type -MemberDefinition $definition -Name WinAPI -Namespace Extern -PassThru
$winApi::SHEmptyRecycleBin(0, $null, 7)

所有回收箱都被删除,没有显示确认信息,没有进度条,没有声音。

© www.soinside.com 2019 - 2024. All rights reserved.