Попереднього розділу, За допомогою параметрів змінних (реєстратора препроцесор), обговорювали заміни карт і представив двох методів у реєстроутримувача, AddReplacement і ClearReplacements. Реєстратор має вісім інших методів для створення сценаріїв. Всі вісім способів описано в нижченаведеній таблиці та викликати реєстратора на конкретного сценарію.
| Метод | Синтаксис/опис |
| ResourceRegister | HRESULT ResourceRegister (LPCOLESTR resFileName, UINT nID, LPCOLESTR szType ); Регістри сценаріїв, містяться в в модуль ресурсів. resFileName вказує UNC-шлях до модуля, сама по собі. nID і szType містять ресурсів ID і типу, відповідно. |
| ResourceUnregister | HRESULT ResourceUnregister (LPCOLESTR resFileName, UINT nID, LPCOLESTR szType ); Unregisters сценарію, що містяться в модуль, ресурс. resFileName вказує UNC-шлях до модуля, сама по собі. nID і szType містять ресурсів ID і типу, відповідно. |
| ResourceRegisterSz | HRESULT ResourceRegisterSz (LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType ); Регістри сценаріїв, містяться в в модуль ресурсів. resFileName вказує UNC-шлях до модуля, сама по собі. szID і szType містять ідентифікатор рядка ресурсів і типу, відповідно. |
| ResourceUnregisterSz | HRESULT ResourceUnregisterSz (LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType ); Unregisters сценарію, що містяться в модуль, ресурс. resFileName вказує UNC-шлях до модуля, сама по собі. szID і szType містять ідентифікатор рядка ресурсів і типу, відповідно. |
| FileRegister | HRESULT FileRegister (LPCOLESTR ім'я файлу ); Регістри сценарій у файлі. ім'я файлу є UNC-шлях до файлу, що містить (або) ресурс сценарію. |
| FileUnregister | HRESULT FileUnregister (LPCOLESTR ім'я файлу ); Unregisters сценарію у файлі. ім'я файлу є UNC-шлях до файлу, що містить (або) ресурс сценарію. |
| StringRegister | HRESULT StringRegister (LPCOLESTR даних ); Регістри скрипт в рядку. дані містять самих скриптом. |
| StringUnregister | HRESULT StringUnregister (LPCOLESTR даних ); Unregisters сценарію в рядку. дані містять самих скриптом. |
ATL використовує перші два методи показано в таблиці (ResourceRegister і ResourceUnregister) в atlimpl.cpp:
LPCOLESTR-szType = OLESTR("REGISTRY");
GetModuleFileName (вечора gt m_hInstResource, szModule, _MAX_PATH);
LPOLESTR-pszModule = T2OLE(szModule);
Якщо (HIWORD(lpszRes)==0)
{
Якщо (bRegister)
hRes = p - > ResourceRegister (pszModule, ((UINT)LOWORD((DWORD)lpszRes)), szType);
інше
hRes = p - > ResourceUnregister (pszModule, ((UINT)LOWORD((DWORD)lpszRes)), szType);
}
інше
{
Якщо (bRegister)
hRes = p - > ResourceRegisterSz (pszModule, lpszRes, szType);
інше
hRes = p - > ResourceUnregisterSz (pszModule, lpszRes, szType);
}
Зверніть увагу, що szModule містить значення, які придбали від GetModuleFileName.
Наступні два методи показано в таблиці, ResourceRegisterSz і ResourceUnregisterSz, подібні до ResourceRegister і ResourceUnregister, але дозволяють визначити ідентифікатор рядка.
Методи, FileRegister і FileUnregister є корисними, якщо ви не хочете, щоб сценарій в ресурсу, або якщо ви хочете, щоб сценарій в окремий файл. Методи, StringRegister і StringUnregister дозволити збереження у динамічно розподіляється рядок файлу .rgs.