2012-11-13 255 views
0

所有的項目是去了解這個問題的方法,但包管理器控制檯似乎只想回到文本,如果我開始一個符合{卸載溶液

所以這裏是我想要得到它的運行腳本:

{ $dte.Windows.Item("{3AE79031-E1BC-11D0-8F78-00A0C9110057}").Activate() 
$dte.Solution | ForEach-Object { $dte.ActiveWindow.Object.GetItem($_.name).Select(1) 
$dte.ExecuteCommand("Project.UnloadProject")} 
} 

但是當裹成{代碼}它只是返回文本作爲一個命令塊

如何使用powershell卸載整個解決方案和解決方案文件夾中的所有項目?我不太擅長PowerShell,但肯定有辦法做到這一點。

+1

您必須在腳本調用之前將調用操作「&」調用:&{code} – dugas

回答

1

如何:

$dte.ExecuteCommand("ProjectandSolutionContextMenus.Solution.UnloadProjects") 
$dte.ExecuteCommand("ProjectandSolutionContextMenus.Solution.ReloadProjects") 

,沒有工作。您可能希望事先致電$dte.ExecuteCommand("File.SaveAll")

這是回答您的問題嗎?

+2

使用「1」參數調用「ExecuteCommand」的異常:「Command」ProjectandSolutionContextMenus.Solution.UnloadProjects「無效「。 在行:1字符:20 + $ dte.ExecuteCommand <<<<( 「ProjectandSolutionContextMenus.Solution.UnloadProjects」) + CategoryInfo:NotSpecified:(:) [],MethodInvocationException + FullyQualifiedErrorId:ComMethodTargetInvocation – Maslow