ICE30
ICE30 memvalidasi bahwa penginstalan komponen yang berisi file yang sama tidak pernah menginstal file lebih dari sekali di direktori yang sama.
ICE30 masuk ke setiap komponen dalam tabel Komponen lalu menentukan direktori target komponen dari tabel Direktori. Kemudian memeriksa untuk melihat komponen mana yang diinstal ke direktori target yang sama. Terakhir, ini menggunakan tabel File untuk memverifikasi bahwa tidak ada file dalam komponen ini yang memiliki nama yang sama.
ICE30 memeriksa nama file panjang (LFN) dan nama file pendek (SFN).
ICE30 tidak mengevaluasi properti dalam resolusi direktori karena properti ini dapat berubah saat runtime dan mengubah skema resolusi direktori. Ini berarti ICE30 dapat mendeteksi tabrakan file karena direktori dengan properti yang sama di jalurnya, tetapi tidak mendeteksi tabrakan yang dihasilkan dari dua properti yang memiliki nilai yang sama.
ICE30 memposting pesan kesalahan untuk setiap pasangan komponen yang menginstal file yang sama ke direktori yang sama.
Contoh yang ditampilkan mengembalikan masing-masing kesalahan berikut dua kali.
Kesalahan atau peringatan ICE30 | Deskripsi |
---|---|
KESALAHAN: File target 'README.1st' diinstal di 'TARGETDIR\PRODUCT' oleh dua komponen berbeda pada sistem SFN: 'Component1' dan 'Component2'. Ini memutus penghitungan referensi komponen. | Component1 dan Component2 keduanya memiliki file bernama 'READEME.1st'. Saat menggunakan nama file pendek, alat penginstal menginstal Dir1 dan Dir2 ke direktori yang sama, TARGETDIR\PRODUCT. ICE30 menghasilkan dua kesalahan, satu untuk setiap file. Di lingkungan penulisan yang menampilkan lokasi kesalahan, kesalahan pertama ada pada satu entri file di Tabel File, dan yang kedua di lokasi file lain. |
KESALAHAN: Penginstalan komponen bersyarkat akan menyebabkan file target 'README.1st' diinstal di 'TARGETDIR\COMMON TOOLS' oleh dua komponen berbeda pada sistem LFN: 'Component3' dan 'Component4'. Ini akan merusak penghitungan referensi komponen. | Component4 memiliki entri di kolom Kondisi tabel Komponen dan Component3 tidak. Jika VersionNT True, Component4 diinstal, dan ada tabrakan dengan Readme.1st yang selalu diinstal oleh Component3. ICE30 menghasilkan 4 kesalahan, satu pasangan untuk SFN, satu untuk LFN. |
PERINGATAN: File target 'README.1st' mungkin diinstal di 'TARGETDIR\COMMON TOOLS' oleh dua komponen bersyarkat yang berbeda pada sistem SFN: 'Component4' dan 'Component5'. Jika kondisinya tidak saling eksklusif, ini akan merusak sistem penghitungan referensi komponen. | Karena Component4 dan Component5 keduanya memiliki entri di kolom Kondisi dari tabel Komponen , tabrakan file ini mungkin tidak terjadi. ICE30 hanya memposting peringatan karena kondisi harus ditentukan pada saat penginstalan. ICE30 menghasilkan 4 peringatan, satu pasang untuk SFN, satu untuk LFN. |
Tabel Komponen (parsial)
Komponen | Directory | Kondisi |
---|---|---|
Komponen1 | Dir1 | |
Komponen2 | Dir2 | |
Komponen3 | Dir3 | |
Komponen4 | Dir3 | VersionNT |
Komponen5 | Dir3 | Version9X |
Directory | Parent_Directory | DefaultDir |
---|---|---|
SOURCEDIR | TARGETDIR | |
Dir1 | SOURCEDIR | Produk| Produk Component1:. |
Dir2 | SOURCEDIR | Produk:. |
Dir3 | SOURCEDIR | Umum| Alat Umum: |
Tabel File (parsial)
File | Komponen_ | FileName |
---|---|---|
File1 | Komponen1 | README.1st |
File2 | Komponen2 | README.1st |
File3 | Komponen3 | README.1st |
File4 | Komponen4 | README.1st |
File5 | Komponen5 | README.1st |