Tindakan InstallValidate
Tindakan InstallValidate memverifikasi bahwa semua volume yang biayanya telah dikaitkan memiliki ruang yang cukup untuk penginstalan. Tindakan InstallValidate mengakhiri penginstalan dengan kesalahan fatal jika ada volume yang kekurangan ruang disk.
Tindakan InstallValidate juga memberi tahu pengguna jika satu atau beberapa file yang akan ditimpa atau dihapus saat ini sedang digunakan oleh proses aktif. Untuk informasi selengkapnya, lihat Reboot Sistem.
Pembatasan Urutan
Tindakan CostFinalize dan urutan kotak dialog UI apa pun yang memungkinkan pengguna mengubah status pilihan dan/atau direktori harus diurutkan sebelum tindakan InstallValidate.
Tindakan kustom yang mengubah status penginstalan fitur atau komponen harus diurutkan sebelum tindakan InstallValidate.
Pesan ActionData
Tidak ada pesan ActionData.
Keterangan
Biasanya, urutan kotak dialog UI sebelumnya harus melakukan verifikasi yang sama dengan tindakan InstallValidate ketika pengguna mencoba memulai penyalinan file. Urutan kotak dialog UI ini harus menyajikan kotak dialog Ruang Disk Habis jika volume yang dipilih tidak memiliki cukup ruang untuk penginstalan. Kotak dialog UI harus ditulis dengan cara untuk mencegah pengguna melanjutkan penginstalan jika ruang disk tidak mencukupi. Dalam kasus penginstalan yang tenang, tidak ada antarmuka pengguna dan tindakan InstallValidate mengakhiri penginstalan jika ruang disk tidak mencukupi. Penyebab penghentian dini dicatat dalam file log jika pengelogan diaktifkan.
Entri ditambahkan ke tabel FilesInUse internal jika ada file yang ditimpa atau dihapus saat terbuka untuk eksekusi atau modifikasi oleh proses apa pun selama biaya file. Tabel FilesInUse berisi kolom untuk nama dan jalur lengkap file. Saat tindakan InstallValidate dijalankan, alat penginstal meminta tabel FilesInUse untuk entri dan menentukan nama proses menggunakan file. Tindakan InstallValidate menambahkan satu rekaman ke tabel antarmuka pengguna ListBox untuk setiap proses unik yang diidentifikasi oleh kueri ini. Catatan berisi nilai berikut di setiap kolom:
Properti: FileInUseProcess
Nilai: Nama proses
Teks: Teks yang terkandung dalam caption jendela utama proses
Tindakan InstallValidate kemudian menampilkan kotak dialog File Sedang Digunakan . Kotak dialog ini menampilkan proses yang harus dimatikan untuk menghindari persyaratan menghidupkan ulang sistem untuk menggantikan file yang digunakan.
Tindakan InstallValidate meminta tabel Dialog untuk kotak dialog yang ditulis dengan dialog FilesInUse nama yang dipesan dan menampilkannya. Kotak dialog ini harus berisi kontrol ListBox yang terkait dengan properti bernama FileInUseProcess. Menurut konvensi, kotak dialog ini memiliki tombol Keluar, Coba Lagi, atau Abaikan , tetapi ini terserah penulis UI. Setiap tombol harus diikat ke EndDialog ControlEvent dalam tabel ControlEvent . Tindakan InstallValidate merespons sebagai berikut ke nilai yang dikembalikan oleh DoAction ControlEvent, seperti yang ditentukan oleh salah satu argumen EndDialog ini yang terkait dengan tombol yang didorong oleh pengguna:
Coba lagi: Semua nilai yang ditambahkan ke tabel ListBox dikosongkan, dan seluruh prosedur biaya file diulang, memeriksa ulang file yang masih digunakan. Jika satu atau beberapa proses masih diidentifikasi menggunakan file yang akan ditimpa atau dihapus, proses akan berulang; jika tidak, InstallValidate mengembalikan kontrol ke alat penginstal dengan status msiDoActionStatusSuccess.
Keluar: Tindakan InstallValidate segera mengembalikan kontrol ke penginstal dengan status msiDoActionStatusUserExit. Ini mengakhiri penginstalan.
Nilai pengembalian lainnya: Tindakan InstallValidate segera mengembalikan kontrol ke alat penginstal dengan status msiDoActionStatusSuccess. Dalam hal ini, karena satu atau beberapa file masih digunakan, tindakan InstallFiles dan/atau InstallAdminPackage berikutnya harus menjadwalkan file yang digunakan untuk diganti atau dihapus saat sistem dimulai ulang.
Jika tidak ada tabel ListBox dalam database, InstallValidate keluar secara diam-diam tanpa kesalahan.
Titik koma adalah pemisah daftar untuk transformasi, sumber, dan patch, dan tidak boleh digunakan dalam nama atau jalur file ini.
File yang ditandai baca-saja di lokasi baca-saja tidak pernah dipertimbangkan untuk digunakan oleh alat penginstal.
Kotak dialog Ruang Di Luar Disk default yang berisi tombol Batalkan dan Coba Lagi disajikan kepada pengguna jika tingkat antarmuka pengguna adalah dasar.