Strona właściwości zaawansowanej
Strona właściwości Advanced jest dostępna w programie Visual Studio 2019 lub nowszym. Aby wyświetlić dokumentację dla tej wersji, ustaw kontrolkę selektora wersji programu Visual Studio dla tego artykułu na program Visual Studio 2019 lub nowszy. Znajduje się on w górnej części spisu treści na tej stronie. We wcześniejszych wersjach programu Visual Studio te właściwości są wyświetlane na stronie właściwości Ogólne:
Strona właściwości Advanced jest dostępna w programie Visual Studio 2019 lub nowszym. Wyświetlane właściwości zależą od typu projektu. projekty środowisko wykonawcze systemu Windows (platforma uniwersalna systemu Windows lub UWP) nie pokazują tej strony.
Właściwości zaawansowane
Rozszerzenie pliku docelowego
Określa rozszerzenie pliku do użycia dla danych wyjściowych kompilacji. Wartość domyślna dla .exe
aplikacji, .lib
dla bibliotek statycznych i .dll
bibliotek DLL.
Rozszerzenia do usunięcia przy czyszczeniu
Polecenie menu Kompiluj>czyste usuwa pliki z katalogu pośredniego, w którym jest kompilowana konfiguracja projektu. System kompilacji usuwa pliki z określonymi rozszerzeniami podczas uruchamiania polecenia Clean lub podczas ponownego kompilowania. System kompilacji usuwa również wszystkie znane dane wyjściowe kompilacji niezależnie od tego, gdzie się znajduje. Usunięte pliki obejmują wszystkie pośrednie dane wyjściowe, takie jak .obj
pliki. Użyj średników (;
), aby oddzielić rozszerzenia. Możesz określić symbole wieloznaczne (*
, ?
) w rozszerzeniach.
Aby programowo uzyskać dostęp do tej właściwości, zobacz DeleteExtensionsOnClean.
Plik dziennika kompilacji
Umożliwia określenie lokalizacji innej niż domyślna dla pliku dziennika utworzonego podczas tworzenia projektu. Domyślna lokalizacja jest określana przez makra $(IntDir)$(MSBuildProjectName).log
.
Aby zmienić lokalizację katalogu, możesz użyć makr projektu. Aby uzyskać więcej informacji, zobacz Typowe makra dla poleceń i właściwości kompilacji.
Preferowana architektura narzędzia kompilacji
Określa, czy należy używać narzędzi kompilacji x86 lub x64.
Korzystanie z bibliotek debugowania
Określa, czy utworzyć kompilację debugowania lub wydania. Pomimo nazwy użyj bibliotek debugowania jest właściwością specyficzną dla systemu kompilacji, która jest skutecznie skrótem dla polecenia "Tworzenie kompilacji debugowania" lub "Tworzenie kompilacji wydania". Ustawia kilka właściwości kompilatora i konsolidatora dla kompilacji debugowania lub wydania, w tym ustawień biblioteki. Można jej użyć do tworzenia konfiguracji debugowania lub wydania dla nowej platformy lub w nowym szablonie. Nie zalecamy zmiany tej właściwości w istniejącej konfiguracji. Zamiast tego użyj właściwości kompilatora i konsolidatora.
Włączanie kompilacji aparatu Unity (JUMBO)
Umożliwia szybszy proces kompilacji, który łączy wiele plików źródłowych C++ w co najmniej jeden plik przed kompilacją. Te połączone pliki są nazywane plikami unity . Nie są one związane z aparatem gry Unity.
Kopiowanie zawartości do elementu OutDir
Skopiuj elementy oznaczone jako zawartość w projekcie do katalogu wyjściowego projektu ($(OutDir)
). To ustawienie może uprościć wdrażanie. Ta właściwość jest dostępna od wersji 16.7 programu Visual Studio 2019.
Kopiowanie odwołań projektu do elementu OutDir
Skopiuj elementy odwołania do projektu wykonywalnego (plik DLL i EXE) do katalogu wyjściowego projektu ($(OutDir)
). W projektach C++/CLI (/clr
) ta właściwość jest ignorowana. Zamiast tego właściwość Copy Local (Kopiuj lokalnie) dla każdego odwołania do projektu określa, czy jest kopiowany do katalogu wyjściowego. To ustawienie może uprościć wdrażanie lokalne. Jest ona dostępna od wersji 16.7 programu Visual Studio 2019.
Kopiowanie symboli odwołań projektu do elementu OutDir
Skopiuj pliki PDB dla elementów referencyjnych projektu wraz z elementami wykonywalnymi odwołania projektu do katalogu wyjściowego projektu ($(OutDir)
). Ta właściwość jest zawsze włączona dla projektów C++/CLI. To ustawienie może uprościć wdrażanie debugowania. Jest ona dostępna od wersji 16.7 programu Visual Studio 2019.
Kopiowanie środowiska uruchomieniowego C++ na outDir
Skopiuj biblioteki DLL środowiska uruchomieniowego do katalogu wyjściowego projektu ($(OutDir)
). To ustawienie może uprościć wdrażanie lokalne. Jest ona dostępna od wersji 16.7 programu Visual Studio 2019.
Korzystanie z MFC
Określa, czy projekt MFC statycznie lub dynamicznie łączy się z biblioteką MFC DLL. W projektach innych niż MFC wybierz pozycję Użyj standardowych bibliotek systemu Windows.
Aby programowo uzyskać dostęp do tej właściwości, zobacz useOfMfc.
Zestaw znaków
Określa, czy _UNICODE
ma być ustawione makro preprocesora lub _MBCS
. Również wpływa na punkt wejścia konsolidatora, jeśli jest to konieczne.
Aby programowo uzyskać dostęp do tej właściwości, zobacz CharacterSet.
Optymalizacja całego programu
Określa opcję kompilatora /GL
i /LTCG
opcję konsolidatora. Domyślnie ta właściwość jest wyłączona dla konfiguracji debugowania i włączona dla konfiguracji wydania.
Wersja zestawu narzędzi MSVC
Określa pełną wersję zestawu narzędzi MSVC używanego do kompilowania projektu. Być może masz zainstalowane różne wersje aktualizacji i wersji zapoznawczej zestawu narzędzi. Możesz określić, który z nich ma być używany w tym miejscu.
Wersja zestawu narzędzi LLVM
Określa pełną wersję zestawu narzędzi LLVM używanego do kompilowania projektu. Ta właściwość jest dostępna, gdy jako zestaw narzędzi platformy wybrano maszynę wirtualną LLVM (clang-cl), począwszy od programu Visual Studio 2019 w wersji 16.9. Aby uzyskać więcej informacji, zobacz Ustawianie niestandardowej wersji zestawu narzędzi LLVM.
Włączanie danych wyjściowych ze strukturą MSVC
Określa, czy włączyć ustrukturyzowane dane wyjściowe SARIF, co umożliwia okno Szczegóły problemu i hierarchiczne dane wyjściowe w oknie Dane wyjściowe w programie Visual Studio.
Właściwości języka C++/interfejsu wiersza polecenia
Obsługa środowiska uruchomieniowego języka wspólnego
Powoduje użycie opcji kompilatora /clr
.
Aby programowo uzyskać dostęp do tej właściwości, zobacz ManagedExtensions.
Wersja programu .NET Target Framework
Ta właściwość ma zastosowanie tylko wtedy, gdy właściwość obsługi środowiska uruchomieniowego języka wspólnego jest ustawiona na obsługę środowiska uruchomieniowego programu .NET Framework, czyli projekt jest przeznaczony dla platformy .NET Framework i określa wersję programu .NET Framework.
.NET Target Framework
Ta właściwość ma zastosowanie tylko wtedy, gdy właściwość obsługi środowiska uruchomieniowego języka wspólnego jest ustawiona na obsługę środowiska uruchomieniowego platformy .NET, czyli projekt jest przeznaczony dla platformy .NET.
Ta właściwość określa platformę docelową .NET 5+ Target Framework Moniker dla tego projektu, na przykład net6.0-windows
lub net7.0-windows8.0
.
Włączanie kompilacji przyrostowej zarządzanej
W przypadku projektów zarządzanych ta opcja umożliwia wykrywanie widoczności zewnętrznej podczas generowania zestawów. Jeśli zmiana w projekcie zarządzanym nie jest widoczna dla innych projektów, projekty zależne nie są odbudowywane. Zarządzane kompilacje przyrostowe mogą znacznie poprawić czas kompilacji w rozwiązaniach obejmujących projekty zarządzane.
Włączanie obsługi środowiska CLR dla poszczególnych plików
Ta opcja ustawia ManagedAssembly
właściwość kompilacji, która umożliwia kompilowanie tylko niektórych plików w projekcie jako kodu zarządzanego. Należy ustawić opcję Włącz obsługę clR dla pojedynczych plików na wartość Tak , jeśli niektóre pliki projektu, ale nie wszystkie pliki projektu są kompilowane jako kod zarządzany. Ta właściwość jest dostępna tylko w projektach korzystających z zestawu narzędzi w wersji 143 lub nowszej w programie Visual Studio 2022 i nowszych wersjach.
Wersja systemu Windows docelowa platformy .NET
Ta właściwość ma zastosowanie tylko wtedy, gdy właściwość obsługi środowiska uruchomieniowego języka wspólnego jest ustawiona na obsługę środowiska uruchomieniowego platformy .NET, czyli projekt jest przeznaczony dla platformy .NET.
Ta właściwość określa minimalną wersję systemu Windows obsługiwaną przez projekt. Ta wartość jest używana przez pakiet NuGet do określania zgodności projektów i zależności pakietów NuGet. Jeśli projekt A zależy od projektu B, docelowa wersja systemu Windows platformy A dla platformy A musi być większa lub równa projektowi B.