sepdcrec 函式會取得設定資訊。 應用程式呼叫此函式以取得使用者登入網路作業系統時所使用的 3270 設定資訊。 呼叫同時也會在服務表中註冊此使用者名稱。
語法
USHORT sepdcrec(
UCHAR *pBuffer,
USHORT length,
USHORT *numbytes
);
參數
pBuffer
指向應用程式提供的緩衝區指標,回傳配置資訊。
長度
所提供的緩衝區大小。
數字位元組
主機整合伺服器(Host Integration Server)用來回傳緩衝區中回傳的資訊位元組數。
傳回值
NO_ERROR (0)
OK.
NOCSSRVR(1)
沒有設定檔伺服器可用。
諾德格雷克(2)
在設定檔中找不到診斷紀錄。
NOUSRREC(3)
在設定檔中找不到此使用者的使用者紀錄。
BUF2SMAL (4)
提供的緩衝區太小。
NONOS(5)
網路作業系統尚未啟動。
NOTLOGON(6)
使用者並未登入網路作業系統。
讀者(7)
無法從設定檔讀取。
NONAP(8)
網路接取計畫(NAP)尚未啟動。
MAXAPP(9)
僅限 Windows:最大同時進行應用程式數量超過。
ERROR_SERVER(14)
遠端程序呼叫(RPC)伺服器端發生錯誤。
ERROR_LOCAL_FAILURE(15)
RPC 本地端出錯。
備註
sbpuinit 函式應永遠在其他 DL-BASE 或動態存取模組(DMOD)入口點之前被呼叫,唯獨 SNAGetVersion 除外。 對於新模擬器, sepdcrec 應該在 sbpuinit 後面呼叫。 (由於舊模擬器使用的呼叫順序,仍支援先呼叫 sepdcrec 再呼叫 sbpuinit ,但此順序不建議。)
成功返回後,緩衝區會包含指向相應 3270 使用者記錄與診斷記錄的指標,接著是記錄本身。 其格式如下:
TECWRKUS *pUserRecord,
TEDIAGNS *pDiagRecord
);
(UserRecord—可變長度)
(診斷紀錄)
這兩筆紀錄應使用提供的指標存取。
請參閱 設定資訊 ,了解這些紀錄的格式及應用程式如何使用設定檔資訊。
若設定檔中無此使用者的 3270 使用者紀錄,或設定檔中找不到診斷記錄(內部錯誤),應用程式應終止並不允許使用者使用 3270 模擬。 主機整合伺服器的錯誤日誌訊息COM0438與COM0437可用來回報這些故障。
若所提供的緩衝區容量過小,則緩衝區內容未定義,不應檢查,但 numbytes 參數會包含可用資訊的總位元組數(即兩個指標的大小加上兩個組態記錄)。 應用程式應該會用至少這個大小的緩衝區重試。