Dynamic-Link Kitaplıkları (Windows Installer)
Özel eylem, C veya C++ dilinde yazılmış dinamik bağlantı kitaplığında (DLL) tanımlanan bir işlevi çağırabilir. DLL, geçerli yükleme sırasında yüklenen bir dosya olarak veya yükleme veritabanının İkili tablosu kaynaklanan geçici bir ikili akış olarak bulunabilir.
DLL'lerdeki özel eylemler de dahil olmak üzere çağrılan işlevlerin __stdcall çağırma kuralını belirtmesi gerektiğini unutmayın. Örneğin, CustomAction'ı çağırmak için aşağıdakileri kullanın.
#include <windows.h>
#include <msi.h>
#include <Msiquery.h>
#pragma comment(lib, "msi.lib")
UINT __stdcall CustomAction(MSIHANDLE hInstall)
Daha fazla bilgi için bkz. Özel Eylem İçinden Geçerli Yükleyici Oturumuna Erişme
Aşağıdaki özel eylem türleri dinamik bağlantı kitaplığını çağırır.
Özel eylem türü | Açıklama |
---|---|
Özel Eylem Türü 1 | İkili tablo akışında depolanan DLL dosyası. |
Özel Eylem Türü 17 | Bir ürünle yüklenen DLL dosyası. |
Not
COM kullanmak için özel eylemde CoInitializeEx çağırmanız gerekir. İş parçacığının zaten başlatılmış olduğunu fark ederseniz çıkmayın. Örneğin, iş parçacığı makine başına yüklemede başlatılır ancak kullanıcı başına yüklemede başlatılmaz.
Tüm özel eylem türlerinin özeti ve bunların CustomAction tablosuna nasıl kodlandıklarının özeti için bkz. Tüm Özel Eylem Türlerinin Özet Listesi.