RAS 自訂腳本

開發人員可以建立位於 RAS 用戶端電腦上的自訂腳本 DLL。 此 DLL 可以在建立連線的過程中與伺服器通訊。

Windows NT:無法使用自訂腳本。

設定 DLL

若要設定 DLL,請使用下列登錄機碼下的名稱 CustomScriptDllPath 來建立值:

HKEY_LOCAL_MACHINE
   System
      CurrentControlSet
         Services
            Rasman
               Parameters

此值的類型應該是 REG_EXPAND_SZ。 值應該包含自訂腳本 DLL 的路徑。 每個 RAS 用戶端電腦只支援一個自訂腳本 DLL。

伺服器、RAS 與 Custom-Scripting DLL 之間的互動

自訂腳本 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 或從 RasDial叫用,或在 Windows XP 上從RasDial叫用。

若要從RasDialDlg叫用RasCustomScriptExecute,請在連線的電話簿專案中設定 [RASEO_CustomScript] 選項。 如需電話簿輸入選項的描述,請參閱RASENTRYdwfOptions成員。 使用 RasGetEntryPropertiesRasSetEntryProperties 函式,以程式設計方式設定此選項。

Windowsxp:若要從RasDial叫用RasCustomScriptExecuteRasDial的呼叫必須指定RASDIALEXTENSIONS結構,而且此結構必須指定RDEOPT_UseCustomScripting旗標。 此外,連線的電話簿專案必須指定上一個段落中所述的RASEO_CustomScript選項。

叫用自訂腳本 DLL

如果使用者針對已設定RASEO_CustomScript的電話簿專案啟用連線,RAS 會叫用自訂腳本 DLL。 在此案例中,RAS 會從 RasDialDlg叫用自訂腳本 DLL。

若要以程式設計方式叫用自訂腳本 DLL,請使用 RasDialDlg 函式建立連線。 在 Windows XP 上, RasDial 函式也會叫用自訂腳本 DLL。