Mengonfigurasi Program untuk Windows XP

Visual Studio mendukung beberapa toolset platform. Itu berarti dimungkinkan untuk menargetkan sistem operasi dan pustaka runtime yang tidak didukung oleh toolset default. Misalnya, dengan mengalihkan set alat platform, Anda dapat menggunakan pengkompilasi Visual Studio 2017 C++ untuk membuat aplikasi yang menargetkan Windows XP dan Windows Server 2003. Anda juga dapat menggunakan toolset platform yang lebih lama untuk mempertahankan kode warisan yang kompatibel dengan biner dan masih memanfaatkan fitur terbaru Visual Studio IDE.

Toolset yang disediakan di Visual Studio 2019 dan yang lebih baru tidak menyertakan dukungan untuk membuat kode untuk Windows XP. Dukungan untuk pengembangan Windows XP tersedia dengan menggunakan toolset v141_xp Visual Studio 2017. Anda dapat menginstal toolset v141_xp sebagai opsi komponen individual di Penginstal Visual Studio.

Menginstal toolset platform Windows XP

Untuk mendapatkan toolset dan komponen platform Visual Studio 2017 untuk menargetkan Windows XP dan Windows Server 2003, jalankan Penginstal Visual Studio. Saat Anda awalnya menginstal Visual Studio atau saat memodifikasi penginstalan yang ada, pastikan pengembangan Desktop dengan beban kerja C++ dipilih. Dalam daftar komponen opsional untuk beban kerja ini, pilih dukungan Windows XP untuk C++, lalu pilih Instal atau Ubah.

Untuk mendapatkan toolset dan komponen platform v141_xp untuk menargetkan Windows XP dan Windows Server 2003, jalankan Penginstal Visual Studio. Saat Anda awalnya menginstal Visual Studio, atau saat Anda memodifikasi penginstalan yang ada, pastikan pengembangan Desktop dengan beban kerja C++ dipilih. Di tab Komponen individual, di bawah Pengkompilasi, alat build, dan runtime, pilih C++ Dukungan Windows XP untuk alat VS 2017 (v141) [Tidak digunakan lagi], lalu pilih Instal atau Ubah.

Pengalaman penargetan Windows XP

Toolset platform Windows XP yang disertakan dalam Visual Studio adalah versi Windows 7 SDK, tetapi menggunakan pengkompilasi Visual Studio 2017 C++. Ini juga mengonfigurasi properti proyek ke nilai default yang sesuai, misalnya, spesifikasi linker yang kompatibel untuk penargetan tingkat bawah. Hanya aplikasi desktop Windows yang dibuat dengan menggunakan toolset platform Windows XP yang dapat berjalan pada Windows XP dan Windows Server 2003. Aplikasi tersebut juga dapat berjalan pada sistem operasi Windows yang lebih baru.

Untuk menargetkan Windows XP

  1. Di Penjelajah Solusi, buka menu pintasan untuk proyek Anda, lalu pilih Properti.

  2. Dalam kotak dialog Halaman Properti untuk proyek, atur menu dropdown Konfigurasi ke Semua konfigurasi.

  3. Pilih halaman properti Umum Properti>Konfigurasi. Atur properti Platform Toolset ke toolset Windows XP pilihan Anda. Misalnya, pilih Visual Studio 2017 - Windows XP (v141_xp) untuk membuat kode untuk Windows XP dan Windows Server 2003 dengan menggunakan pengkompilasi Microsoft C++ dari Visual Studio 2017.

Dukungan runtime C++

Bersama dengan toolset platform Windows XP, beberapa pustaka menyertakan dukungan runtime untuk Windows XP dan Windows Server 2003:

  • Pustaka Runtime Universal C (UCRT)
  • Pustaka Standar C++
  • Active Template Library (ATL)
  • Pustaka Runtime Konkurensi (ConcRT)
  • Parallel Patterns Library (PPL)
  • Pustaka Kelas Microsoft Foundation (MFC)
  • Pustaka C++ AMP (C++ Accelerated Massive Programming).

Versi minimum yang didukung dari sistem operasi ini adalah: Windows XP Service Pack 3 (SP3) untuk x86, Windows XP Service Pack 2 (SP2) untuk x64, dan Windows Server 2003 Service Pack 2 (SP2) untuk x86 dan x64.

Pustaka ini didukung oleh toolset platform yang diinstal oleh Visual Studio, tergantung pada targetnya:

Pustaka Toolset platform default yang menargetkan aplikasi desktop Windows Toolset platform default yang menargetkan aplikasi Store Toolset platform Windows XP yang menargetkan Windows XP, Windows Server 2003
CRT X X X
Pustaka Standar C++ X X X
ATL X X X
ConcRT/PPL X X X
MFC X X
C++ AMP X X

Catatan

Aplikasi yang ditulis dalam C++/CLI dan menargetkan .NET Framework 4 berjalan pada Windows XP dan Windows Server 2003.

