Aufrufen von Skripts

Im vorherige Abschnitt, Verwenden von austauschbaren Parametern (der Kanzler Präprozessor), Ersatz-Karten diskutiert und eingeführt zwei Methoden des Registrators, AddReplacement und ClearReplacements. Der Kanzler hat acht andere Methoden, die spezifisch für die Skripterstellung. Alle acht dieser Methoden werden in der folgenden Tabelle beschrieben und den Kanzler auf ein bestimmtes Skript aufrufen.

Methode Beschreibung der Syntax
ResourceRegister HRESULT ResourceRegister (LPCOLESTR ResFileName, UINT nID, LPCOLESTR SzType );

Registriert das Skript in ein Modul Ressource enthalten. ResFileName gibt den UNC-Pfad für das Modul selbst. nID und SzType enthalten die Ressourcen-ID und Typ,.

ResourceUnregister HRESULT ResourceUnregister (LPCOLESTR ResFileName, UINT nID, LPCOLESTR SzType );

Hebt die Registrierung des Skripts in einem Modul Ressource enthalten. ResFileName gibt den UNC-Pfad für das Modul selbst. nID und SzType enthalten die Ressourcen-ID und Typ,.

ResourceRegisterSz HRESULT ResourceRegisterSz (LPCOLESTR ResFileName, LPCOLESTR SzID, LPCOLESTR SzType );

Registriert das Skript in ein Modul Ressource enthalten. ResFileName gibt den UNC-Pfad für das Modul selbst. SzID und SzType enthalten die Zeichenfolge Ressourcenkennung und Typ,.

ResourceUnregisterSz HRESULT ResourceUnregisterSz (LPCOLESTR ResFileName, LPCOLESTR SzID, LPCOLESTR SzType );

Hebt die Registrierung des Skripts in einem Modul Ressource enthalten. ResFileName gibt den UNC-Pfad für das Modul selbst. SzID und SzType enthalten die Zeichenfolge Ressourcenkennung und Typ,.

FileRegister HRESULT FileRegister (LPCOLESTR Dateiname );

Registriert das Skript in einer Datei. FileName ist ein UNC-Pfad zu einer Datei, die ein Ressourcenskript enthält (oder ist).

FileUnregister HRESULT FileUnregister (LPCOLESTR Dateiname );

Hebt die Registrierung des Skripts in eine Datei. FileName ist ein UNC-Pfad zu einer Datei, die ein Ressourcenskript enthält (oder ist).

StringRegister HRESULT StringRegister (LPCOLESTR Daten );

Registriert das Skript in eine Zeichenfolge. Daten enthält das Skript selbst.

StringUnregister HRESULT StringUnregister (LPCOLESTR Daten );

Hebt die Registrierung des Skripts in eine Zeichenfolge. Daten enthält das Skript selbst.


ATL verwendet die ersten beiden Methoden gezeigt in der Tabelle (ResourceRegister und ResourceUnregister) in atlimpl.cpp:

LPCOLESTR SzType = OLESTR("REGISTRY");
GetModuleFileName (pM-Gt; M_hInstResource, SzModule, _MAX_PATH);
LPOLESTR PszModule = T2OLE(szModule);

Wenn (HIWORD(lpszRes)==0)
{
   Wenn (bRegistrieren Sie sich)
     hRes = p-> ResourceRegister (PszModule, ((UINT)LOWORD((DWORD)lpszRes)), SzType);
   anderes
     hRes = p-> ResourceUnregister (PszModule, ((UINT)LOWORD((DWORD)lpszRes)), SzType);
}
anderes
{
   Wenn (bRegistrieren Sie sich)
     hRes = p-> ResourceRegisterSz (PszModule, LpszRes, SzType);
   anderes
     hRes = p-> ResourceUnregisterSz (PszModule, LpszRes, SzType);
}

Beachten Sie, dass szModule enthält den Wert von GetModuleFileName erworben.

Die nächsten beiden Methoden gezeigt in der Tabelle, ResourceRegisterSz und ResourceUnregisterSz, ResourceRegister und ResourceUnregisterähnlich sind, aber können Sie einen Zeichenfolgenbezeichner angeben.

Die Methoden FileRegister und FileUnregister sind nützlich, wenn Sie das Skript in eine Ressource nicht möchten oder wenn Sie das Skript in einer eigenen Datei. Die Methoden StringRegister und StringUnregister ermöglichen die RGS-Datei in ein dynamisch zugeordneter Zeichenfolgen gespeichert werden.

Index