None
วิธีอื่นเป็นเพียงการออกจากรายการที่เป็นชนิด ในการสำรวจวิธีการแก้ปัญหาให้คลิกที่คนที่คุณต้องการในการปรับใช้และการตั้งค่าคุณสมบัติการContent
True
หมายเหตุ: ฉันทำสิ่งนี้ใน VS2019 และสิ่งต่างๆสามารถเปลี่ยนจากเวอร์ชันเป็นเวอร์ชันได้
เพื่อให้ได้ผลตอนนี้คลิกขวาที่โปรเจ็กต์ของคุณแล้วเลือก "ยกเลิกการโหลดโปรเจ็กต์" จากนั้นคลิกขวาที่โปรเจ็กต์ที่ยกเลิกการโหลดแล้วเลือก "แก้ไข project_name.vcxproj"
ในตัวแก้ไขไปที่ด้านล่างสุดของไฟล์และแทรกเป้าหมายนี้ก่อน</Project>
แท็กต่อท้าย:
<Target Name="CopyContent" AfterTargets="Build">
<Copy SourceFiles="@(None)" Condition="'%(None.DeploymentContent)' == 'true'" DestinationFolder="$(OutputPath)" ContinueOnError="true" />
</Target>
ตอนนี้คลิกขวาที่โครงการที่ไม่ได้โหลดและเลือก "โหลดโครงการใหม่" เลือกเพื่อบันทึกและปิดหากคุณได้รับแจ้ง
ฉันยังตั้งค่าเป็นOutputDirectory
:
$(SolutionDir)bin\$(Configuration)\$(Platform)\
และIntermediateDirectory
ถึง:
$(SolutionDir)obj\$(Configuration)\$(ProjectName)\$(Platform)\
ในหน้าคุณสมบัติทั่วไปของโครงการ สิ่งนี้ทำให้เอาต์พุตอยู่ในโฟลเดอร์ "bin" และตัวกลางในโฟลเดอร์ "obj" ในรูทของโซลูชันของคุณ
หมายเหตุ: $(SolutionDir)
ไม่ได้กำหนดไว้เมื่อคุณเรียกใช้ MSBuild จากบรรทัดคำสั่ง มีเคล็ดลับที่คุณสามารถใช้เพื่อกำหนดให้กับโฟลเดอร์ที่ไฟล์. sln อาศัยอยู่โดยใช้ GetDirectoryNameOfFileAbove (เหลือไว้เป็นแบบฝึกหัดสำหรับผู้อ่าน). นอกจากนี้ดูเหมือนว่าในปี 2019 พวกเขาจะจัดการสิ่งนี้อย่างถูกต้องในบรรทัดคำสั่งอยู่ดี ใช่ :)$(SolutionDir)
มีเครื่องหมายต่อท้ายจึงไม่มีใครหลังจากที่มัน ผลลัพธ์ของแต่ละรายการต้องมีเครื่องหมายแบ็กสแลชต่อท้าย
ตอนนี้หากคุณเป็นเจ้าของ Pro หรือสูงกว่าโปรดอย่าทำเช่นนี้ทุกครั้งที่คุณต้องสร้างโครงการ นั่นจะเป็นง่อย Project -> Export Template
แต่เมื่อคุณมีการติดตั้งโครงการของคุณในแบบที่คุณชอบมันเลือก คุณตั้งชื่อให้และในครั้งต่อไปที่คุณต้องการสร้างโปรเจ็กต์เหมือนกับโปรเจ็กต์นั้นเพียงแค่เลือกชื่อนั้นในกล่องโต้ตอบโปรเจ็กต์ใหม่ (ในเวอร์ชันเก่าฉันคิดว่านี่คือFiles -> Export Teamplate...
)