sepdcrec

sepdcrec 函式會取得組態資訊。 應用程式會呼叫此函式,以取得使用者登入網路作業系統之名稱的 3270 組態資訊。 呼叫也會在服務資料表中註冊此使用者名稱。

語法

  
USHORT sepdcrec(   
UCHAR *pBuffer,  
USHORT length,  
USHORT *numbytes  
);  

參數

pBuffer
應用程式提供之緩衝區的指標,其中會傳回組態資訊。

length (長度)
提供緩衝區的大小。

numbytes
主機整合伺服器用來傳回緩衝區中傳回的資訊位元組數目。

傳回值

NO_ERROR (0)
正常。

NOCSSRVR (1)
沒有可用的組態檔伺服器。

NODGNREC (2)
組態檔中找不到診斷記錄。

NOUSRREC (3)
此使用者的組態檔中找不到任何使用者記錄。

BUF2SMAL (4)
提供的緩衝區太小。

NONOS (5)
網路作業系統未啟動。

NOTLOGON (6)
使用者未登入網路作業系統。

READERR (7)
無法從組態檔讀取。

NONAP (8)
未啟動網路存取計畫 (NAP) 。

MAXAPP (9)
僅限 Windows:已超過並行應用程式的數目上限。

ERROR_SERVER (14)
遠端程序呼叫的伺服器端發生錯誤, (RPC) 。

ERROR_LOCAL_FAILURE (15)
RPC 的本機端發生錯誤。

備註

除了SNAGetVersion以外,應該一律在任何其他 DL-BASE 或 Dynamic Access Module (DMOD) 進入點之前呼叫sbpuinit函式。 針對新的模擬器,應該在sbpuinit之後呼叫sepdcrec。 (由於舊版模擬器中使用的呼叫順序,因此仍支援sbpuinit之前的sepdcrec呼叫,但不建議使用此順序。)

成功傳回時,緩衝區會包含適當 3270 使用者記錄和診斷記錄的指標,後面接著記錄本身。 格式如下:

TECWRKUS *pUserRecord,   
TEDIAGNS *pDiagRecord   
);  

(UserRecord— 可變長度)

(DiagRecord)

應該使用提供的指標來存取這兩筆記錄。

如需這些記錄格式的詳細資料,以及應用程式如何使用組態檔資訊的詳細資訊,請參閱設定資訊。

如果組態檔中沒有此使用者的 3270 筆使用者記錄,或在組態檔中找到診斷記錄 (內部錯誤) ,則應用程式應該終止,且不允許使用者使用 3270 模擬。 主機整合伺服器錯誤記錄檔訊息COM0438和COM0437可用來報告這些失敗。

如果提供的緩衝區太小而無法傳回的資訊,則緩衝區的內容是未定義且不應該檢查,但 numbytes 參數會包含可用資訊的位元組總數 (,也就是兩個指標的大小加上兩個組態記錄) 。 應用程式應該以至少此大小的緩衝區重試。