visual-studio - online - visual studio para que serve




Como adiciono uma árvore de diretórios existente a um projeto no Visual Studio? (8)

Eu acho que eu encontrei uma maneira de fazer isso com o Compile Include = ". \ Code ***. Cs" O que eu queria é incluir o código recursivamente na minha pasta de código.

Aqui está a amostra do arquivo de projeto.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="15.0" DefaultTargets="BuildTarget">
    <PropertyGroup>
        <OutputType>Library</OutputType>
    </PropertyGroup>
    <PropertyGroup>
        <StartupObject />
    </PropertyGroup>
    <PropertyGroup>
        <RootNamespace>Autogen</RootNamespace>
    </PropertyGroup>
    <ItemGroup>
        <Compile Remove="@(Compile)" />
        <Compile Include=".\Code\**\*.cs" />
    </ItemGroup>
    <Target Name="BuildTarget">
        <Message Text="Build selected" Importance="high"/>
    </Target>
</Project>

A questão é realmente simples. Em vez de criar pastas no Visual Studio, eu crio uma estrutura de diretório para o meu projeto no sistema de arquivos. Como faço para incluir todas as pastas e arquivos em um projeto, mantendo a estrutura?

Se eu "Adicionar arquivo existente" em uma pasta chamada Serviços e navegar para um arquivo na estrutura de diretórios. Serviços> AccountManagement> CreateAccount.cs, ele aparece no Visual Studio da seguinte forma: Services> CreateAccount.cs. Eu não quero isso.

Eu já tenho uma estrutura de diretórios completa, já que estou imitando nossos desenvolvedores clientes usando a mesma estrutura para organização. Como adiciono todas as pastas e arquivos ao projeto no Visual Studio? Ou eu tenho que fazer o que a maioria dos usuários da Microsoft faz e "aguentar" e recriar cada pasta através do Visual Studio?


Eu não encontrei resposta para minha satisfação, então eu me descobri.

Aqui está a resposta para você se você quiser adicionar códigos-fonte externos ao seu projeto e não quiser copiar os códigos inteiros. Eu tenho muitas dependências em outros gits e eles são atualizados a cada hora, se não minutely. Eu não posso copiar a cada hora para sincronizar. Aqui está o que você precisa fazer.

Suponha que isso seja estrutura:

/ root / projA / src

/ root / projA / includes

/ root / projB / src

/ root / projB / inclui

/ root / yourProj / src

/ root / yourProj / inclui

  1. Comece sua solução VS.
  2. Clique com o botão direito do mouse no nome do projeto logo abaixo da Solução.
  3. Em seguida, clique no botão "Add", "New Filter", coloque o nome "projA" para projA.
  4. Clique com o botão direito no "projA", clique em "Add", "New Filter", digite o nome "src"
  5. Clique com o botão direito no "projA", clique em "Add", "New Filter", digite o nome "includes"
  6. Clique com o botão direito do mouse em "projA" / "src", clique em "Adicionar", "Item existente" e navegue até o / root / projA / src para adicionar todos os códigos-fonte ou um por um para os que você deseja.
  7. Faça o mesmo para "projA" / "includes"
  8. Faça o mesmo para projB. Agora os projetos externos / existentes fora do seu estão presentes em sua solução / projeto. O VS irá compilá-los juntos. Aqui está um truque. Como o projA e o projB são pastas virtuais em seu projeto, o compilador pode não encontrar o projA / includes.

  9. Se não encontrar o projA / includes, clique com o botão direito do mouse no projeto e selecione "Propriedades".

  10. Navegue para "C / C ++". Edite "Additional Include Directories", adicione seu projA / include como "../projA/includes", caminho relativo.

Uma ressalva, se houver arquivos de inclusão / cabeçalho duplicados, a "exclusão do projeto" no "arquivo de cabeçalho" realmente não funciona. É um bug no VS.


No Visual Studio 2015, é assim que você faz isso.

Se você quisesse incluir automaticamente todos os arquivos descendentes abaixo de uma pasta específica:

<Content Include="Path\To\Folder\**" />

Isso pode ser restrito para incluir apenas arquivos no caminho especificado:

<Content Include="Path\To\Folder\*.*" />

Ou até mesmo apenas arquivos com uma extensão especificada:

<Content Include="Path\To\Folder\*.jpg" >

Referência: http://jamesrpatterson.com/blog/automatic-include-in-project-for-visual-studio


No Visual Studio 2017, você alterna entre o Solution View e o Folder View para frente e para trás. Eu acho que esta é uma opção melhor, porque vai manter a solução mais limpa. Eu uso isso para editar .gitignore, arquivos .md, etc.


Tanto quanto eu posso dizer, a única maneira de fazer isso no VS2010 é semelhante ao método de arrastar e soltar. Clique com o botão direito na solução à qual você deseja adicionar um projeto. O menu do aplicativo terá um item add .... Abrindo isso, você descobre que uma das opções é adicionar um projeto existente à solução.

Na caixa de diálogo aberta, navegue até a pasta que contém o arquivo de projeto da solução e selecione-a. VS, como parte da importação desse arquivo de projeto, também importa o diretório inteiro e, eu assumo quaisquer diretórios subordinados que façam parte desse projeto.

Como isso requer um arquivo de projeto existente, não será impossível importar uma árvore de diretórios até que essa árvore tenha sido convertida em um projeto.


Você pode usar um link simbólico. Isso faz com que a modificação do arquivo em um projeto o modifique no outro (como na verdade é o mesmo arquivo).

Para fazer isso:

  1. Abra o prompt do cmd como administrador
  2. mklink / d [nome do diretório do projeto atual] [diretório em outro projeto deve apontar para]

Isso tem suas desvantagens e armadilhas, mas eu uso isso ocasionalmente para bibliotecas duplicadas que precisam de nomes diferentes.

Editar para Anoop: passos para adicionar ao Visual Studio:

  1. Crie um link na pasta do projeto usando as etapas acima.
  2. No Visual Studio ... selecione o projeto no Solution Explorer.
  3. Na parte superior do Solution Explorer ... clique no botão Show All Files (pode ser necessário clicar duas vezes, se já estiver ativo).
  4. O link agora será exibido em seu projeto ... clique com o botão direito do mouse e escolha Incluir no projeto.

Estes são os passos que sigo e funciona para alguns projetos diferentes.


Você também pode arrastar e soltar a pasta do Windows Explorer para a janela de solução do Visual Studio.


Copie e cole .

Para adicionar uma pasta, todos os subdiretórios e arquivos, também podemos copiar e colar. Por exemplo, podemos:

  1. Clique com o botão direito do mouse no Windows Explorer na pasta e em Copiar na pasta com muitos arquivos e pastas.

  2. Em seguida, no Visual Studio Solution Explorer, clique com o botão direito do mouse na pasta de destino e clique em colar.

  3. Opcional adicionar ao TFS; Em seguida, na pasta superior, clique com o botão direito do mouse e faça check-in no TFS para verificar todas as subpastas e arquivos.







visual-studio