Windows Installer nedir?
MSI Paketleri Nasıl Hazırlanır?
Bu makalede Windows Installer teklolojisiyle ilgili bazı temel bilgiler verildikten sonramsi paketlerinin hazırlanması için gerekenler adım adım anlatılacaktır. Windows Installer teknolojisi ikiye ayrılmaktadır. İstemci (client) tarafında çalışan bir installer servisi (msiexec.exe) ve paket dosyası (.msi uzantılı dosya).
Windows Installer program ekleme ve kaldırma işlemini yöneten bir işletim sistemi servisidir. Msiexec.exe ise bu servisin bir bileşenidir ve paketleri (.msi) okumak, değişiklikleri (.mst) uygulamak ve komut satırı işlemlerini gerçekleştirmekten sorumludur. Bunumsi.dll dinamik bağlantı kütüphanesini kullanarak yapar. Installer servisi, dosyaları sabit diske kopyalamak, registry değişikliklerini yapmak, masaüstüne ve başlangıç menüsüne kısayollar koymak, gerektiğinde kullanıcının ayarlaması gereken seçeneklerle ilgili diyalog kutularını görüntülemek gibi program ekleme ve kaldırmayla ilgili bütün işleri üstlenir. Windows Installer bir bilgisayarda yüklüyse, işletim sisteminin dosya uzantılarıyla ilgili ilişkilendirmeleri (association) yapılmıştır ve.msi dosyaları tanınmaktadır..msi uzantılı bir dosya çalıştırıldığında işletim sistemi.msi dosyasını Windows Installer ile ilişkilendirir ve msiexec.exe uygulamasını çalıştırır.
Paket dosyası (.msi), programı pek çok senaryoya göre eklemek ve kaldırmak için gerekli yönlendirmeleri, bir paket dosyasının içinde yüklenen programın önceki bir versiyonu bilgisayarda mevcut ise yapılması gerekenler yönlendirmeye örnek olarak verilebilir ve verileri içinde barındıran ilişkisel bir veritabanından oluşmaktadır. Windows Installer veritabanı (.msi dosyası), bir programı yüklemek ve/ya kaldırmak için gerekli bilgileri içeren ilişkisel veritabanını meydana getiren birbiriyle ilişkili pek çok tablodan oluşmuştur.Birbiriyle ilişkili bu tablolar şunlardır:
1. Ana Tablo : Uygulamanın ve paket dosyasının temel öğelerini içeren tablodur.
2. Dosya Tablosu : Paket dosyasıyla ilişlilendirilen dosyaları içerir.
3.Registry Tablosu : Registry kayıtlarının bulunduğu tablodur.
4. Sistem Tablosu : Yükleme veritabanının tablolarını ve sütunlarını takip eder.
5. Yer Tespit Tablosu : Bir dosya için registry, konfigürasyon bilgisi, klasör ağaç yapısı veya.ini dosyalarında uygun olan yerlerin gösterildiği tablodur.
6. Program Yükleme : Uygulamanın yüklenmesi için gerekli olan resimleri, kısayolları ve diğer öğelerin tutulduğu tablodur.
7. Yükleme Prosedürü : Yükleme sırasında standart vey özel yükleme ile ilgili yapılacakların yer aldığı tablodur.