2016-10-26 7 views
0

インストーラのデジタル署名を作成するのにsigntool.exeを使用していますが、インストーラのマニフェストファイルにrequestedExecutionLevel = "requireAdministrator"を設定します。 \インストーラ:;:
MTの-inputresource:#1 -out \ installer.exeのがマニフェストを抽出requestedExecutionLevel signtool.exeの使用後にリセット

    • ステップ:ので、私は次のものが含まbuild.batファイルを実行しているよ行うに requireAdministrator
    • へasInvokerから.exe.manifest
    • 変更標高を
    • 更新新しい値でマニフェストファイル:
      mt.exe -nologo -manifest "\ Installer.exe.manifest" -outputresource: "\インストーラ。 exe;#1
  1. 記号installer.exeのは、ときSignTool.exe
    ときSignTool.exe記号/ F .... \共通\/P "パスワード" /トンhttp://tsa.starfieldtech.comを使用して/ V \ installer.exeの
を構築

最初のステップはスムーズに機能しましたが、デジタル署名が実行されると、マニフェストファイルはrequestedExecutionLevel = "asInvoker"で更新されます。

私は最初に署名した後にrequestedExecutionLevelを設定しようとしましたが、それは自分のデジタル署名を削除します。

同様の問題は見つかりませんでした。 アイデア

答えて

-1

わかりましたので、問題の解決方法を見つけました。

PATHが設定されていなかったため、mt.exeを実行しようとしたときに、パスマニフェストと更新マニフェストを呼び出すバッチファイルにパスlocalyを設定するだけでした。私のバッチファイルは次のようになります。

SETLOCAL 

SET PATH=%PATH%;C:\Program Files (x86)\Windows Kits\8.1\bin\x64; 

CALL extractManifest.bat 

CALL changeElevation.bat 

CALL updateManifest.bat 

CALL codeSigning.bat 

を今では動作しますが、私はデジタル署名とのrequestedExecutionLevel = requireAdministratorの両方を持っています。

関連する問題