まずはコマンドライン版を作る
利用可能なキーコンテナを確認します
certutil -csp "SafeNet Smart Card Key Storage Provider" -key -user -v
Cert ハッシュ(sha1)をメモります。
signtool.exeを実行してみます。
signtool.exeの場所は環境に合わせて変えてください
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\signtool.exe" sign ^ /fd sha256 ^ /tr http://timestamp.sectigo.com ^ /td sha256 ^ /sha1 <メモったハッシュ> ^ /v /debug /a ^ "hogehoge.exe"
無事署名出来たらOK
Visual Sudioでビルド後のイベントに設定する
プロパティ>ビルド>イベントに”ビルド後のイベント”の欄があるので以下のように入力。
signtool.exeの場所は環境に合わせて変えてください
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\signtool.exe" sign ^ /fd sha256 ^ /tr http://timestamp.sectigo.com ^ /td sha256 ^ /sha1 <メモったハッシュ> ^ /v /debug /a ^ "$(TargetPath)"
MFCプロジェクトの場合例
echo Starting code signing for MFC application... echo Target file: "$(OutDir)$(TargetName)$(TargetExt)" "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\signtool.exe" sign ^ /fd sha256 ^ /tr http://timestamp.sectigo.com ^ /td sha256 ^ /sha1 <メモったハッシュ> ^ /v /a ^ "$(OutDir)$(TargetName)$(TargetExt)" if errorlevel 1 ( echo Code signing failed with error level %errorlevel% exit /b %errorlevel% ) echo Code signing completed successfully