Para firmar digitalmente un archivo binario (ObjectARX o .NET administrado) con un evento posterior a la compilación en Microsoft Visual Studio

Un evento posterior a la compilación es una acción que se produce después de que se haya compilado un proyecto. Puede utilizar un evento posterior a la compilación para firmar digitalmente un archivo binario (ObjectARX o .NET administrado) una vez que se haya compilado. En los siguientes pasos se describe cómo añadir un evento posterior a la compilación que utiliza la herramienta SignTool.exe del SDK de Windows para firmar digitalmente el archivo de destino de un proyecto.

Para obtener más información sobre el uso de la herramienta SignTool.exe, consulte "Para firmar digitalmente un archivo binario (ObjectARX o .NET administrado)".

Nota: Los caracteres especiales de un nombre de proyecto o una ruta de carpeta pueden provocar problemas con la herramienta SignTool.exe u otros programas que se ejecuten como parte de un evento posterior a la compilación.

Visual Basic

  1. En el Explorador de soluciones de Microsoft Visual Studio, haga clic con el botón derecho en un proyecto y seleccione Propiedades.
  2. En la página Propiedades, haga clic en la ficha Compilar.
  3. Desplácese a la parte inferior de la página y haga clic en Eventos de compilación.
  4. En el cuadro de diálogo Eventos de compilación, haga clic en Edición posterior a la compilación.
  5. En el cuadro de diálogo Línea de comandos del evento posterior a la compilación, escriba la instrucción que ejecuta la herramienta SignTool.exe y los argumentos que se deben utilizar.

    A continuación, se muestra un ejemplo de cómo firmar el archivo de destino del proyecto con un certificado digital protegido mediante contraseña que se ha almacenado en el archivo MyCert.pfx de la carpeta Autodesk:

    "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f "C:\Autodesk\MyCert.pfx" /p MyPassword "$(TargetDir)$(TargetFileName)"
    Consejo: Haga clic en Macro para añadir macros a las instrucciones de la línea de comandos que se van a ejecutar.

    $(TargetDir) y $(TargetFileName) son macros que permiten especificar de forma dinámica la carpeta y el nombre de archivo de destino de compilación como partes de los programas de línea de comandos que se ejecutarán como parte de un evento posterior a la compilación.

  6. Haga clic en Aceptar para cerrar el cuadro de diálogo Línea de comandos del evento posterior a la compilación.
  7. En el cuadro de diálogo Eventos de compilación, haga clic en la lista desplegable "¿Desea ejecutar el evento posterior a la compilación?" y seleccione "Si la generación es correcta".
  8. Haga clic en Aceptar para guardar el evento posterior a la compilación.
  9. Vuelva a compilar el proyecto para probar el evento posterior a la compilación.

    La ventana Salida indicará si el evento posterior a la compilación se ha completado correctamente.

    PostBuildEvent:
      "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f "C:\Autodesk\MyCert.pfx" /p MyPassword "C:\Autodesk\AdskUtils\bin\x64\Release\AdskUtils.dll"
      Done Adding Additional Store
      Successfully signed: C:\Autodesk\AdskUtils\bin\x64\Release\AdskUtils.dll

Visual C#

  1. En el Explorador de soluciones de Microsoft Visual Studio, haga clic con el botón derecho en un proyecto y seleccione Propiedades.
  2. En la página Propiedades, haga clic en la ficha Eventos de compilación.
  3. Desplácese a la parte inferior de la página y haga clic en Edición posterior a la compilación.
  4. En el cuadro de diálogo Línea de comandos del evento posterior a la compilación, escriba la instrucción que ejecuta la herramienta SignTool.exe y los argumentos que se deben utilizar.

    A continuación, se muestra un ejemplo de cómo firmar el archivo de destino del proyecto con un certificado digital protegido mediante contraseña que se ha almacenado en el archivo MyCert.pfx de la carpeta Autodesk:

    "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f "C:\Autodesk\MyCert.pfx" /p MyPassword "$(TargetDir)$(TargetFileName)"
    Consejo: Haga clic en Macro para añadir macros a las instrucciones de la línea de comandos que se van a ejecutar.

    $(TargetDir) y $(TargetFileName) son macros que permiten especificar de forma dinámica la carpeta y el nombre de archivo de destino de compilación como partes de los programas de línea de comandos que se ejecutarán como parte de un evento posterior a la compilación.

  5. Haga clic en Aceptar para cerrar el cuadro de diálogo Línea de comandos del evento posterior a la compilación.
  6. En la página Propiedades, haga clic en la lista desplegable "¿Desea ejecutar el evento posterior a la compilación?" y seleccione "Si la generación es correcta".
  7. Vuelva a compilar el proyecto para probar el evento posterior a la compilación.

    La ventana Salida indicará si el evento posterior a la compilación se ha completado correctamente.

    PostBuildEvent:
      "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f "C:\Autodesk\MyCert.pfx" /p MyPassword "C:\Autodesk\AdskUtils\bin\x64\Release\AdskUtils.dll"
      Done Adding Additional Store
      Successfully signed: C:\Autodesk\AdskUtils\bin\x64\Release\AdskUtils.dll

Visual C++

  1. En el Explorador de soluciones de Microsoft Visual Studio, haga clic con el botón derecho en un proyecto y seleccione Propiedades.
  2. En el cuadro de diálogo Página de propiedades, haga clic en la lista desplegable Configuración y seleccione Todas las configuraciones.
  3. Amplíe las propiedades de configuración Eventos de compilación y haga clic en Evento posterior a la compilación.
  4. En la página Evento posterior a la compilación, haga clic en el campo Línea de comandos. Haga clic en la lista desplegable y seleccione <Editar...>.
  5. En el cuadro de diálogo Línea de comandos, escriba la instrucción que ejecuta la herramienta SignTool.exe y los argumentos que se deben utilizar.

    A continuación, se muestra un ejemplo de cómo firmar el archivo de destino del proyecto con un certificado digital protegido mediante contraseña que se ha almacenado en el archivo MyCert.pfx de la carpeta Autodesk:

    "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f "C:\Autodesk\MyCert.pfx" /p MyPassword "$(TargetDir)$(TargetFileName)"
    Consejo: Haga clic en Macro para añadir macros a las instrucciones de la línea de comandos que se van a ejecutar.

    $(TargetDir) y $(TargetFileName) son macros que permiten especificar de forma dinámica la carpeta y el nombre de archivo de destino de compilación como partes de los programas de línea de comandos que se ejecutarán como parte de un evento posterior a la compilación.

  6. Haga clic en Aceptar para cerrar el cuadro de diálogo Línea de comandos.
  7. En la página de propiedades, haga clic en el campo Utilizar para compilación. Haga clic en la lista desplegable y seleccione Sí.
  8. Haga clic en Aceptar para guardar el evento posterior a la compilación.
  9. Vuelva a compilar el proyecto para probar el evento posterior a la compilación.

    La ventana Salida indicará si el evento posterior a la compilación se ha completado correctamente.

    1>PostBuildEvent:
    1>  Done Adding Additional Store
    1>  Successfully signed: C:\Autodesk\AdskUtils\bin\x64\Release\AdskUtils.arx