2010-08-06 12 views
8

W Visual Studio 2010 mamy w ramach "narzędzia | opcje | projekty i rozwiązania | tworzenie i uruchamianie" (nie można znaleźć poprawnego obrazu w Internecie) dwie opcje do pozyskiwania MSBuild:VS2010: minimalna kompilacja danych wyjściowych dziennika i szczegółowy plik dziennika logowania

'projekt MSBuild zbudować wyświetlamy gadatliwość' oraz 'projekt MSBuild zbudować Rej gadatliwość'.

Więc miałem nadzieję być w stanie uzyskać minimalny dziennik budować w widoku wyjściowego poziomu Visual Studio devenv (prawidłowy), podczas gdy w tym samym czasie szczegółowy dziennik budować w jakimś pliku dziennika.

Nie mogę znaleźć sposobu na skonfigurowanie pliku dziennika kompilacji do wyświetlenia.

Uwaga: Nie chcę konfigurować własnego MSBuild.

Odpowiedz

15

plik dziennika z Visual Studio jest obsługiwana tylko dla C++ projektów. Musisz tylko pracować z oknem wyjściowym dla innych.

+6

To powinno być dużo bardziej oczywiste. – WaffleSouffle

10

http://msdn.microsoft.com/en-us/library/b0bktkzs.aspx mówi:

zbadać dziennik budować w pośredniej katalogu plików, aby zobaczyć co faktycznie wykonywane. Ścieżka i nazwa dziennika kompilacji jest reprezentowana przez makro wyrażenie MSBuild, $ (IntDir) \ $ (MSBuildProjectName) .log.

[A najprostszym sposobem, aby dostać się tam jest do zrobienia projekt | Pokaż wszystkie pliki, a następnie przejść do Solution Explorer i kliknij prawym przyciskiem myszy, aby otworzyć folder w Eksploratorze Windows]

EDIT: Aby uspokoić naszego niezadowolonego -1er ... Można oczywiście wywnioskować z tego, że można dodać <Execute Command="notepad.exe $(IntDir)\$(MSBuildProjectName).log"/> lub podobną, jeśli trzeba dosłownie wyskoczyć, ale to nie ma dla mnie sensu.

EDYCJA 2: PRZYKŁAD. Edytować plik .csproj, aw części z

<!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
    Other similar extension points exist, see Microsoft.Common.targets. 

->

go zmienić na:

<Target Name="AfterBuild"> 
    <Exec Command="notepad.exe $(IntDir)\$(MSBuildProjectName).log" /> 
</Target> 

Powód nie zrobił go rozwinąć się, że to będzie denerwować się szybko. Możesz potencjalnie umieścić:

notepad.exe $(IntDir)\$(MSBuildProjectName).log 

W kroku tworzenia postu. To działałoby nieco lepiej, ponieważ uruchamiałoby się tylko wtedy, gdy kompilacja rzeczywiście coś zrobiła.

BTW bardzo polecam coraz książkę Hashimi - to sprawia, że ​​wszystkie te rzeczy oczywiste i sprawia, że ​​można dać odpowiedź, która odpowiada za proste: P

+0

@ Genius -1er: Czy możesz usprawiedliwić swoje poparcie? To całkowicie odpowiada na pytanie, powołując się na odnośnik, z cytowanym cytatem. Czy może czegoś brakuje? –

+0

Czy możesz określić, gdzie i jak zdefiniowano $ (IntDir) i $ (MSBuildProjectName)? Nie mam plików * .log w moim rozwiązaniu (oczywiście sprawdziłem to przed pytaniem). Ponadto: gdzie określasz wpis Gerard

+1

Większość właściwości to [predefiniowane w MSBuild] (http://msdn.microsoft.com/en-us/library/bb629394.aspx). Pomyśl IntDir jest nowy w wersji 4.0. Oznacza to katalog pośredni, który zwykle jest "obj" (nie "bin"). Ta pomoc? BTW, jeśli jesteś -1-e, sugeruję poprawianie postawy - Ludzie tutaj próbują pomóc, a donwvoting bez podania powodu nie sprawia, że ​​ludzie chcą odpowiedzieć. –

Powiązane problemy