Sto utilizzando Visual Studio 2012 per una soluzione con un C# e un .dll C++/CLI, con la dll C++/CLI che fa riferimento a dll nativi come boost. Il codice C++ è compilato come x64.VS2012 Test explorer blocca nativo .dll, rendendo impossibile la ricostruzione
Quando apro VS, posso pulire e creare il mio progetto.
Utilizzando test explorer, posso eseguire i miei test.
Non appena ho usato test explorer per eseguire i test una volta, non riesco a ricostruire il progetto. Sembra che VS2012 test Explorer mantiene un blocco sul mio C++/CLI-dll, e lì ho il seguente errore:
LNK1104: cannot open file 'C:\Dev\LockExample\bin\Debug\cli.dll'
Come conseguenza di questo, ogni volta che ho eseguito i test con il test Explorer, ho bisogno per riavviare VS2012 prima di poter continuare a sviluppare. Ovviamente questo non è un processo di sviluppo sostenibile.
Test e ricostruzione funziona senza problemi con C# -due DLL - per quanto posso dire il problema si verifica solo con DLL che utilizzano il codice x64 nativo.
Dopo alcuni test, ho scoperto che il cattivo qui è vstest.executionengine.exe. Usando handle (da SysInternals), vedo che vstest.executionengine.exe contiene blocchi per .dll e .pdb del cli-dll. Non contiene alcun blocco per le DLL solo gestite.
Come posso ottenere Visual Studio Test Explorer per rilasciare i blocchi sulle DLL C++/Cli dopo il completamento delle esecuzioni di test?
Trovato lo stesso problema in VS 2017 con DLL non gestita referenziata. –