Chciałbym zastąpić katalogi używane przez Visual Studio (devenv.exe) dla ścieżek kompilatora i biblioteki. Wiem, jak to zrobić interaktywnie za pośrednictwem menu Narzędzia-> Opcje-> Katalogi VC++, ale chciałbym to zautomatyzować.jak używać pliku .vsprops do przesłonięcia katalogów VC++ w MS Visual Studio
http://msdn.microsoft.com/en-us/library/t9az1d21(VS.80).aspx ma zwodniczą notatkę: "Jeśli chcesz ustawić ścieżki wyszukiwania katalogu (dla twoich projektów), które mogą być współużytkowane przez innych użytkowników lub które mogą być stosowane na wielu komputerach, Visual C++ stanowi alternatywę dla używania to okno dialogowe, poprzez arkusze właściwości projektu. Aby uzyskać więcej informacji, zobacz Arkusze właściwości (C++). "
Po kliknięciu odsyłacza do dokumentacji Arkuszy Właściwości istnieje informacja o mechanizmie, ale nie ma informacji o właściwościach, które należy ustawić.
Znalazłem informacje w oknie dialogowym Katalogi VC++, w% LocalAppData% \ Microsoft \ VisualStudio \ 8.0 \ VCComponents.dat (dla VS 2005 i 9.0 dla VS 2008); wydaje się ustawić różne właściwości w VC \ VC_OBJECTS_PLATFORM_INFO \ win32 \ Directories i ... \ x64 \ Directories.
Czy ktoś to zrobił wcześniej i wie, jakie jest odwzorowanie od nazw właściwości używanych w VCComponents.dat do nazw używanych w pliku .vsprops?
Chciałbym, aby to działało w VS2005, VS2008 i VS2010, idealnie.
W VS2010 firma Microsoft całkowicie usunęła okno dialogowe Katalogi VC++ w obszarze Opcje widoku, wykonała je dla każdego projektu, a teraz otrzymujesz interaktywny interfejs użytkownika do edycji tych katalogów w Właściwości projektu zamiast opcji Wyświetl; oznacza to również, że w menedżerze właściwości istnieje interfejs użytkownika; jeśli chcesz wprowadzić zmiany na maszynę zamiast na projekt podobny do tego, jaki był, po prostu ustaw arkusz właściwości tak, jak chcesz, i spraw, aby wszystkie twoje projekty dziedziczyły po nim. To brzmi jak wielka poprawa na starym sposobie. I bezpośredni sposób robienia tego, co chcę robić. Ale tylko w VS2010.
VS2005 i VS2008 nie mają interfejsu użytkownika do ustawiania tych właściwości w projekcie lub arkuszu właściwości; Cieszę się, że robię to ręcznie, ale nie wiem, jak ma wyglądać!
Oto pusty plik VS 2005 .vsprops:
<?xml version="1.0"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="pathSettings"
>
</VisualStudioPropertySheet>
I zainstalowane VS 2010 i wykorzystał schludny nowy GUI, aby dokonać zmian w katalogach wyszukiwarek; wygląda to tak:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup>
<ExecutablePath>C:\Test;$(PATH)</ExecutablePath>
</PropertyGroup>
</Project>
jednak, że nie działa dosłownie w VS2005 - VS2005 odmawia go załadować (nie skarży deklaracja DTD/schemat został znaleziony).
Wrzuciłem to do pojemnika, w odpowiedzi na które VS2005 mówi mi "Element" PropertyGroup "jest nieoczekiwany zgodnie z modelem zawartości elementu macierzystego" VisualStudioPropertySheet ".Oczekiwanie: Tool, UserMacro." Narzędzie i UserMacro to jedyne rzeczy pokazane w przykładzie na stronie MSDN [drat - StackOverflow nie pozwoli mi, jako nowy użytkownik umieścił tutaj hiperlink - pierwsze wyniki wyszukiwania Google dla "narzędzia arkuszy własności usermacro"] - może te są jedyne rzeczy prawne w arkuszu właściwości VS2005?
Więcej linków: - Dokumentacja arkusz własności: http://msdn.microsoft.com/en-us/library/a4xbdz1e(VS.80).aspx - artykuł na temat zmian w VS 2010: http://blogs.msdn.com/vsproject/archive/2009/07/07/vc-directories.aspx Nie wiem, co umieścić w pliku .vsprops (VS2005 lub 2008) lub pliku .props (2010) w celu osiągnięcia tego samego, co można osiągnąć poprzez edycję pliku VCComponents.dat, aby ustawić lub przesłonić katalogi wyszukiwania ścieżek/uwzględnienia/bibliotek dla każdej platformy kompilacji. – metamatt
Wydaje się to pomocne/istotne (nadal przetwarzane): http://stackoverflow.com/questions/142708/what-do-delimiter-and-inheritsfromparent-attributes-mean-in-vsprops-files – metamatt
OK, jeśli tylko narzędzie i UserMacro tam pracuje, może muszę znaleźć właściwy sposób na przesłonięcie ścieżki dołączania kompilatora i ścieżki dołączania linku przy użyciu dyrektyw narzędziowych. To jednak nie pomoże w przypadku ścieżki wykonywalnej, prawda? – metamatt