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.