Настраиваемые скрипты RAS
Разработчики могут создать библиотеку DLL с пользовательскими сценариями, которая находится на клиентском компьютере RAS. Эта библиотека DLL может взаимодействовать с сервером в процессе установки подключения.
Windows NT. Пользовательские скрипты недоступны.
Настройка библиотеки DLL
Чтобы настроить библиотеку DLL, создайте значение с именем CustomScriptDllPath в следующем разделе реестра:
HKEY_LOCAL_MACHINE
System
CurrentControlSet
Services
Rasman
Parameters
Это значение должно иметь тип REG_EXPAND_SZ. Значение должно содержать путь к библиотеке DLL пользовательских сценариев. Для каждого клиентского компьютера RAS поддерживается только одна библиотека DLL с пользовательскими сценариями.
Взаимодействие между сервером, RAS и библиотекой DLL Custom-Scripting
Библиотека DLL пользовательского скрипта должна экспортировать одну точку входа: RasCustomScriptExecute. RAS вызывает эту функцию в RASCS_Interactive состоянии процесса подключения. Состояние RASCS_Interactive приостановлено, что позволяет пользователю взаимодействовать с пользовательским интерфейсом, представленным библиотекой DLL пользовательских сценариев. Дополнительные сведения о состояниях подключения см. в разделе RASCONNSTATE .
RAS передает в качестве параметров функцию RasCustomScriptExecute :
- Дескриптор порта на клиентском компьютере, который используется для подключения.
- Строки, определяющие телефонную книгу и запись для подключения.
- RAS также передает дескриптор в окно, чтобы библиотека DLL могла представить пользовательский интерфейс.
- Набор указателей функций, которые библиотека DLL может использовать для взаимодействия с сервером.
Дополнительные сведения об этих параметрах см. в разделе RasCustomScriptExecute .
RAS передает указатель на структуру RASCUSTOMSCRIPTEXTENSIONS в качестве последнего параметра в RasCustomScriptExecute. Эта структура содержит указатель на функцию типа PFNRASSETCOMMSETTINGS. Библиотека DLL пользовательских сценариев вызывает эту функцию для изменения параметров связи на порте, используемом подключением.
RAS является посредником между сервером и библиотекой DLL пользовательских сценариев. Как правило, сервер инициирует диалоговое окно. Например, сервер может запросить имя пользователя и пароль пользователя.
При использовании пользовательских сценариев для установки подключения сервер не должен работать Windows NT 4.0 или Windows 2000.
Пользовательский интерфейс пользовательского скрипта должен поддерживать IDCANCEL
Если пользовательское средство набора номера отображает пользовательский интерфейс, пользовательский интерфейс должен поддерживать WM_COMMAND сообщений, где ЗНАЧЕНИЕ LOWORD(wParam) равно IDCANCEL.
Настройка подключения
Точку входа RasCustomScriptExecute можно вызвать из RasDialDlg или в Windows XP из RasDial.
Чтобы вызвать RasCustomScriptExecute из RasDialDlg, задайте параметр RASEO_CustomScript в записи телефонной книги для подключения. Описание параметров записи телефонной книги см. в элементе DWFOptionsв RASENTRY . Используйте функции RasGetEntryProperties и RasSetEntryProperties , чтобы задать этот параметр программным способом.
Windows XP: Чтобы вызвать RasCustomScriptExecute из RasDial, вызов RasDial должен указать структуру RASDIALEXTENSIONS , а в этой структуре должен быть указан флаг RDEOPT_UseCustomScripting. Кроме того, в записи телефонной книги для подключения должен быть указан параметр RASEO_CustomScript, как описано в предыдущем абзаце.
Вызов библиотеки DLL пользовательских сценариев
Если пользователь активирует подключение для записи телефонной книги, для RASEO_CustomScript настроенной, RAS вызывает библиотеку DLL пользовательских сценариев. В этом сценарии RAS вызывает библиотеку DLL пользовательских сценариев из RasDialDlg.
Чтобы вызвать библиотеку DLL с пользовательскими скриптами программным способом, установите подключение с помощью функции RasDialDlg . В Windows XP функция RasDial также вызывает библиотеку DLL пользовательских сценариев.