srv_message_handler (擴充預存程式 API)
適用於:SQL Server
重要
SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 CLR 整合。
呼叫已安裝的擴充預存程式 API 訊息處理程式。 此函式通常用來從擴充預存程式呼叫 sql Server Microsoft,以在 SQL Server 錯誤記錄檔或Microsoft Windows 應用程式記錄檔中記錄錯誤(由擴充預存程式定義)。
語法
int srv_message_handler (
SRV_PROC *
srvproc
,
int
errornum
,
BYTE
severity
,
BYTE
state
,
int
oserrnum
,
char *
errtext
,
int
errtextlen
,
char *
oserrtext
,
int
oserrtextlen
);
引數
srvproc
這是特定用戶端連接句柄之SRV_PROC結構的指標。 srvproc 參數包含用來管理應用程式與客戶端之間通訊和資料的資訊。
errornum
這是擴充預存程式所定義的錯誤號碼。 這個數字必須介於 50,001 到 2,147,483,647。
severity
這是錯誤的標準 SQL Server 嚴重性值。 這個數字必須介於 0 到 24。
state
這是錯誤的 SQL Server 狀態值。
oserrnum
這是操作系統錯誤號碼。 這個自變數會被忽略。
errtext
這是擴充預存程式錯誤錯誤 號碼的描述。
errtextlen
這是擴充預存程式錯誤字串 errtext 的長度。
oserrtext
這是操作系統錯誤 oserrnum 的描述。 這個自變數會被忽略。
oserrtextlen
這是操作系統錯誤字串 oserrtext 的長度。
傳回
SUCCEED 或FAIL。
備註
srv_message_handler函式可讓擴充預存程式與 SQL Server 的集中式錯誤記錄和報告功能整合。 您可以針對擴充預存程式的事件建立 SQL Server 警示,而 SQL Server Agent 會監視這些警示條件。
如果錯誤訊息較長,則會截斷為 412 個字節。
重要
您應該徹底檢閱擴充預存程式的原始程式碼,而且您應該先測試已編譯的 DLL,再於實際執行伺服器上安裝它們。 如需安全性檢閱和測試的相關信息,請參閱此 Microsoft網站。