Visual Studio:通过Power Console添加项目文件失败

时间:2013-09-08 16:34:07

标签: visual-studio-2010 powershell

我有一项任务是在一个解决方案中添加384个现有项目,以便将二进制文件依赖项替换为项目依赖项并使用msbuild构建。为此,我尝试使用Visual Studio API自动将项目添加到解决方案中。

我实际上是Windows Power Shell的新手,我正在使用Visual Studio的Power Console插件,使用$ DTE.Solution.AddFromFile({{}在当前打开的解决方案中添加项目(* .csproj,* .vcxproj)文件3}}),但它似乎不起作用。这是错误输出:

PS> $DTE.Solution.AddFromFile('WpfApplication1.csproj')
Exception calling "AddFromFile" with "2" argument(s): "The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALID
ARG))"
At line:1 char:26
+ $DTE.Solution.AddFromFile <<<< ('WpfApplication1.csproj')
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException

任何人都有通过Power Console使用Visual Studio API方法的任何提示吗?

法鲁克

2 个答案:

答案 0 :(得分:1)

您需要使用项目文件的完整路径。像这样:

PS> $DTE.Solution.AddFromFile('C:\Users\sv\Documents\Visual Studio 2010\Projects\ConsoleApplication1\ConsoleApplication2\ConsoleApplication2.csproj')

答案 1 :(得分:0)

虽然@Sergey Vlasov解决了这个问题,但我也发现了这种方法:

$DTE.ExecuteCommand("File.AddExistingProject",'C:\Users\sv\Documents\Visual Studio 2010\Projects\ConsoleApplication1\ConsoleApplication2\ConsoleApplication2.csproj‌​')

也就是说,在将文件路径作为参数传递时调用“添加现有对话框”,这也是类似的。