【解決済み】HPE ProLiant ML350 Gen10でBSODエラー0x1000007e(smbdirect.sys起因)が発生する原因と対処法|Windows Server 2016/2012 R2
本記事では、Windows Server 2016またはWindows Server 2012 R2が稼働するHPE ProLiant ML350 Gen10サーバーにおいて、「smbdirect.sys」ドライバーが原因で発生するブルースクリーン(BSOD)エラー0x1000007e「SYSTEM_THREAD_EXCEPTION_NOT_HANDLED」を解決するための手順を詳しく解説します。
Windows Server 2016が稼働するHPE ProLiant ML350サーバーでは、以下のような問題が報告されています。明確な原因もなく、ランダムなタイミングでサーバーがクラッシュし、次のエラーメッセージを表示するブルースクリーンが現れます。
「問題が検出されたため、コンピューターへの損害を防ぐためにWindowsがシャットダウンされました。
問題の原因と思われるファイル:smbdirect.sys
SYSTEM_THREAD_EXCEPTION_NOT_HANDLED
技術情報:
*** STOP: 0x1000007e (0xffffffffc0000005, 0xfffff803804fa7a0, 0xffffa780867fb1e8, 0xffffa780867faa30)
*** smbdirect.sys – Address 0xfffff803804fa7a0 base at 0xfffff803804e0000 DateStamp 0x57dacc39」

HPE ProLiant Gen10サーバー(Windows Server 2012/2016)でBSODエラー0x1000007e「SYSTEM THREAD EXCEPTION NOT HANDLED」を修正する方法
方法1:ネットワークアダプタードライバーを更新する
この問題について徹底的に調査した結果、Hewlett Packard Enterprise(HPE)サポートセンターの情報によると、Microsoft Windows Server 2012 R2またはWindows Server 2016が稼働するProLiant Gen10サーバーでは、ファイルコピーの実行中にBSODエラー0x1000007e(0x7E)が発生することが確認されています。
具体的には、以下のいずれかのネットワークアダプターを搭載し、「HPE Intel i40eb Driver for Windows Server 2016/Windows Server 2012 R2 バージョン1.8.83.0」が適用されているHPE ProLiant Gen10サーバーで、このブルースクリーンエラー(0x7E)「SYSTEM_THREAD_EXCEPTION_NOT_HANDLED」が発生する可能性があります。
- HPE Ethernet 10Gb 2ポート 568iアダプター
- HPE Ethernet 1Gb 2ポート 368iアダプター
- HPE Ethernet 1Gb 4ポート 369iアダプター
- HPE Ethernet 1Gb 2ポート 368FLR-MMTアダプター
- HPE Ethernet 10Gb 2ポート 568FLR-MMTアダプター
- HPE Ethernet 10Gb 2ポート 568FLR-MMSFP+アダプター
該当する構成をお使いの場合は、インストールされているWindows Serverのバージョンに合わせて、以下の最新ドライバーをネットワークアダプターにインストールしてください。
- HPE Intel i40eb Driver for Windows Server 2012 R2 バージョン1.8.109.0
- HPE Intel i40eb Driver for Windows Server 2016 バージョン1.8.109.0
補足:
- HPEでは、上記に加えて「HPE Intel Online Firmware Upgrade Utility for Windows Server x64 Editions バージョン5.1.3.0」の最新版のインストールも推奨しています。
- ネットワークドライバーをインストールしてもBSODの問題が解決しない場合は、HPEサポートセンターの元記事で更新情報を確認するか、引き続き読み進めて次の解決策をお試しください。
方法2:SMB Directドライバー(smbdirect.sys)を無効化する
BlueScreenViewユーティリティを使ってBSODエラー0x1000007e(0x7E)を解析したところ、クラッシュの原因はSMB Network Directドライバー(smbdirect.sys)であることが判明しました。

SMB Directは、Windows Server 2012、Windows Server 2012 R2、およびWindows Server 2016に標準搭載されている機能で、Remote Direct Memory Access(RDMA)機能に対応したネットワークアダプターの利用をサポートします。RDMA対応アダプターは、CPUへの負荷を最小限に抑えながら、非常に低いレイテンシでフルスピードの通信を実現できます。Hyper-VやMicrosoft SQL Serverなどのワークロードでは、この機能によりリモートのファイルサーバーがローカルストレージと同等のパフォーマンスを発揮できるようになります。
そのため、BSODエラー0x1000007eを解決するもう一つの方法として、SMB Direct機能を無効化します。手順は以下のとおりです。
1. PowerShellを開き、以下のコマンドを実行します。
Set-NetOffloadGlobalSetting -NetworkDirect Disabled

2. SMB Directを無効化すると、0x1000007eのBSOD問題は解決されるはずです。
補足:将来的にSMB Directを再度有効化したい場合は、PowerShellで以下のコマンドを実行してください。
Set-NetOffloadGlobalSetting -NetworkDirect Enabled
以上で作業は完了です。このガイドがお役に立てましたら、ぜひコメントであなたの体験を共有してください。また、他の方の問題解決につながるよう、このガイドのいいね・シェアにもご協力いただけますと幸いです。
-
【解決済み】Windows Server 2016で.NET Framework 3.5インストールエラー「0xc004000d」を修正する方法
Windows Server 2016で.NET Framework 3.5(.NET Framework 2.0および3.0を含む)をインストールする際に、エラーコード「0xc004000d」が表示されることがあります。このエラーは、Windowsが必要なインストールファイルを見つけられない、またはダウンロードできない場合に発生します。この記事では、Windows Server 2016における.NET Framework 3.5のインストールエラー「0xc004000d」を解決するための手順と、利用可能なすべての方法を詳しくご紹介します。 「指定されたサーバーで機能の追加または削除の要求に
-
【解決済み】Windows 10/8.1/7で発生する「SYSTEM THREAD EXCEPTION NOT HANDLED」エラーの直し方
Windowsの起動時に「System Thread Exception Not Handled(システムスレッド例外がハンドルされませんでした)」というブルースクリーン(BSOD)エラーが表示され、PCが頻繁に再起動を繰り返して正常に起動できない——そんな経験はありませんか?このブルースクリーンエラーは、深刻な問題によってコンピューターが予期せずシャットダウンまたは再起動した際に発生します。主な原因はドライバーの不具合ですが、ソフトウェアやハードウェア側の要因である場合もあります。特にsystem_thread_exception_not_handledエラーは、パソコンにインストールされた