2

我正在尝试加载存在于 C:\Windows\assembly\ 并称为 Microsoft.VisualStudio.TextTemplating(版本 9.0.0.0)的程序集

这是我正在使用的 PowerShell 2.0 中的命令

$inputfile = 'Hello.tt'
[Reflection.Assembly]::LoadWithPartialName("Microsoft.VisualStudio.TextTemplating") | 
   Out-Null

$server = New-Object ("Microsoft.VisualStudio.TextTemplating") $inputfile

我得到的错误是 default.ps1:Cannot find type [Microsoft.VisualStudio.TextTemplating] 确保加载了包含该类型的程序集。

编辑:我使用相同的方法加载其他 Microsoft 程序集,如 Smo,这些程序集也注册在缓存中,所以我想知道这个程序集是否还有其他问题

提前致谢

4

1 回答 1

3

这里的问题似乎不是程序集负载。我验证了该LoadWithPartialName方法确实加载了有问题的程序集。

问题是您的New-Object调用传递的是命名空间而不是类型。您需要在命名空间内传递一个类型名称Microsoft.VisualStudio.TextTemplating

于 2012-04-17T14:07:56.917 回答