Я бы предложил вызвать функцию, чтобы добавить сборку в GAC, следуя рекомендациям PowerShell, таким как Add-GacItem. Кроме того, местоположение gacutil.exe зависит от вашей системы. Если у вас установлена VS 2008, она должна находиться в указанном ниже месте.
function Add-GacItem([string]$path) {
Begin {
$gacutil="$env:ProgramFiles\Microsoft SDKs\Windows\v6.0A\bin\gacutil.exe"
function AddGacItemImpl([string]$path) {
"& $gacutil /nologo /i $path"
}
}
Process {
if ($_) { AddGacItemImpl $_ }
}
End {
if ($path) { AddGacItemImpl $path }
}
}
Get-Content .\dlls.txt | Split-String | Add-GacItem
Обратите внимание, что командлет Split-String имеет значение Pscx . Функция не является сверхнадежной (никакая поддержка подстановочных знаков не проверяет странные типы, такие как DateTime), но, по крайней мере, она может обрабатывать регулярные вызовы и вызовы конвейера.