Fehlermeldungen zur Statischen Treiberüberprüfung
In diesem Abschnitt wird die Bedeutung einiger der häufiger angezeigten SDV-Fehlermeldungen erläutert und Methoden für deren Auflösung vorgeschlagen.
Beim Starten von SDV aus Visual Studio werden möglicherweise die folgenden Fehler angezeigt:
- SDV funktioniert nur für Nicht-Debugkonfigurationen: Wie in der Meldung angegeben, muss SDV für eine Nicht-Debugkonfiguration ausgeführt werden. Stellen Sie sicher, dass Ihr Projekt auf eine Releasekonfiguration festgelegt ist, oder erstellen Sie eine , falls nicht verfügbar, und starten Sie SDV erneut.
- Fehler beim Laden der verfügbaren Regeln: SDV kann entweder die Regeln für Ihr Treibermodell nicht finden oder das Treibermodell nicht richtig bestimmen (viel wahrscheinlicher, wenn Ihr Treiber kein WDM-, KMDF-, NDIS- oder Storport-Treiber ist). Wenn Ihr WDK ordnungsgemäß installiert ist, können Sie diesen Fehler möglicherweise umgehen, indem Sie SDV direkt über die Befehlszeile ausführen (siehe Statische Treiberüberprüfungsbefehle (MSBuild)).
- SdV konnte das Treiberverzeichnis nicht sauber: In einigen Fällen können Berechtigungsfehler verhindern, dass SDV alte Ergebnisse aus dem Treiberverzeichnis ordnungsgemäß bereinigen kann, wenn Sie auf die Schaltfläche "Bereinigen" klicken. Dieser Fehler tritt auch auf, wenn die sdv-Dateien aus früheren Ausführungen derzeit verwendet werden. Stellen Sie sicher, dass die SDV-Dateien in Ihrem Treiberverzeichnis nicht verwendet werden, und entfernen Sie dann alle Ordner "sdv" und "sdv.temp" und alle "staticdv.job"-Dateien.
Wenn SDV beim Versuch der Analyse fehlschlägt, wird die Phase, in der der Fehler aufgetreten ist, als Standardausgabe ausgegeben. Wenn Sie SDV über die Visual Studio-GUI ausführen, können Sie diese Ausgabe anzeigen, indem Sie zur Registerkarte "Warnungen" wechseln.
Die Phasen, in denen SDV fehlschlägt, sind:
- NormalBuild: SDV konnte den Treiber nicht mithilfe von MSBuild-Standardbefehlen erstellen. Dies kann auftreten, wenn Sie über spezielle Buildlogik verfügen, sich auf Projektmappenelemente in Ihrer Projektdatei verlassen oder über externe Buildkomponenten verfügen. Wenn Ihr Projekt auf der $(SolutionDir)-Eigenschaft basiert, können Sie diese Variable direkt bereitstellen, indem Sie SDV über die Befehlszeile erneut ausführen und sie an die Befehlszeile anfügen, indem Sie /p:SolutionDir=[Ihr Lösungsverzeichnis] am Ende des MSBuild-Befehls hinzufügen. Weitere Informationen finden Sie unter Statische Treiberüberprüfungsbefehle (MSBuild).
- InterceptedBuild: SDV konnte den Treiber nicht für die Analyse erstellen.
- Scan: SDV konnte die Einstiegspunkte des Treibers nicht finden. Ein Fehler hier kann darauf hindeuten, dass keine Einstiegspunkte gefunden wurden und Sie Ihre Funktionsrollentypen oder sdv-map.h aktualisieren sollten. Weitere Informationen finden Sie unter Verwenden von Funktionsrollentypdeklarationen und Genehmigen der Datei "Sdv-map.h" .
- FinalCompile: SdV konnte Ihren Treiber nicht mit der Regel und dem Betriebssystemmodell kompilieren.
- CheckRule: SDV konnte die Regel nicht ordnungsgemäß überprüfen.
Möglicherweise können Sie weitere Details zum Fehler erfahren, indem Sie Diagnose für SDV aktivieren. Weitere Informationen finden Sie unter Diagnose der statischen Treiberüberprüfung .