Powershell和PMC $ dte.ActiveWindow.Object.GetItem错误

时间:2015-09-14 08:41:32

标签: c# powershell envdte

我正在尝试编写一个powershell脚本来重新加载一个项目(已经通过C#app添加了文件和文件夹(试图通过C#尝试但是失败了,请参阅here)。我的最终目标是能够调用C#应用程序然后重新加载项目(卸载和重新加载)以刷新项目并避免用户必须手动说重新加载项目。

$project = Get-Project

write-host("starting NHMigrate on project: " + $project.Name)
$project.FullName
$project.UniqueName

$shortpath = $dte.Solution.Properties.Item("Name").Value + "\" +     $project.Name
$dte.Windows.Item("{3AE79031-E1BC-11D0-8F78-00A0C9110057}").Activate() 
$dte.ActiveWindow.Object
$dte.ActiveWindow.Object.GetItem($project.UniqueName)

我遇到的问题是我google的所有内容都说使用GetItem来选择能够调用execute_command的项目,但是我得到了异常

Exception calling "GetItem" with "1" argument(s): "Value does not fall within the expected range."
At E:\Work\nhibernateRepo\NHibernateRepository\NHMigrate\test.ps1:12 char:1
+ $dte.ActiveWindow.Object.GetItem($project.UniqueName)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ArgumentException

我无法找到解决这个问题的原因。每个人似乎都在用一个参数调用get Item。我也找不到涵盖这种方法的文档。

修改

这是关于我想要实现的目标的说明。使用PowerShell刷新项目有效,但它不会停止或删除检测到的文件修改"最终我想做的对话。

0 个答案:

没有答案