Importieren von Kernel-Mode sicheren Zeichenfolgenfunktionen
Ab Windows XP steht die Bibliothek für sichere Zeichenfolgen im Kernelmodus als Sammlung von Inlinefunktionen zur Verfügung, die in der Ntstrsafe.h-Headerdatei definiert sind.
So verwenden Sie die Sicheren Zeichenfolgenfunktionen im Kernelmodus
Schließen Sie die Headerdatei wie gezeigt ein.
#include <ntstrsafe.h>
Sie können nur die bytegezählten oder nur die zeichengezählten sicheren Zeichenfolgenfunktionen verfügbar machen.
So lassen Sie nur Byte zählende Funktionen zu
Fügen Sie die folgende Zeile in Ihren Code ein, bevor Sie die Ntstrsafe.h-Headerdatei einschließen.
#define NTSTRSAFE_NO_CCH_FUNCTIONS
So lassen Sie nur Zeichen zählende Funktionen zu
Fügen Sie die folgende Zeile in Ihren Code ein, bevor Sie die Ntstrsafe.h-Headerdatei einschließen.
#define NTSTRSAFE_NO_CB_FUNCTIONS
Sie können entweder NTSTRSAFE_NO_CB_FUNCTIONS oder NTSTRSAFE_NO_CCH_FUNCTIONS definieren, aber nicht beides.
Sie können die UNICODE_STRING-Strukturfunktionen nicht verfügbar machen.
So stellen Sie fest, dass UNICODE_STRING Strukturfunktionen nicht verfügbar sind
Fügen Sie die folgende Zeile in Ihren Code ein, bevor Sie die Ntstrsafe.h-Headerdatei einschließen.
#define NTSTRSAFE_NO_UNICODE_STRING_FUNCTIONS
Die maximale Anzahl von Zeichen, die eine ANSI- oder Unicode-Zeichenfolge enthalten kann, ist NTSTRSAFE_MAX_CCH. Die maximale Anzahl von Zeichen, die eine UNICODE_STRING-Struktur enthalten kann, ist NTSTRSAFE_UNICODE_STRING_MAX_CCH. Diese Konstanten werden in Ntstrsafe.h definiert.
Ihr Treiber kann NTSTRSAFE_MAX_CCH und NTSTRSAFE_UNICODE_STRING_MAX_CCH kleinere Werte zuweisen, indem er die folgenden Zeilen in Ihren Code einschließt, bevor Ntstrsafe.h eingeschlossen wird.
#define NTSTRSAFE_MAX_CCH <new-value>
#define NTSTRSAFE_UNICODE_STRING_MAX_CCH <new-value>
Direktiven in Ntstrsafe.h überprüfen, ob ihre neuen Werte nicht größer als die Standardwerte sind.