Menggunakan Tabel Direktori

Tabel Direktori menentukan tata letak penginstalan. Ketika direktori diselesaikan selama tindakan CostFinalize, kunci dalam tabel Direktori menjadi properti yang diatur ke jalur direktori. Perhatikan bahwa alat penginstal mengatur sejumlah properti standar ke jalur folder sistem. Lihat Referensi Properti untuk daftar properti yang diatur ke folder sistem.

Cara terbaik untuk menentukan lokasi target untuk direktori adalah dengan menulis tabel Direktori dalam paket penginstalan Anda untuk menyediakan lokasi yang benar seperti yang dibahas di bagian ini. Jika perlu mengubah lokasi direktori pada saat penginstalan, lihat juga bagian: Mengubah Lokasi Target untuk Direktori

Berikut ini adalah contoh tabel Direktori.

Directory Directory_Parent DefaultDir
TARGETDIR SourceDir
EXEDIR TARGETDIR Aplikasi
DLLDIR EXEDIR Bin
DesktopFolder TARGETDIR Desktop

 

Setiap baris tabel Direktori menunjukkan direktori baik di sumber maupun target. Misalnya, asumsikan paket penginstalan berada di \\applications\source\. Karena bidang Directory_Parent dari baris pertama adalah Null, rekaman ini menunjukkan direktori akar untuk sumber dan target. Untuk sumbernya, nilai direktori ini diberikan oleh bidang DefaultDir. Properti SourceDir default ke lokasi paket penginstalan. Dengan demikian, kecuali properti SourceDir ditimpa, direktori sumber akar adalah \\applications\source\.

Bidang Direktori dari rekaman pertama menunjukkan lokasi direktori target akar. Dalam hal ini, nilai properti TARGETDIR menunjukkan direktori ini. Biasanya, nilai properti TARGETDIR diatur pada baris perintah atau melalui antarmuka pengguna. Dalam hal ini, asumsikan properti TARGETDIR diatur ke C:\Program Files\Target\.

Untuk rekaman kedua, bidang Directory_Parent bukan Null. Oleh karena itu, rekaman ini menunjukkan direktori non-akar untuk sumber dan target. Untuk direktori sumber non-akar, direktori sumber yang ditunjukkan oleh rekaman yang dijelaskan di bidang Directory_Parent adalah direktori induk. Untuk rekaman kedua, bidang Directory_Parent adalah TARGETDIR. Seperti yang ditunjukkan sebelumnya, direktori sumber yang ditunjukkan oleh rekaman TARGETDIR diselesaikan ke \\applications\source\. Dengan demikian, direktori sumber yang ditunjukkan oleh rekaman kedua adalah \\applications\source\App\.

Proses serupa berfungsi untuk direktori target. Nilai direktori induk untuk direktori target yang dijelaskan dalam rekaman kedua adalah direktori target yang diselesaikan oleh bidang Directory_Parent. Sekali lagi, bidang Directory_Parent berisi nilai TARGETDIR. Ini menunjukkan rekaman pertama yang diselesaikan ke direktori target C:\Program Files\Target\. Bidang Direktori berisi properti yang ditentukan penulis yang disebut EXEDIR. Jika properti ini diatur, maka nilainya memberikan jalur lengkap direktori. Dengan demikian, jika properti ini diatur ke C:\Data\Common\, nilai direktori target yang ditunjukkan oleh rekaman kedua adalah C:\Data\Common\. Jika tidak diatur, direktori target mengambil nama yang diberikan oleh bidang DefaultDir. Dalam hal ini, direktori target adalah C:\Program Files\Target\App\.

Proses yang sama berfungsi untuk rekaman ketiga. Jika EXEDIR dan DLLDIR tidak ditetapkan, direktori target adalah C:\Program Files\Target\App\Bin, dan direktori sumbernya adalah \\applications\source\App\Bin\.

Rekaman keempat menggunakan properti DesktopFolder . Jika lokasi desktop pengguna adalah C:\Winnt\Profiles\User\Desktop\, direktori target diselesaikan ke C:\Winnt\Profiles\User\Desktop\. Direktori sumber diselesaikan ke \\applications\source\Desktop\.

Ada dua fitur sintaks tambahan yang dapat digunakan di kolom DefaultDir dari tabel Direktori. Untuk direktori sumber non-akar, titik (.) yang dimasukkan di kolom DefaultDir menunjukkan bahwa direktori harus terletak di direktori induknya tanpa subdirektori. Untuk menentukan jalur direktori sumber dan target yang berbeda, pisahkan jalur target dan sumber di kolom DefaultDir dengan titik dua sebagai berikut: [targetpath]:[sourcepath]. Fitur-fitur ini dapat digunakan bersama-sama untuk menambahkan tingkat ke jalur sumber atau target untuk satu direktori. Lihat contoh tabel Direktori berikut.

Directory Directory_Parent DefaultDir
TARGETDIR SourceDir
MyAppDir TARGETDIR MyApp
BinDir MyAppDir Bin
Binx86Dir BinDir .:x86
BinAlphaDir BinDir .:Alpha

 

Jalur sumber dan target diselesaikan untuk baris MyAppDir, BinDir, Binx86Dir, dan BinAlphaDir sebagai berikut.

Rekaman Jalur target Jalur sumber
MyAppDir: [TARGETDIR] MyApp [SourceDir] MyApp
BinDir: [TARGETDIR] MyApp\Bin [SourceDir] MyApp\Bin
Binx86Dir: [TARGETDIR] MyApp\Bin [SourceDir] MyApp\Bin\x86
BinAlphaDir: [TARGETDIR] MyApp\Bin [SourceDir] MyApp\Bin\Alpha

 

Catatan

Platform Alpha tidak didukung oleh Pemasang Windows.