次の方法で共有


C28135

警告 C28135: KeWaitForSingleObjectの最初の引数がローカル変数の場合、Modeパラメータは KernelModeである必要があります。

ドライバーはユーザーモードで待機しています。 そのため、待機中にカーネルスタックがスワップアウトされる可能性があります。 ドライバーがスタック上でパラメーターを渡そうとすると、システムがクラッシュする可能性があります。

次のコード例では、この警告が表示されます。

KeWaitForSingleObject(&MyMutex, UserRequest, UserMode, false, NULL);

次のコード例では、この警告を回避します。

KeWaitForSingleObject(&MyMutex, UserRequest, KernelMode, false, NULL);