6

I progetti di Visual Studio presuppongono che tutti i file appartenenti al progetto si trovino nella stessa directory del file di progetto o al di sotto di esso.Memorizzazione di file di origine all'esterno della directory del file di progetto in Visual Studio C++ 2009

Per un progetto particolare (nel senso non Visual Studio) questo non è quello che voglio. Voglio memorizzare i file specifici di MSVC in un'altra cartella, perché ci potrebbero essere altri modi per creare l'applicazione, ad esempio con SCons. Inoltre tutto il materiale MSVC elimina i clutter dalla directory dei sorgenti.

Esempio:

/source 
/scons 
/msvc <- here is where I want my MSVC-specific stuff 

posso aggiungere i file, in Esplora risorse, alla directory source manualmente, e poi collegarli in Visual Studio con il progetto. Non è la fine del mondo, ma mi dà un po 'fastidio che Visual Studio cerchi di dettare la struttura delle cartelle del mio progetto.

Guardavo attraverso lo schemas per i file di progetto ma mi sono reso conto che questa noiosa ipotesi è nell'IDE e non nel formato dei file di progetto.

Qualcuno conosce un modo più ordinato per risolvere questo problema rispetto al collegamento manuale dei file al progetto dalla directory source?

+1

Cosa intendi per "collegamento dei file al progetto"? Se hai file in cartelle diverse, "Aggiungi file esistenti ..." non funziona? – GManNickG

+0

@GMan, sì, sì. Mi chiedo solo se c'è un modo più ordinato per farlo, quindi non dovrò fare "Aggiungere file esistenti" tutto il tempo ma più o meno dire al progetto che i miei file sono in una certa directory. – Skurmedel

+0

Ok, capisco. Sono un po 'sulla stessa barca ma ho appena imparato ad aggiungerli a mano comunque, non penso che ci sia un modo per dirgli di guardare una cartella. Mi piacerebbe se ci fossero, però. – GManNickG

risposta

3

io uso questo a volte, abbastanza sicuro che è quello che si vuole:

  • assicurarsi che l'opzione Show All Files è attiva sul proprio Esplora soluzioni.
  • creare un collegamento simbolico che indirizzi la directory di origine e posizionare il collegamento allo stesso livello del progetto, o anche inferiore se si desidera un controllo più preciso. Il comando è mklink /j target source

Per la struttura di progetto di esempio si mostra, che ci si esegue mklink /msvc/source /source e nel progetto della directory di origine verrà visualizzato come se fosse nella directory del progetto (beh, in realtà lo è). Bonus aggiuntivo: l'aggiunta di nuovi elementi tramite VS li inserisce automaticamente nella directory corretta.

+0

Grazie per questa idea. Lo proverò quando torno a casa. – Skurmedel

3

È possibile aggiungere file con i collegamenti di questo tipo, che sono ricercabili, vista-in grado, ma non checkout se si tenta di cambiarle, anche Visual Studio lascia i caratteri jolly in atto:

<ItemGroup> 
    <Content Include="..\Database Schema\Views\*.sql"> 
     <Link>Views\*.sql</Link> 
    </Content> 
    </ItemGroup> 

Questo entra nel file .proj.

Problemi correlati