Ссылки на скрипты

Предыдущем разделе, С помощью заменяемых параметров (регистратор препроцессора), обсудил замена карты и представил два регистратора, AddReplacement и ClearReplacements. Регистратор имеет восемь других конкретных сценариев для методов. Все восемь из этих методов, описаны в следующей таблице и вызывать регистратора на конкретном сценарии.

Метод Синтаксис/описание
ResourceRegister HRESULT ResourceRegister (LPCOLESTR resFileName, UINT nID, LPCOLESTR szType );

Регистрирует сценарий, содержащийся в ресурсе модуля. resFileName указывает UNC-путь к сам модуль. nID и szType содержат ресурса Идентификатор и тип, соответственно.

ResourceUnregister HRESULT ResourceUnregister (LPCOLESTR resFileName, UINT nID, LPCOLESTR szType );

Отменяет регистрацию сценарий, содержащийся в ресурсе модуля. resFileName указывает UNC-путь к сам модуль. nID и szType содержат ресурса Идентификатор и тип, соответственно.

ResourceRegisterSz HRESULT ResourceRegisterSz (LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType );

Регистрирует сценарий, содержащийся в ресурсе модуля. resFileName указывает UNC-путь к сам модуль. szID и szType содержат идентификатор строки ресурса и тип, соответственно.

ResourceUnregisterSz HRESULT ResourceUnregisterSz (LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType );

Отменяет регистрацию сценарий, содержащийся в ресурсе модуля. resFileName указывает UNC-путь к сам модуль. szID и szType содержат идентификатор строки ресурса и тип, соответственно.

FileRegister HRESULT FileRegister (LPCOLESTR имя файла );

Регистрирует сценарий в файле. имя файла является UNC-путь к файлу, который содержит (или) сценария ресурсов.

FileUnregister HRESULT FileUnregister (LPCOLESTR имя файла );

Отменяет регистрацию сценарий в файле. имя файла является UNC-путь к файлу, который содержит (или) сценария ресурсов.

StringRegister HRESULT StringRegister (LPCOLESTR данных );

Регистрирует сценарий в строке. данные содержат сам скрипт.

StringUnregister HRESULT StringUnregister (LPCOLESTR данных );

Отменяет регистрацию сценарий в строку. данные содержат сам скрипт.


ATL использует два метода, показанные в таблице (ResourceRegister и ResourceUnregister) в atlimpl.cpp:

LPCOLESTR szType = OLESTR("REGISTRY");
GetModuleFileName (pM-gt m_hInstResource, szModule, _MAX_PATH);
LPOLESTR pszModule = T2OLE(szModule);

Если (HIWORD(lpszRes)==0)
{
   Если (bЗарегистрируйтесь участия)
     hRes = p - > ResourceRegister (pszModule, ((UINT)LOWORD((DWORD)lpszRes)), szType);
   остальное
     hRes = p - > ResourceUnregister (pszModule, ((UINT)LOWORD((DWORD)lpszRes)), szType);
}
остальное
{
   Если (bЗарегистрируйтесь участия)
     hRes = p - > ResourceRegisterSz (pszModule, lpszRes, szType);
   остальное
     hRes = p - > ResourceUnregisterSz (pszModule, lpszRes, szType);
}

Обратите внимание, что szModule содержит значение из GetModuleFileName.

Два следующих методов, указанных в таблице, ResourceRegisterSz и ResourceUnregisterSz, похожие на ResourceRegister и ResourceUnregister, но можно указать идентификатор строки.

Методы FileRegister и FileUnregister являются полезными, если не требуется сценарий в ресурсе или если вы хотите, чтобы сценарий в собственном файле. Методы StringRegister и StringUnregister позволяют RGS-файл для хранения в динамически выделенные строки.

Index