Estoy intentando automatizar la firma de un complemento de ArcGIS mediante un evento posterior a la construcción en Visual Studio que activa un archivo por lotes (que posteriormente activa la utilidad ESRISignAddIn). Ejecutando el archivo por lotes manualmente a través de la línea de comandos funciona bien, el complemento se firma con éxito. Sin embargo, si intento ejecutar el archivo por lotes en el evento post-construcción, devuelve un error diciendo que el archivo del complemento no se puede encontrar. Me he dado cuenta de que cuando el proceso de construcción llega a la etapa posterior a la construcción, sólo se crean las DLL, pero no el archivo del complemento, por lo que el archivo por lotes no lo encuentra. Parece que el archivo del complemento se crea DESPUÉS del evento de post-construcción (ilógico, lo sé).
He probado a añadir los comandos por lotes a la línea de comandos de los eventos posteriores a la construcción (en la configuración del proyecto > compilación > eventos de construcción), y también he probado a añadir esto directamente al archivo XML del proyecto:
<Target Name="AfterBuild">
<Exec Command=""$(ProjectDir)Post_Build.bat" "$(TargetDir)my.esriAddIn"" />
</Target>
Parece que los eventos 'post build' y 'after build' se ejecutan antes de que se construya el archivo esriaddin, ¡inútil!
¿Alguien ha tenido alguna experiencia trabajando con eventos post-construcción y complementos de ArcGIS? Quiero saber si es posible forzar la creación del archivo Add-In (my.esriaddin) antes del evento post-build.
Mi solución de último recurso es ejecutar la construcción y luego el archivo por lotes utilizando un corredor de construcción (por ejemplo, finalbuilder), pero idealmente me gustaría mantener todo en el mismo proyecto.