Onde o Visual Studio procura por arquivos de header C ++?

Eu verifiquei uma cópia de um aplicativo C ++ do SourceForge (HoboCopy, se você está curioso) e tentei compilá-lo.

Visual Studio me diz que não é possível encontrar um arquivo de header específico. Eu encontrei o arquivo na tree de fonts, mas onde eu preciso colocá-lo, para que ele seja encontrado ao compilar?

Existem diretórios especiais?

    O Visual Studio procura headers nesta ordem:

    • No diretório de origem atual.
    • Nos Diretórios de Inclusão Adicionais nas propriedades do projeto (em C ++ | Geral).
    • Nos diretórios Visual Studio C ++ Include, em FerramentasOpçõesProjetos e SoluçõesDiretórios do VC ++ .

    No seu caso, adicione o diretório no qual o header está nas propriedades do projeto.

    Se o projeto veio com um arquivo de projeto do Visual Studio, isso já deve estar configurado para encontrar os headers para você. Caso contrário, você precisará adicionar o diretório do arquivo de inclusão às configurações do projeto clicando com o botão direito do mouse no projeto e selecionando Propriedades, clicando em “C / C ++” e adicionando o diretório que contém os arquivos de inclusão ao “Diretórios de Inclusão Adicionais”. checkbox de edição.

    Tentei adicionar isso como um comentário à postagem de Rob Prouse , mas a falta de formatação tornou ininteligível.

    No Visual Studio 2010, a checkbox de diálogo “Ferramentas | Opções | Projetos e soluções | Diretórios VC ++”] informa que “A edição de diretórios VC ++ em Ferramentas> Opções foi descontinuada”, propondo que você use o Gerenciador de propriedades bastante contraintuitivo.

    Se você realmente quer atualizar o padrão $ (IncludePath), você tem que hackear a input apropriada em um dos arquivos XML:

    \ Arquivos de programas (x86) \ MSBuild \ Microsoft.Cpp \ v4.0 \ Plataformas \ Win32 \ PlatformToolsets \ v100 \ Microsoft.Cpp.Win32.v100.props

    ou

    \ Arquivos de programas (x86) \ MSBuild \ Microsoft.Cpp \ v4.0 \ plataformas \ x64 \ PlatformToolsets \ v100 \ Microsoft.Cpp.X64.v100.props

    (Provavelmente não é recomendado pela Microsoft.)

    Parece haver um bug na comunidade do Visual Studio 2015. Para um projeto de 64 bits, a pasta de inclusão não é encontrada, a menos que esteja na configuração do bit do win32. Lista Incluir Pastas Adicionais .

    Existe uma nova pergunta sobre o que está atingindo melhor o problema Perguntando Como os caminhos de inclusão funcionam no Visual Studio?

    Não está sendo revelado o caminho para fazê-lo nas versões mais recentes do VisualStudio

    • no projeto atual apenas (como a questão é definida aqui também), bem como
    • para cada novo projeto como padrão

    O segundo é o que a resposta de Steve Wilkinson explica acima, o que é, como ele mesmo imaginava, não o que a Microsoft recomendaria.

    Para dizê-lo aqui: faça isso, mas faça isso no User-Directory em

    C: \ Usuários \ Nome do Usuário \ AppData \ Local \ Microsoft \ MSBuild \ v4.0

    no arquivo XML

    Microsoft.Cpp.Win32.user.props

    e / ou

    Microsoft.Cpp.x64.user.props

    e não no diretório C: \ arquivos de programas -, onde o arquivo de fábrica não modificado da Microsoft deve residir.

    Então você faz do jeito que o VisualStudio também está fazendo e tudo é regular.

    Para mais informações, por que fazê-lo da mesma forma, veja minha resposta lá .