ID บทความ: 000087410 ประเภทข้อมูล: ข้อความแสดงข้อผิดพลาด การตรวจสอบครั้งล่าสุด: 22/09/2021

ได้รับข้อผิดพลาด "MSB3073" จากเหตุการณ์การสร้างใน mrsigner และ sp Projects เมื่อคอมไพล์ sgx-ra-sample ใน Visual Studio*

สิ่งแวดล้อม

Windows_10

BUILT IN - ARTICLE INTRO SECOND COMPONENT
สรุปข้อมูล

คําแนะนําเพื่อให้มั่นใจว่าเหตุการณ์การสร้างในโครงการ "mrsigner" และ "sp" จะค้นหาไฟล์ที่จําเป็น

คำอธิบาย
  • รวบรวมโซลูชัน sgx-ra-sample ใน Visual Studio*
  • ข้อผิดพลาดที่ได้รับจากโครงการ:
    mrsigner:
    คําสั่ง ""sgx-ra-sample\vs\x64\Debug\mrsigner.exe" x64\Debug\enclave_sigstruct_raw > x64\Debug\enclave_mrsigner.txt
    : ข้อผิดพลาด MSB3073: :VCEnd" ออกด้วยรหัส 1

    Sp:
    รับเนื้อหา : ไม่พบพาธ 'sgx-ra-sample\vs\service-provider\policy.in' เนื่องจากไม่มีอยู่

ความละเอียด

ในโครงการmrsignerให้ไปที่เหตุการณ์หลังการสร้างและเปลี่ยน $(IntDir)เป็น$(OutDir)

  1. เลือกโครงการmrsigner -> คุณสมบัติ ->สร้างกิจกรรม ->เหตุการณ์หลังการสร้าง
  2. แก้ไขบรรทัดคําสั่ง: "$(TargetPath)" $(OutDir)enclave_sigstruct_raw > $(OutDir)enclave_mrsigner.txt

ใน project spให้ไปที่เหตุการณ์ก่อนการสร้างและเพิ่ม \เพื่อpolicy.in

  1. เลือกProject sp -> Properties -> Build Event ->เหตุการณ์สําเร็จรูป
  2. แก้ไขบรรทัดคําสั่ง: powershell -command "$mrs=Get-Content -Path \mrsigner\$(IntDir)enclave_mrsigner.txt; ( รับเนื้อหา -Path .. /policy.in -Raw ) -replace '@MRSIGNER@',$mrs ) | เนื้อหาชุด $(IntDir)policy.cmd"
ข้อมูลเพิ่มเติม

คําสั่ง PowerShell* ตั้งต้นในเหตุการณ์ก่อนการสร้างของ โปรเจค sp ไม่สามารถหาไฟล์ policy.in ได้

ตําแหน่งตั้งต้นของpolicy.inอยู่ภายใต้sgx-ra-sample/vs/policy.in

ในระหว่างเหตุการณ์ก่อนการสร้าง คําสั่ง PowerShell จะถูกดําเนินการจากไดเรกทอรีsgx-ra-sample/vs/service-provider ดังนั้น ให้วาง .. / ด้านหน้า ของ policy.in ในบรรทัดคําสั่ง PowerShell เพื่อให้สามารถพบ policy.in ขึ้นหนึ่งระดับ

ดังนั้นเมื่อรู้ว่าคําสั่ง PowerShell ทํางานใน sgx-ra-sample/vs/service-provider ให้ บอก PowerShell ว่ามีพาธสัมพัทธ์ที่ถูกต้องไปยัง policy.in หากไม่ได้อยู่ในตําแหน่งเริ่มต้น

ผลิตภัณฑ์ที่เกี่ยวข้อง

บทความนี้จะนำไปใช้กับ 1 ผลิตภัณฑ์

เนื้อหาในหน้านี้เป็นการผสมผสานระหว่างการแปลเนื้อหาต้นฉบับภาษาอังกฤษโดยมนุษย์และคอมพิวเตอร์ เนื้อหานี้จัดทำขึ้นเพื่อความสะดวกของคุณและเพื่อเป็นข้อมูลทั่วไปเท่านั้นและไม่ควรอ้างอิงว่าสมบูรณ์หรือถูกต้อง หากมีความขัดแย้งใด ๆ ระหว่างเวอร์ชันภาษาอังกฤษของหน้านี้กับคำแปล เวอร์ชันภาษาอังกฤษจะมีผลเหนือกว่าและควบคุม ดูเวอร์ชันภาษาอังกฤษของหน้านี้