Aracılığıyla paylaş


/fsanitize (Dezenfektanları etkinleştir)

/fsanitize Dezenfektanları etkinleştirmek için derleyici seçeneklerini kullanın.

Sözdizimi

/fsanitize=address
/fsanitize=kernel-address
/fsanitize=fuzzer
/fsanitize-address-use-after-return
/fno-sanitize-address-vcasan-lib /fsanitize-address-asan-compat-lib /fno-sanitize-address-asan-compat-lib

Açıklamalar

Derleyici /fsanitize=address seçeneği, bulunması zor hataları ortaya çıkarmak için güçlü bir derleyici ve çalışma zamanı teknolojisi olan AddressSanitizer'ı etkinleştirir. Seçenek desteği /fsanitize=address Visual Studio 2019 sürüm 16.9'dan itibaren kullanılabilir.

Derleyici /fsanitize=kernel-address seçeneği Çekirdek AdresiSanitizer'ı (KASan) etkinleştirir. KASan, Visual Studio 2022 sürüm 17.11'den itibaren kullanılabilen AddressSanitizer'ın çekirdek modu çeşididir. KASan yalnızca Windows 11 24H2 veya Windows Server 2025 ve üzeri sürümlerde desteklenir ve Windows SDK 10.0.26100.2161 ve üzerini kullanarak derleme gerektirir. KASan ile derlemek, derleyici seçeneğini de ifade eder /fsanitize-address-asan-compat-lib .

Derleyici /fsanitize=fuzzer seçeneği LibFuzzer için deneysel destek sağlar. LibFuzzer, kullanıcı tarafından sağlanan girişin neden olduğu hataları ve kilitlenmeleri bulmak için kullanılabilen kapsam destekli bir fuzzing kitaplığıdır. LibFuzzer ile kullanmanızı /fsanitize=address öneririz. Bu seçenek, OneFuzz gibi araçları sıkıştırmak için kullanışlıdır. Daha fazla bilgi için OneFuzz belgelerine ve OneFuzz GitHub projesine bakın. Seçenek desteği /fsanitize=fuzzer Visual Studio 2022 sürüm 17.0'dan itibaren kullanılabilir.

bu /fsanitize seçenek virgülle ayrılmış söz dizimine izin vermez, örneğin: /fsanitize=address,fuzzer. Bu seçenekler ayrı ayrı belirtilmelidir.

/fsanitize-address-use-after-return, /fno-sanitize-address-vcasan-lib, /fsanitize-address-asan-compat-libve /fno-sanitize-address-asan-compat-lib derleyici seçenekleri ile /INFERASANLIBS (Çıkarımlı dezenfektan kitaplıklarını kullan) ve /INFERASANLIBS:NO bağlayıcı seçenekleri gelişmiş kullanıcılar için destek sunar. Daha fazla bilgi için bkz . AddressSanitizer derlemesi ve dil başvurusu.

Visual Studio geliştirme ortamında derleyici seçeneğini ayarlamak /fsanitize=address için

  1. Projenizin Özellik Sayfaları iletişim kutusunu açın.

  2. > > Genel özellik sayfasını seçin.

  3. AddressSanitizer'ı Etkinleştir özelliğini değiştirin. Etkinleştirmek için Evet (/fsanitize=address) öğesini seçin.

  4. Değişikliklerinizi kaydetmek için Tamam'ı veya Uygula'yı seçin.

Visual Studio geliştirme ortamında derleyici seçeneğini ayarlamak /fsanitize=fuzzer için

  1. Projenizin Özellik Sayfaları iletişim kutusunu açın.

  2. > > Genel özellik sayfasını seçin.

  3. Fuzzer'i Etkinleştir özelliğini değiştirin. Etkinleştirmek için Evet (/fsanitize=fuzzer) öğesini seçin.

  4. Değişikliklerinizi kaydetmek için Tamam'ı veya Uygula'yı seçin.

Gelişmiş derleyici seçeneklerini ayarlamak için

  1. Projenizin Özellik Sayfaları iletişim kutusunu açın.

  2. > > Komut Satırı özellik sayfasını seçin.

  3. Ek Seçenekler özelliğini değiştirerek /fsanitize-address-use-after-return veya /fno-sanitize-address-vcasan-lib ayarlayın.

  4. Değişikliklerinizi kaydetmek için Tamam'ı veya Uygula'yı seçin.

Bu derleyici seçeneğini program üzerinden ayarlamak için

Ayrıca bkz.

MSVC derleyici seçenekleri
MSVC derleyicisi komut satırı söz dizimi
/INFERASANLIBS (Çıkarımlı dezenfektan libs kullanın)
/fsanitize-coverage (Dezenfektan kapsamını yapılandırma)
AddressSanitizer'a genel bakış
AddressSanitizer bilinen sorunları
AddressSanitizer derlemesi ve dil başvurusu