Perbedaan antara set alat

Karena perbedaan dukungan platform dan pustaka, pengalaman pengembangan untuk aplikasi yang menggunakan toolset platform Windows XP tidak selengkap untuk aplikasi yang menggunakan toolset platform default.

  • Fitur bahasa C++

    Hanya fitur bahasa C++ yang diterapkan di Visual Studio 2017 yang didukung di aplikasi yang menggunakan toolset platform v141_xp. Hanya fitur bahasa C++ yang diterapkan di Visual Studio 2015 yang didukung di aplikasi yang menggunakan toolset platform v140_xp. Visual Studio menggunakan pengkompilasi yang sesuai saat dibuat menggunakan toolset platform yang lebih lama. Gunakan toolset platform Windows XP terbaru untuk memanfaatkan fitur bahasa C++ terbaru yang diterapkan dalam versi pengkompilasi tersebut. Untuk informasi selengkapnya tentang dukungan fitur bahasa berdasarkan versi kompilator, lihat Kesuaian bahasa Microsoft C/C++.

  • Penelusuran kesalahan jarak jauh

    Penelusuran kesalahan jarak jauh pada Windows XP atau Windows Server 2003 tidak didukung oleh Alat Jarak Jauh untuk Visual Studio. Untuk men-debug aplikasi secara lokal atau jarak jauh di Windows XP atau Windows Server 2003, gunakan debugger dari versi Visual Studio yang lebih lama. Ini mirip dengan men-debug aplikasi di Windows Vista: Vista adalah target runtime dari toolset platform, tetapi bukan target penelusuran kesalahan jarak jauh.

  • Analisis statis

    Toolset platform Windows XP tidak mendukung analisis statis. Anotasi SAL untuk Windows 7 SDK dan pustaka runtime tidak kompatibel. Anda masih dapat menjalankan analisis statis pada aplikasi yang mendukung Windows XP atau Windows Server 2003. Alihkan sementara solusi untuk menargetkan toolset platform default untuk analisis, lalu beralih kembali ke toolset platform Windows XP untuk membangun aplikasi.

  • Penelusuran kesalahan grafik DirectX

    Debugger Grafis tidak mendukung API Direct3D 9. Ini tidak dapat digunakan untuk men-debug aplikasi yang menggunakan Direct3D pada Windows XP atau Windows Server 2003. Namun, jika aplikasi mengimplementasikan perender alternatif berdasarkan API Direct3D 10 atau Direct3D 11, Anda dapat menggunakan Graphics Debugger untuk mendiagnosis masalah.

  • Membangun HLSL

    Toolset Windows XP tidak mengkompilasi file kode sumber HLSL secara default. Untuk mengkompilasi file HLSL, unduh dan instal SDK DirectX Juni 2010, lalu atur direktori VC proyek untuk menyertakannya. Untuk informasi selengkapnya, lihat bagian "DirectX SDK Tidak Mendaftarkan Sertakan/Jalur Pustaka dengan Visual Studio 2010" dari halaman unduhan SDK DirectX Juni 2010 (Tautan yang diarsipkan).

Penyebaran Windows XP

Penting

Karena tidak memiliki dukungan untuk sertifikat penandatanganan kode SHA-256, dukungan pustaka runtime untuk Windows XP tidak lagi tersedia di Visual C++ Redistributable terbaru untuk Visual Studio 2015, 2017, 2019, dan 2022. Redistributable terakhir yang mendukung Windows XP yang dikirim di Visual Studio 2019 versi 16.7. Gunakan Redistributable yang memiliki versi file yang dimulai dengan 14.27. Jika aplikasi Windows XP Anda disebarkan dengan atau diperbarui ke versi yang lebih baru dari yang dapat didistribusikan ulang, aplikasi tidak akan berjalan.

Jika Anda menggunakan versi Visual Studio yang lebih baru dari Visual Studio 2019 versi 16.7, file yang dapat didistribusikan ulang tidak akan berfungsi di Windows XP. Untuk mendapatkan salinan file yang dapat didistribusikan ulang yang mendukung Windows XP, Anda memerlukan akun Visual Studio. Gunakan akun yang Anda gunakan untuk masuk ke Visual Studio. Atau, Anda dapat membuat akun secara gratis di my.visualstudio.com. File yang dapat didistribusikan ulang tersedia di bagian Unduhan, sebagai Visual C++ Redistributable untuk Visual Studio 2019 - Versi 16.7. Untuk mengunduh file, pilih platform dan bahasa yang Anda butuhkan, lalu pilih tombol Unduh.

Anda dapat menggunakan penyebaran pusat atau penyebaran lokal untuk menginstal dukungan pustaka runtime untuk aplikasi Windows XP Anda. Untuk informasi selengkapnya, lihat Panduan: Menyebarkan Aplikasi Visual C++ Dengan Menggunakan Paket Visual C++ Redistributable.