Artikel-ID: 000087410 Inhaltstyp: Fehlermeldungen Letzte Überprüfung: 22.09.2021

Fehler "MSB3073" von den Build-Ereignissen in den mrsigner und sp Projects erhalten, wenn das sgx-ra-Sample in Visual Studio* kompiliert wird

Umgebung

Windows_10

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Zusammenfassung

Leitfaden, um sicherzustellen, dass die Build-Ereignisse in den Projekten "mrsigner" und "sp" die erforderlichen Dateien finden

Beschreibung
  • Kompilierte sgx-ra-Sample-Lösung in Visual Studio*
  • Eingegangene Fehler bei Projekten:
    mrsigner:
    Der Befehl ""sgx-ra-sample\vs\x64\Debugging\mrsigner.exe" x64\Debugging\enclave_sigstruct_raw > x64\Debugging\enclave_mrsigner.txt
    : Fehler MSB3073: :VCEnd" wird mit Code 1 beendet.

    Sp:
    Get-Content: Kann den Pfad "sgx-ra-sample\vs\service-provider\policy.in" nicht finden, da er nicht vorhanden ist.

Lösung

Gehen Sie im Project mrsigner zum Post-Build-Event und ändern Sie $(IntDir) in $(OutDir).

  1. Wählen Sie Project mrsigner -> Properties -> Build Events -> Post-Build Eventaus.
  2. Befehlszeile bearbeiten: "$(TargetPath)" $(OutDir)enclave_sigstruct_raw > $(OutDir)enclave_mrsigner.txt.

Gehen Sie in Project SPzum Pre-Build-Event und fügen Sie .. \ um policy.in.

  1. Wählen Sie project sp -> Properties -> Build Events -> Pre-Build Eventaus.
  2. Befehlszeile bearbeiten: powershell -command "$mrs=Get-Content -Path. \mrsigner\$(IntDir)enclave_mrsigner.txt; ( (Get-Content -Path.. /policy.in -Raw) – ersetzen Sie "@MRSIGNER@", $mrs ) | Set-Content $(IntDir)policy.cmd".
Weitere Informationen

Der standardmäßige PowerShell*-Befehl im Pre-Build-Event des Project SP kann die policy.in datei nicht finden.

Der Standardspeicherort von policy.in unter sgx-ra-sample/vs/policy.in.

Während des Pre-Build-Events wird der PowerShell-Befehl aus dem Verzeichnis sgx-ra-sample/vs/service-provider ausgeführt. Platzieren Sie entsprechend .. / vor policy.in in der PowerShell-Befehlszeile, sodass sie policy.in einer Ebene nach oben finden kann.

Wenn Sie also wissen, dass der PowerShell-Befehl in sgx-ra-sample/vs/service-provider läuft, teilen Sie dem PowerShell-Befehl den richtigen relativen Pfad zu policy.in, wenn er sich nicht am Standardspeicherort befindet.

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.