Добавление цифровой подписи к двоичному файлу (ObjectARX или управляемые компоненты .NET) с помощью события "После сборки" в Microsoft Visual Studio

Событие "После сборки" — это действие, выполняемое после завершения сборки проекта. Событие "После сборки" можно использовать для добавления цифровой подписи к двоичному файлу (ObjectARX или управляемые компоненты .NET) после его создания. Ниже описана процедура добавления события "После сборки", в котором задействуется инструмент SignTool.exe из SDK Windows, для добавления цифровой подписи к нужному файлу проекта.

Дополнительные сведения об использовании инструмента SignTool.exe см. в разделе "Добавление цифровой подписи к двоичному файлу (ObjectARX или управляемые компоненты .NET)".

Прим.: Специальные символы в имени проекта или пути к папке могут привести к ошибкам при использовании инструмента SignTool.exe или других программ, используемых в рамках события "После сборки".

Visual Basic

  1. В обозревателе решений Microsoft Visual Studio щелкните имя проекта правой кнопкой мыши и выберите "Свойства".
  2. На странице "Свойства" выберите вкладку "Компилировать".
  3. Прокрутите страницу вниз и нажмите "События сборки".
  4. В диалоговом окне "События сборки" нажмите кнопку "Изменить событие "После сборки".
  5. В диалоговом окне командной строки события после сборки введите оператор, который запускает SignTool.exe и нужные аргументы.

    Ниже приведен пример добавления подписи к конечному файлу проекта с использованием цифрового сертификата, защищенного паролем и сохраненного в файле MyCert.pfx в папке Autodesk.

    "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f "C:\Autodesk\MyCert.pfx" /p MyPassword "$(TargetDir)$(TargetFileName)"
    Совет: Выберите пункт "Макрос", чтобы добавить макросы к операторам командной строки.

    Макросы $(TargetDir) и $(TargetFileName) позволяют динамически задавать имя конечной папки и файла сборки из командной строки для выполнения в рамках события "После сборки".

  6. Нажмите кнопку "ОК", чтобы закрыть диалоговое окно командной строки события после сборки.
  7. В диалоговом окне "События сборки" щелкните кнопку раскрывающегося списка "Выполнить событие после сборки" и выберите "При удачной сборке".
  8. Нажмите кнопку "ОК", чтобы сохранить событие "После сборки".
  9. Выполните сборку проекта заново для проверки события после построения.

    В окне вывода отобразятся сведения об успешном завершении события "После сборки".

    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. В обозревателе решений Microsoft Visual Studio щелкните имя проекта правой кнопкой мыши и выберите "Свойства".
  2. На странице "Свойства" выберите вкладку "События сборки".
  3. Прокрутите страницу вниз и нажмите "Изменить событие "После сборки".
  4. В диалоговом окне командной строки события после сборки введите оператор, который запускает SignTool.exe и нужные аргументы.

    Ниже приведен пример добавления подписи к конечному файлу проекта с использованием цифрового сертификата, защищенного паролем и сохраненного в файле MyCert.pfx в папке Autodesk.

    "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f "C:\Autodesk\MyCert.pfx" /p MyPassword "$(TargetDir)$(TargetFileName)"
    Совет: Выберите пункт "Макрос", чтобы добавить макросы к операторам командной строки.

    Макросы $(TargetDir) и $(TargetFileName) позволяют динамически задавать имя конечной папки и файла сборки из командной строки для выполнения в рамках события "После сборки".

  5. Нажмите кнопку "ОК", чтобы закрыть диалоговое окно командной строки события после сборки.
  6. На странице "Свойства" щелкните кнопку раскрывающегося списка "Выполнить событие после сборки" и выберите "При удачной сборке".
  7. Выполните сборку проекта заново для проверки события после построения.

    В окне вывода отобразятся сведения об успешном завершении события "После сборки".

    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. В обозревателе решений Microsoft Visual Studio щелкните имя проекта правой кнопкой мыши и выберите "Свойства".
  2. В диалоговом окне свойств щелкните кнопку раскрывающегося списка "Конфигурация" и выберите "Все конфигурации".
  3. Разверните узел "Свойства конфигурации" "События сборки" и выберите "Событие после сборки.
  4. На странице "Событие после сборки" щелкните поле "Командная строка". Щелкните раскрывающийся список и выберите "<Изменить...>".
  5. В диалоговом окне "Командная строка" введите оператор, который запускает SignTool.exe и нужные аргументы.

    Ниже приведен пример добавления подписи к конечному файлу проекта с использованием цифрового сертификата, защищенного паролем и сохраненного в файле MyCert.pfx в папке Autodesk.

    "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f "C:\Autodesk\MyCert.pfx" /p MyPassword "$(TargetDir)$(TargetFileName)"
    Совет: Выберите пункт "Макрос", чтобы добавить макросы к операторам командной строки.

    Макросы $(TargetDir) и $(TargetFileName) позволяют динамически задавать имя конечной папки и файла сборки из командной строки для выполнения в рамках события "После сборки".

  6. Нажмите кнопку "ОК", чтобы закрыть диалоговое окно командной строки.
  7. На странице свойств щелкните поле "Использовать в сборке". Щелкните раскрывающийся список и выберите "Да".
  8. Нажмите кнопку "ОК", чтобы сохранить событие "После сборки".
  9. Выполните сборку проекта заново для проверки события после построения.

    В окне вывода отобразятся сведения об успешном завершении события "После сборки".

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