Megosztás a következőn keresztül:


SelfReg-tábla

A SelfReg tábla információkat tartalmaz azokról a modulokról, amelyeket önállóan kell regisztrálni. A telepítő meghívja a DllRegisterServer függvényt a modul telepítése során; meghívja DllUnregisterServer a modul eltávolítása során. A telepítő nem regisztrálja az EXE-fájlokat.

A SelfReg tábla a következő oszlopokat tartalmazza.

Oszlop Típus Kulcs Nullázható
Fájl_ azonosító Y N
Költség egész szám N Y

 

Oszlopok

File_

A külső kulcs a Fájltábla első oszlopába a regisztrálandó modult jelzi.

költség

A modul bájtban való regisztrálásának költsége. Ennek nem negatív számnak kell lennie.

Megjegyzések

A telepítési csomag szerzőinek kifejezetten ajánlott az önregisztráció használata. Ehelyett a modulokat a telepítő által erre a célra megadott egy vagy több tábla megírásával kell regisztrálniuk. További információ: beállításjegyzéktábla-csoport. A központi telepítőszolgáltatás számos előnye elveszik az önregisztrációval, mivel az önregisztrációs rutinok általában elrejtik a kritikus konfigurációs információkat. Az önregisztráció elkerülésének okai a következők:

  • Az önregisztrációs modulokkal rendelkező telepítés visszaállítását nem lehet biztonságosan elvégezni DllUnregisterServer használatával, mert nem lehet megmondani, hogy az önregisztrációs kulcsokat egy másik funkció vagy alkalmazás használja-e.
  • A hirdetés használatának lehetősége csökken, ha az osztály- vagy bővítménykiszolgáló-regisztráció önregisztrációs rutinokon belül történik.
  • A telepítő automatikusan kezeli a HKCR-kulcsokat a beállításjegyzék-táblákban felhasználónkénti vagy gépenkénti telepítés esetén is. DllRegisterServer rutinok jelenleg nem támogatják a felhasználónkénti HKCR-kulcsok fogalmát.
  • Ha több felhasználó is használ egy saját regisztrált alkalmazást ugyanazon a számítógépen, minden felhasználónak az első futtatáskor telepítenie kell az alkalmazást. Ellenkező esetben a telepítő nem tudja könnyen megállapítani, hogy a megfelelő HKCU beállításkulcsok léteznek-e.
  • A DllRegisterServer megtagadható a hálózati erőforrásokhoz, például a típustárakhoz való hozzáférés, ha egy összetevő futtatási forrásként van megadva, és szerepel a SelfReg táblában. Ez azt okozhatja, hogy az összetevő telepítése nem sikerül egy rendszergazdai telepítés során.
  • Az önregisztráló DLL-ek érzékenyebbek a kódolási hibákra, mivel az DllRegisterServer számára szükséges új kód általában minden DLL-hez eltérő. Ehelyett használja az adatbázisban található beállításjegyzék-táblákat a telepítő által biztosított meglévő kód előnyeinek kihasználásához.
  • Az önregisztráló DLL-ek néha olyan kiegészítő DLL-ekhez is kapcsolódhatnak, amelyek nem vagy nem megfelelő verziójúak. Ezzel szemben a telepítő regisztrálhatja a DLL-eket a beállításjegyzék-táblák használatával, és nem függ a rendszer aktuális állapotától.

Jegyzet

Nem adhatja meg, hogy a telepítő milyen sorrendben regisztrálja vagy törölje az önregisztráló DLL-eket a SelfRegModules és SelfUnRegModules műveletek használatával. Lásd Az önregisztrációssorrendjének megadása című témakört.

 

Érvényesítés

ICE03
ICE06
ICE32