Udostępnij przez


Powiadomienia (interfejs API instalacji)

Powiadomienia to wartości wysyłane przez funkcję instalatora do procedury wywołania zwrotnego w celu określenia stanu lub zdarzenia. Dwa parametry, Param1 i Param2, są wysyłane z powiadomieniem i zawierają dodatkowe informacje istotne dla powiadomienia.

Procedury wywołania zwrotnego przetwarza powiadomienie i zwracają niepodpisaną liczbę całkowitą do funkcji setup. W zależności od funkcji konfiguracji można użyć tej wartości, aby określić operację lub wybór użytkownika lub zignorować ją.

Funkcje konfiguracji wysyłają powiadomienia do procedur wywołania zwrotnego przy użyciu następującej składni.

MsgHandler(          //the specified callback routine
    Context,         //context used by the callback routine
    Notification,    //notification code
    Param1,          //additional notification information
    Param2           //additional notification information
);

Parametr Context jest wskaźnikiem pustki do zmiennej kontekstowej lub struktury, której procedury wywołania zwrotnego mogą używać do przechowywania informacji, które muszą być utrwalane między kolejnymi wywołaniami procedury wywołania zwrotnego.

Ponieważ rutyna wywołania zwrotnego określa implementację kontekstu i nigdy nie jest przywoływane ani zmieniane przez funkcje konfiguracji, kontekst nie jest udokumentowany w materiale referencyjnym dla komunikatów powiadomień, które następują po nim.

Parametr Notification określa niepodpisaną wartość całkowitą zdarzenia lub stanu, które powoduje wywołanie procedury wywołania zwrotnego przez funkcję instalatora.

Param1 i Param2 są opcjonalnymi parametrami, które mogą zawierać dodatkowe informacje istotne dla powiadomienia. Te parametry są liczbami całkowitymi bez znaku. Jeśli Param1 lub Param2 zwracają informacje, które nie są niepodpisaną liczbą całkowitą, jest rzutowany na niepodpisaną liczbę całkowitą i musi zostać ponownie przekształcony do oryginalnego typu danych, zanim będzie można go użyć w procedurze wywołania zwrotnego.

Nuta

Następujące powiadomienia reprezentują każde powiadomienie używane przez funkcje konfiguracji. Poszczególne funkcje używają podzbioru tych powiadomień. Innymi słowy, nie każde powiadomienie jest używane przez każdą funkcję.

 

Następujące powiadomienia są używane przez funkcje konfiguracji.

Powiadomienie Opis
SPFILENOTIFY_COPYERROR Wystąpił błąd podczas operacji kopiowania plików.
SPFILENOTIFY_DELETEERROR Wystąpił błąd podczas operacji usuwania pliku.
SPFILENOTIFY_ENDCOPY Zakończono operację kopiowania plików.
SPFILENOTIFY_ENDDELETE Operacja usuwania pliku została zakończona.
SPFILENOTIFY_ENDQUEUE Kolejka zakończyła zatwierdzanie.
SPFILENOTIFY_ENDREGISTRATION Rejestracja lub wyrejestrowanie pliku zostało zakończone.
SPFILENOTIFY_ENDRENAME Operacja zmiany nazwy pliku została zakończona.
SPFILENOTIFY_ENDSUBQUEUE Zakończono kolejkę podrzędną (kopiowanie, zmienianie nazwy lub usuwanie).
SPFILENOTIFY_FILEEXTRACTED Plik został wyodrębniony z pliku cabinet.
SPFILENOTIFY_FILEINCABINET W szafie napotkano plik.
SPFILENOTIFY_FILEOPDELAYED Plik był używany, a bieżąca operacja została opóźniona do momentu ponownego uruchomienia systemu.
SPFILENOTIFY_LANGMISMATCH Język bieżącej operacji jest niezgodny z językiem systemowym.
SPFILENOTIFY_NEEDMEDIA Wymagany jest nowy nośnik źródłowy.
SPFILENOTIFY_NEEDNEWCABINET Bieżący plik jest kontynuowany w następnym gabinecie.
SPFILENOTIFY_QUEUESCAN Węzeł w kolejce plików został przeskanowany.
SPFILENOTIFY_QUEUESCAN_EX Węzeł w kolejce plików został przeskanowany.
SPFILENOTIFY_QUEUESCAN_SIGNERINFO Węzeł w kolejce plików został przeskanowany.
SPFILENOTIFY_RENAMEERROR Wystąpił błąd podczas operacji zmiany nazwy pliku.
SPFILENOTIFY_STARTCOPY Rozpoczęto operację kopiowania plików.
SPFILENOTIFY_STARTDELETE Rozpoczęto operację usuwania plików.
SPFILENOTIFY_STARTQUEUE Kolejka zaczęła zatwierdzać.
SPFILENOTIFY_STARTREGISTRATION Rozpoczęto rejestrację lub wyrejestrowanie pliku.
SPFILENOTIFY_STARTRENAME Rozpoczęto operację zmiany nazwy pliku.
SPFILENOTIFY_STARTSUBQUEUE Rozpoczęto kolejkę podrzędną (kopiowanie, zmienianie nazwy lub usuwanie).
SPFILENOTIFY_TARGETEXISTS Kopia określonego pliku już istnieje w obiekcie docelowym.
SPFILENOTIFY_TARGETNEWER Nowsza wersja określonego pliku istnieje w lokalizacji docelowej.