Delen via


Aangepast actietype 1

Deze aangepaste actie roept een DLL (Dynamic Link Library) aan die is geschreven in C of C++.

Bron

Het DLL-bestand wordt gegenereerd op basis van een tijdelijke binaire stroom. Het veld Bron van de CustomAction-tabel bevat een sleutel voor de binaire tabel.

De kolom Gegevens in de binaire tabel bevat de stroomgegevens. Voor elke rij wordt een afzonderlijke stream toegewezen. Nieuwe binaire gegevens kunnen vanuit een bestand worden ingevoegd met behulp van MsiRecordSetStream- gevolgd door MsiViewModify- om de record in de tabel in te voegen. Wanneer de aangepaste actie wordt aangeroepen, worden de stroomgegevens gekopieerd naar een tijdelijk bestand, dat vervolgens wordt verwerkt, afhankelijk van het type aangepaste actie.

Typewaarde

Neem de volgende vlag-bits op in de kolom Type van de CustomAction-tabel om het numerieke basistype op te geven.

Constanten Hexadecimaal Decimaal
msidbCustomActionTypeDll + msidbCustomActionTypeBinaryData 0x001 1

 

Doel

Het DLL-bestand wordt aangeroepen via het toegangspunt dat is genoemd in het veld Doel van de CustomAction-tabel, waarbij één argument wordt doorgegeven aan de huidige installatiesessie. De naam van het toegangspunt dat in de tabel is opgegeven, moet overeenkomen met de naam die is geëxporteerd uit het DLL-bestand. Houd er rekening mee dat als de invoerfunctie niet is opgegeven door een . DEF-bestand of door een /EXPORT: linkerspecificatie, de naam kan een voorlooponderstrepingsteken en een achtervoegsel '@4' hebben. De aangeroepen functie moet de __stdcall aanroepende conventie opgeven.

Opties voor retourverwerking

Voeg optionele vlag-bits toe in de kolom Type van de CustomAction-tabel om retourverwerkingsopties op te geven. Zie Aangepaste opties voor retourverwerkingvoor een beschrijving van de opties en waarden.

Opties voor het plannen van de uitvoering

Voeg optionele vlag-bits toe in de kolom Type van de CustomAction-tabel om de planningsopties voor de uitvoering op te geven. Deze opties bepalen de meerdere uitvoering van aangepaste acties. Zie Opties voor het plannen van aangepaste actiesvoor een beschrijving van de opties.

In-Script uitvoeringsopties

Voeg optionele vlag-bits toe in de kolom Type van de CustomAction-tabel om een optie voor het uitvoeren van scripts op te geven. Met deze opties kopieert u de actiecode naar het uitvoerings-, terugdraai- of doorvoerscript. Zie Aangepaste actie In-Script uitvoeringsoptiesvoor een beschrijving van de opties.

Retourwaarden

Zie aangepaste actie retourwaarden.

Opmerkingen

Een aangepaste actie die een DLL (Dynamic Link Library) aanroept, vereist een ingang voor de installatiesessie. Als dit ook een aangepaste actie voor de uitgestelde uitvoering is, bestaat de sessie mogelijk niet meer tijdens het uitvoeren van het installatiescript. Zie Contextinformatie verkrijgen voor aangepaste uitvoeringsactiesvoor informatie over hoe een aangepaste actie van dit type contextinformatie kan verkrijgen.

Wanneer een databasetabel wordt geëxporteerd, wordt elke stream geschreven als een afzonderlijk bestand in de submap die naar de tabel is vernoemd, met behulp van de primaire sleutel als bestandsnaam (naamkolom voor de binaire tabel), met de standaardextensie '.ibd'. De naam moet de 8.3-indeling gebruiken als het bestandssysteem of versiebeheersysteem geen lange bestandsnamen ondersteunt. Het permanente archiefbestand vervangt de stroomgegevens door de gebruikte bestandsnaam, zodat de gegevens zich kunnen bevinden wanneer de tabel wordt geïmporteerd.

Custom_Actions

Dynamic-Link bibliotheken

contextinformatie verkrijgen voor aangepaste acties voor uitgestelde uitvoering