visual-studio - studio官网 - visual studio是什么




如何在Visual Studio中“添加现有项目”整个目录结构? (10)

令人讨厌的是,Visual Studio本身不支持这一点,但CMake可以生成Visual Studio项目作为解决方案。

除此之外,只需使用QT Creator。 它可以导出一个VS项目。

我对此感到荒谬,因为它似乎应该是如此简单,但我一直无法找到这个问题的答案。

我拥有一组独立于任何C#项目的文件,它们驻留在复杂的嵌套目录结构中。 我想将它们以这种格式添加到我正在处理的ASP.NET Web应用程序中的不同目录中; 同时保持相同的结构。 所以,我将文件夹复制到我的项目的目标位置,并试图“添加现有项目”,仅丢失以前的文件夹层次结构。 通常我手动重新创建目录,一对一复制,然后添加现有项目。 在这种情况下,目录/项目太多了。

那么如何在Visual Studio 2008中添加现有的目录和文件呢?


在Windows 7中,您可以执行以下操作:

右键点击你的项目,然后选择“Add-> Existing Item”。 在出现的对话框中,浏览到要添加的目录的根目录。 在右上角有一个搜索框。 输入*.cs*.cpp ,无论您想要添加的文件类型如何。 搜索结束后,选择所有文件,单击添加并等待一段时间...


对我有用的是将文件夹拖入VS,然后右键单击该文件夹并选择“在文件资源管理器中打开文件夹”。 然后选择全部并将它们拖到VS中的文件夹中。


将文件/文件夹从Windows资源管理器拖到解决方案资源管理器。 它会将它们全部添加。 请注意,如果Visual Studio处于管理员模式,则这不起作用,因为Windows资源管理器是用户模式进程。


我发现最干净的方法是在目标文件夹中创建一个新的类库项目,并将其所有构建输出重定向到其他地方。 它仍然会在该文件夹中留下一个.csproj文件,但它确实可以让您在Visual Studio中看到它,并选取要包含在项目中的文件。


我发现的一个巧妙的技巧是,如果你去“添加现有...”,你可以将文件夹从打开的对话框拖到你的解决方案。 我有我的VS在管理模式下自动打开,所以这对我来说是一个很好的解决方法,因为我不想为了实现这个目的而不得不撤消这个工作。


我没有立即明白这些基于这些描述,但这是我最终偶然发现的:

  1. 打开“显示所有文件” - 解决方案资源管理器工具栏上有一个图标
  2. 使用Windows资源管理器(不是解决方案资源管理器),将文件移动到您希望它们驻留的目录结构中
  3. 点击解决方案资源管理器工具栏上的“刷新”
  4. 您移动的文件应该在放置它们的解决方案资源管理器树形结构中显示为“幻影”
  5. 右键单击您的幻影文件或文件夹,然后单击“包含在项目中”。 包含文件夹的所有内容


这有点晚了,但您可以更改您的项目XML以将现有的子文件夹和结构自动添加到您的项目中,如NPM中的“node_modules”:

这适用于较老的MSBuild / Visual Studio版本

<ItemGroup>
   <Item Include="$([System.IO.Directory]::GetFiles(&quot;$(MSBuildProjectDirectory)\node_modules&quot;,&quot;*&quot;,SearchOption.AllDirectories))"></Item>
</ItemGroup>

对于当前的MSBuild / Visual Studio版本:

只需将它放在xml的节点中即可:

<Project> 
</Project>

在这种情况下,只需将$(MSBuildProjectDirectory)\ node_modules更改为您的文件夹名称即可


除了答案。 下面是' 显示所有文件 '的图标,仅供参考。





ide