Comandos de Comprobador de controladores estáticos (MSBuild)

Puede ejecutar Static Driver Verifier (SDV) en una ventana del símbolo del sistema de Visual Studio, ya sea mediante la instalación del kit de controladores de Windows (WDK) o mediante la ejecución del kit de controladores de Enterprise Windows (DK). Vaya al directorio donde se almacena el archivo de proyecto del controlador o el archivo de proyecto de la biblioteca. Los parámetros pueden aparecer en cualquier orden en la línea de comandos.

Nota

SDV se integra en Visual Studio tras la instalación de WDK y también se puede ejecutar desde el IDE a través del menú "Controlador".

msbuild /t:sdv /p:Inputs="Parameters" ProjectFile /p:Configuration=configuration /p:Platform=platform

Debe seleccionar una configuración de versión (por ejemplo, /p:Configuration="Windows 7 Release"). Para obtener la lista de configuraciones de versión admitidas, vea Building a Driver(Creación de un controlador). La plataforma puede ser Win32 (para x86) o x64 (por ejemplo, /p:Platform=Win32).

Nota

Asegúrese de comprobar el plan de administración de energía del equipo para asegurarse de que el equipo no pasará a un estado de suspensión durante el análisis.

Parámetros

/escanear

Examina el código fuente del controlador en busca de declaraciones de tipo de rol de función. Para obtener información sobre cómo declarar las funciones de devolución de llamada proporcionadas por el controlador y las rutinas de envío, vea Usar declaraciones de tipo de rol de función. Durante este examen, SDV intenta detectar los puntos de entrada del controlador que necesita para comprobar el controlador. Registra los resultados del examen en Sdv-map.h, un archivo que crea en el directorio del proyecto del controlador.

Para más información, consulte Preparación del código fuente.

/check:RuleRule | ,...

Inicia una comprobación con las reglas especificadas. Puede especificar más de una regla separando cada regla con una coma. Ejecute el comando /check: y especifique el archivo de proyecto Visual Studio controlador (*.vcxproj).

Regla es el nombre de una regla o un patrón de nombre de regla que incluye caracteres comodín (*) para representar uno o varios caracteres. Cuando se usa solo, el carácter comodín (*) representa todas las reglas.

/check:RuleList.sdv

Inicia una comprobación con las reglas del archivo de lista de reglas especificado. Solo puede enumerar un archivo con este parámetro. En el archivo de lista de reglas, cada línea puede ser el nombre de una regla o puede ser un carácter comodín (*), que representa todas las reglas SDV. Ejecute el comando /check:RuleList.sdv y especifique el archivo de proyecto Visual Studio controlador (*.vcxproj).

RuleList.sdv es la ruta de acceso completa y el nombre de archivo de un archivo de lista de reglas. El archivo debe tener la extensión de nombre de archivo .sdv . A menos que el archivo esté en el directorio local, se requiere la ruta de acceso. Si la ruta de acceso o el nombre de archivo incluyen espacios, debe incluir RuleList.sdv entre comillas.

Si especifica la opción /check: sin especificar una regla, SDV se ejecuta con el conjunto de reglas predeterminado para el modelo de controlador.

/lib

Procesa la biblioteca en el directorio actual. SDV llama MSBuild.exe para compilar y compilar la biblioteca para uso externo, y genera los archivos que necesita para incluir la biblioteca en la comprobación del controlador.

Use este parámetro antes de comprobar los controladores que requieren la biblioteca. Ejecute el comando msbuild /t:sdv /p:Inputs="/lib" y especifique el archivo de proyecto Visual Studio (*.vcxproj) para la biblioteca.

Para obtener más información sobre el uso y el efecto del parámetro /lib , vea Procesamiento de bibliotecas en Static Driver Verifier.

/view

Abre El comprobador de controladores estáticos. Ejecute los comandos /view y especifique el archivo de proyecto Visual Studio controlador (*.vcxproj).

Los resultados están disponibles en cuanto se completa una comprobación y permanecen disponibles hasta que use un comando /clean para eliminar los archivos SDV del directorio del proyecto del controlador.

/clean

Elimina los archivos SDV del directorio. Dado que estos archivos se usan para generar la presentación del informe comprobador de controladores estáticos, el comando /clean también elimina el informe de la comprobación.

Ejecute un comando /clean y especifique Visual Studio archivo de proyecto (*.vcxproj) para el controlador o la biblioteca. El comando elimina archivos SDV solo para el proyecto especificado.

Ejecute un comando /clean para un proyecto de controlador antes de cada comprobación.

Ejecute un comando /clean para una biblioteca cuando los archivos de biblioteca estén obsoletos, por ejemplo, cuando cambie el código de la biblioteca.

Un comando /clean no quita el archivo Sdv-map.h, si la marca aprobada está establecida en true en el archivo Sdv-map.h (Approved=true). SDV puede usar este archivo para futuras comprobaciones.

/?

Muestra el uso de comandos SDV. Los comandos que usan este parámetro no tienen que ejecutarse en una ventana del entorno de compilación.

Comentarios

La ejecución de msbuild /t:/sdv p:/Inputs= /? sin parámetros muestra el uso de los comandos SDV.

Un comando /clean elimina los archivos que SDV usa para crear la presentación del informe comprobador de controladores estáticos para una comprobación. Después de ejecutar este comando, la presentación del informe comprobador de controladores estáticos para la comprobación ya no está disponible.

Ejemplos

Para ejecutar SDV con todas las reglas de los archivos de controlador en el directorio local del proyecto mydriver:

msbuild /t:sdv /p:Inputs="/check:*" mydriver.VcxProj /p:Configuration="Windows 7 Release"/p:Platform=Win32

Para ejecutar SDV mediante la regla CancelSpinLock en los archivos de controlador del directorio local:

msbuild /t:sdv /p:Inputs="/check:CancelSpinLock" mydriver.VcxProj /p:Configuration="Windows 7 Release" /p:Platform=Win32

Para ejecutar SDV mediante la regla especificada en el archivo de lista de reglas Rules1.sdv del directorio D:\SDV:

msbuild /t:sdv /p:Inputs="/check:D:\SDV\Rules1.sdv" mydriver.VcxProj /p:Configuration="Windows 7 Release" /p:Platform=Win32

Para volver a ejecutar SDV, esta vez con la opción /clean:

msbuild /t:sdv /p:Inputs="/clean" mydriver.VcxProj /p:Configuration="Windows 7 Release"/p:Platform=Win32

Para mostrar Static Driver Verifier para que pueda ver los resultados de la comprobación más reciente del controlador en el directorio local:

msbuild /t:sdv /p:Inputs="/view" mydriver.VcxProj /p:Configuration="Windows 7 Release" /p:Platform=Win32

Usar el comprobador de controladores estáticos para buscar defectos en Windows controladores