IMsmMerge::OpenModule-Methode (mergemod.h)
Die OpenModule-Methode öffnet ein Windows Installer-Mergemodul im schreibgeschützten Modus. Ein Modul muss geöffnet werden, bevor es mit einer Installationsdatenbank zusammengeführt werden kann. Weitere Informationen finden Sie unter der OpenModule-Methode des Merge-Objekts .
IMsmMerge2::OpenModule Mergemod.dll Version 2.0 und höher.
Syntax
HRESULT OpenModule(
[in] const BSTR Path,
[in] const short Language
);
Parameter
[in] Path
Vollqualifizierter Dateiname, der auf ein Mergemodul verweist. Anstelle eines BSTR kann ein LPCWSTR verwendet werden.
[in] Language
Ein Sprachbezeichner (LANGID).
Rückgabewert
Die OpenModule-Funktion gibt die folgenden Werte zurück.
Wert | Bedeutung |
---|---|
|
Die angegebene Datei ist eine Windows Installer-Datenbank, aber kein Mergemodul (fehlende ModuleSignature-Tabelle). |
|
Die Sprache wird vom Modul nicht unterstützt. |
|
Die Sprache wird vom Modul unterstützt, aber beim Anwenden der Transformation ist ein Fehler aufgetreten. |
|
Die Datei konnte nicht als Windows Installer-Datenbank geöffnet werden. |
|
Es ist bereits ein Modul geöffnet. Schließt zuerst das aktuelle Modul. |
|
Die Funktion wurde erfolgreich ausgeführt. |
Hinweise
Diese Funktion öffnet das Mergemodul im schreibgeschützten Modus (MSIDBOPEN_READONLY) und schließt andere Programme vom Schreiben in das Mergemodul aus, bis die CloseModule-Funktion aufgerufen wird. Ein Mergemodul muss geöffnet werden, bevor es zusammengeführt werden kann.
Das Installationsprogramm versucht, das Modul in der durch Sprache angegebenen Sprache oder in einer allgemeineren Sprache zu öffnen. Wenn beispielsweise 1033 durch den Language-Wert angegeben wird, wird ein Modul mit der Standardsprache 1033, 9 oder 0 in seiner Standardsprache geöffnet. Ein Language-Wert von 9 öffnet Module mit einer Standardsprache von 9 oder 0. Wenn die Standardsprache des Moduls die angegebenen Anforderungen nicht erfüllt, wird versucht, das Modul in die angeforderte Sprache zu transformieren. Wenn dies fehlschlägt, versucht das Installationsprogramm, das Modul in immer allgemeinere Sprachen zu transformieren, bis hin zu sprachneutralen Sprachen. Wenn keine der Transformationen erfolgreich ist, kann das Modul nicht geöffnet werden. In diesem Fall wird der Fehlerliste vom Typ msmErrorLanguageUnsupported ein Fehler hinzugefügt, und die Funktion gibt ERROR_INSTALL_LANGUAGE_UNSUPPORTED als HRESULT zurück.
Wenn beim Transformieren des Moduls in die gewünschte Sprache ein Fehler auftritt, wird ein Fehler vom Typ msmErrorLanguageFailed erstellt, und die Funktion gibt ERROR_INSTALL_TRANSFORM_FAILURE als HRESULT zurück.
Weitere Informationen finden Sie in der Type-Eigenschaft des Error-Objekts .
Das Öffnen eines Mergemoduls löscht alle Fehler, die noch nicht abgerufen wurden.
Anforderungen
Unterstützte Mindestversion (Client) | Mergemod.dll 1.0 oder höher |
Zielplattform | Windows |
Kopfzeile | mergemod.h |
DLL | Mergemod.dll |