共用方式為


匯入安全字串函式Kernel-Mode

從 Windows XP 開始,核心模式安全字串程式庫可作為 Ntstrsafe.h 標頭檔中定義的內嵌函式集合。

若要使用核心模式安全字串函式

包含標頭檔,如下所示。

#include <ntstrsafe.h>

您只能使用位元組計數,或只提供字元計數安全字串函式。

只允許位元組計數函式

在包含 Ntstrsafe.h 標頭檔之前,請先在程式碼中包含下列這一行。

#define NTSTRSAFE_NO_CCH_FUNCTIONS

只允許字元計數函式

在包含 Ntstrsafe.h 標頭檔之前,請先在程式碼中包含下列這一行。

#define NTSTRSAFE_NO_CB_FUNCTIONS

您可以定義NTSTRSAFE_NO_CB_FUNCTIONS或NTSTRSAFE_NO_CCH_FUNCTIONS,但不能同時定義兩者。

您可以讓 UNICODE_STRING 結構函式無法使用。

若要讓UNICODE_STRING結構函式無法使用

在包含 Ntstrsafe.h 標頭檔之前,請先在程式碼中包含下列這一行。

#define NTSTRSAFE_NO_UNICODE_STRING_FUNCTIONS

任何 ANSI 或 Unicode 字串可以包含的字元數目上限為 NTSTRSAFE_MAX_CCH。 UNICODE_STRING結構可以包含的最大字元數是NTSTRSAFE_UNICODE_STRING_MAX_CCH。 這些常數定義于 Ntstrsafe.h 中。

您的驅動程式可以在包含 Ntstrsafe.h 之前,先在程式碼中包含下列幾行,將較小的值指派給NTSTRSAFE_MAX_CCH和NTSTRSAFE_UNICODE_STRING_MAX_CCH。

#define NTSTRSAFE_MAX_CCH  <new-value>
#define NTSTRSAFE_UNICODE_STRING_MAX_CCH  <new-value>

Ntstrsafe.h 中的指示詞會確認您的新值不大於預設值。