我正在尝试创建一个脚本,该脚本将输出DLL的完全限定名称列表。在输出我想要的数据时,我目前使用的脚本工作正常。
问题是这会锁定文件。因此,如果我想删除我在会话中加载的其中一个文件,我会收到以下消息:
由于该文件在Windows PowerShell中处于打开状态,因此无法完成操作。
如果要让PowerShell释放文件上的锁,我该怎么办?
我通常在Visual Studio Code中从内部控制台运行PowerShell脚本,但是当我直接从PowerShell运行它时,问题也存在。
Enter-PSSession -ComputerName $env:computername
Get-ChildItem -Path $input -Filter '*.dll' | ForEach-Object {
$assembly = [System.Reflection.Assembly]::LoadFrom($_.FullName)
Write-Host $assembly.FullName
}
Exit-PSSession
答案 0 :(得分:2)
您可以使用内存中的程序集:
switch