共用方式為


ConfigurePortUI 函式 (winsplp.h)

埠監視器 UI DLL 的 ConfigurePortUI 函式會從使用者取得埠組態資訊,並將其傳送至埠監視器伺服器 DLL。

語法

BOOL WINAPI pfnConfigurePortUI(
  _In_opt_ PCWSTR pszServer,
  _In_     HWND   hWnd,
  _In_     PCWSTR pszPortName
);

參數

[in, optional] pszServer

呼叫端提供的字串指標,代表伺服器名稱,如果列印機為本機,則為 NULL 。 (埠監視器可以忽略此參數。)

[in] hWnd

呼叫端提供的視窗句柄,該視窗應做為對話框的父代。 如果 為 NULL,則不應該顯示任何對話框。

[in] pszPortName

呼叫端提供的字串指標,代表要設定的埠名稱。

傳回值

如果作業成功,函式應該會傳回 TRUE。 否則應該會傳回 FALSE。 如果不支援作業,或使用者 (取消作業,方法是選取 CANCEL 或選取 [確定],而不變更組態參數) ,則函式應該呼叫 SetLastError (ERROR_CANCELLED) ,然後傳回 FALSE

備註

需要埠監視器 UI DLL 才能定義 ConfigurePortUI 函式,並在 MONITORUI 結構中包含函式的位址。

用戶端的後台處理程式會從其 ConfigurePort 函式內呼叫 ConfigurePortUI, (Microsoft Windows SDK 檔) 中所述。 ConfigurePortUI 收到的自變數是 ConfigurePort 所收到的自變數。

函式應該執行下列作業:

  1. 呼叫 OpenPrinter,以下列格式指定印表機名稱:
    \\ServerName\,XcvPortPortName

    其中 ServerNamePortName 是接收為 ConfigurePortUI 函式自變數的伺服器和埠名稱。

    呼叫 OpenPrinter 需要PRINTER_DEFAULTS結構,如 Windows SDK 檔中所述。 結構的 DesiredAccess 成員必須設定為 SERVER_ACCESS_ADMINISTER。 其 pDatatypepDevMode 成員可以是 NULL

    此呼叫會導致呼叫列印監視器伺服器 DLL 的 XcvOpenPort 函 式。

  2. 藉由顯示對話框,從使用者取得埠組態參數。
  3. 呼叫 XcvData 一或多次,指定自訂的數據名稱字串,以將每個組態參數傳送至伺服器 DLL。 每個 XcvData 呼叫都會呼叫伺服器的 XcvDataPort 函式。
  4. 呼叫 ClosePrinter,指定從 OpenPrinter 收到的句柄。 這會導致呼叫伺服器 DLL 的 XcvClosePort 函 式。

規格需求

需求
目標平台 桌面
標頭 winsplp.h (包含 Winsplp.h)
程式庫 NtosKrnl.exe

另請參閱

XcvOpenPort

XcvClosePort

XcvDataPort

XcvData