โครงการ Visual Studio ว่างเปล่า?


98

มีวิธีทำให้ Project ว่างเปล่าใน Visual Studio 2008 หรือ 2010 หรือไม่? ฉันไม่ได้หมายถึงโซลูชันที่ว่างเปล่าฉันหมายถึงโครงการที่ว่างเปล่าในโซลูชัน โดยทั่วไปฉันมีโซลูชันสำหรับหลายโครงการและฉันต้องการเพิ่มโครงการเพื่อติดตามไฟล์คงที่ซึ่งเป็นส่วนหนึ่งของโซลูชัน แต่ไม่ใช่ของโครงการใดโครงการหนึ่ง การเพิ่มเป็นไฟล์โซลูชันไม่ได้ผลเนื่องจากโฟลเดอร์โซลูชันไม่ได้แมปกับโฟลเดอร์ระบบไฟล์และฉันต้องการจัดการลำดับชั้นจาก Visual Studio

ในขณะนี้ฉันสร้างโปรเจ็กต์ Visual C # ที่ว่างเปล่าซึ่งใช้งานได้ แต่ฉันสงสัยว่ามีโปรเจ็กต์ "ว่างเปล่ามากกว่า" หรือไม่


คุณต้องการเพิ่มไฟล์ประเภทใด และคุณต้องการทำอะไรกับพวกเขา?
Hannoun Yassir

ในกรณีของฉันมันคือ Sharepoint 14-Hive โดยพื้นฐานแล้วฉันต้องมิเรอร์ระบบไฟล์ (รวมถึงโฟลเดอร์ย่อย) เพื่อติดตามไฟล์ใด ๆ ที่ฉันเพิ่มเข้าไป บางครั้งไฟล์เหล่านี้เป็นไฟล์กราฟิกธรรมดาหรือไฟล์ CSS และไม่ได้เป็นส่วนหนึ่งของโครงการพัฒนาใด ๆ แต่ฉันก็ยังชอบติดตามไฟล์เหล่านี้ ความต้องการหลักคือการย้ายและเปลี่ยนชื่อและให้การเปลี่ยนแปลงเหล่านั้นมิเรอร์ในระบบไฟล์ นอกจากนี้การควบคุมแหล่งที่มาก็ง่ายกว่าสำหรับฉัน
Michael Stum

1
แล้วปัญหาที่แท้จริงคืออะไร? ทำไมว่างเปล่าไม่ว่างพอ?
Hans Passant

16
ไม่มี "โครงการว่างเปล่า" ใน Visual Studio มีเพียง "โซลูชันที่ว่างเปล่า" และโฟลเดอร์โซลูชันจะไม่ทำงานเนื่องจากไม่มีผลต่อระบบไฟล์ "โครงการ C # ที่ว่างเปล่า" ยังคงมีตัวเลือกคอมไพเลอร์และโฟลเดอร์เสมือน "การอ้างอิง" และฉันหวังว่าจะกำจัดทิ้ง
Michael Stum

ที่เกี่ยวข้อง: stackoverflow.com/questions/57776/…
Tim Abell

คำตอบ:


27

ประเภทโครงการ Visual C ++ มี "โครงการว่างเปล่า" ในหมวดหมู่ "ทั่วไป"

มันมาพร้อมกับโฟลเดอร์ว่าง ๆ หลายโฟลเดอร์ ("Header Files", "Resource Files", "Source Files") ซึ่งเป็นแค่ "ตัวกรอง" (ไม่ได้อยู่ในระบบไฟล์) คุณสามารถลบออกได้

นอกจากนี้ยังมีคุณสมบัติทั้งหมดของโปรเจ็กต์ C ++ ที่พร้อมใช้งานดังนั้นอย่าใส่ไฟล์ C / C ++ ไว้ในนั้นเว้นแต่คุณจะต้องการสร้าง (หรือคุณแยกออกจากบิลด์)

นอกเหนือจากนั้นมันค่อนข้างว่างเปล่า

อาจใกล้เคียงกับ "โปรเจ็กต์ที่ว่างเปล่า" มากกว่า "โปรเจ็กต์ Makefile" ซึ่งอยู่ในหมวดหมู่ "ทั่วไป" ของเทมเพลตโปรเจ็กต์ Visual C ++ ด้วย นอกจากนี้ยังสร้างโฟลเดอร์ตัวกรอง 3 โฟลเดอร์พร้อมกับไฟล์ readme.txt ที่คุณสามารถลบได้ มีข้อได้เปรียบที่เว้นแต่คุณจะให้คำสั่งให้รันในระหว่างการสร้างโดยเฉพาะมันจะไม่ทำอะไรเลย


4
โปรเจ็กต์ C ++ ที่ว่างเปล่าจะไม่ทำสิ่งที่ 'เหี้ย' เมื่อคุณไปที่คุณสมบัติโครงการและเลือกยูทิลิตี้ภายใต้ประเภทการกำหนดค่าภายใต้แท็บทั่วไป
Abel

11
อัปยศคุณไม่สามารถเพิ่มโฟลเดอร์ในโครงการได้ ฉันลงเอยด้วยการใช้โครงการ C # ที่ว่างเปล่าเพราะสิ่งนี้
MPritchard

2
โครงการยูทิลิตี้มีประโยชน์มากในการรวมไลบรารี "เฉพาะส่วนหัว" ดังนั้นคุณสามารถอ้างอิงจากโครงการของคุณได้อย่างง่ายดาย คงจะดีไม่น้อยหาก VS อนุญาตให้คุณสร้างสิ่งนี้ในขั้นตอนเดียว ในทำนองเดียวกันฉันต้องการสร้างโปรเจ็กต์ DLL ที่ว่างเปล่า (ซึ่งส่วนใหญ่เป็นของฉัน) ในอัตราขั้นตอนเดียวแทนที่จะต้องแก้ไขจาก. exe เป็น. dll ทุกครั้ง
CashCow

โปรเจ็กต์ C ++ Makefile และโปรเจ็กต์เปล่าไม่รองรับโฟลเดอร์ :(
Áxel Costas Pena

ฉันคิดว่าพวกเขาสนับสนุนโฟลเดอร์ ดูคำตอบของฉันด้านล่างเนื่องจากฉันไม่สามารถใส่รูปภาพในความคิดเห็นได้
Niklas Peter

61

ฉันเข้าใจผิดโดย C ++ "Empty Project" หรือ "Makefile Project" ฉันไม่สามารถสร้างโฟลเดอร์ใหม่ที่นั่นได้

นี่คือสามขั้นตอนในการเพิ่มโปรเจ็กต์ C # ที่ว่างเปล่า:

1) สร้างโครงการ (เพิ่ม> โครงการใหม่> Visual C #> Windows> โครงการว่างเปล่า)

2) แยกออกจากโครงสร้าง (Build> Configuration Manager ยกเลิกการเลือก Build ทั้งใน Debug และ Release configuration)

3) แทนที่เนื้อหา csproj ด้วย 3 liners ต่อไปนี้:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
</Project>

ไปเลย คุณสามารถสร้างโฟลเดอร์ในโปรเจ็กต์นี้ได้ แต่ยังไม่สร้าง


3
นี่คือคำตอบที่ดีที่สุดและประเภทของสิ่งที่ MS ควรรวมไว้โดยปริยาย โฟลเดอร์โซลูชันเป็น PITA ในการจัดการ
Ken Smith

1
Visual C # → Windows → Classic Desktop →โครงการว่างสำหรับ VS2015
John Grabanski

โปรแกรม @JohnGrabanski ไม่มีเมธอด 'หลัก' แบบคงที่ที่เหมาะสมสำหรับจุดเริ่มต้น
Toolkit

ฉันไม่มี Visual C #> Windows> Empty Project ใน VS 2015
Toolkit

13

ฉันพบ "โครงการว่างเปล่า" ในหมวดหมู่ "Windows" ทั้งใน C # และ Visual Basic ใน Visual Studio 2012 ฉันไม่แน่ใจว่าสิ่งเหล่านี้มีอยู่ใน Visual Studio 2008 หรือ 2010 หรือไม่

ดูเหมือนว่าจะสร้างเฉพาะไฟล์ App.Config ซึ่งสามารถลบได้อย่างง่ายดาย


2
มันยังคงพยายามรวบรวมเนื้อหาซึ่งไม่เป็นที่ต้องการเสมอไป
Tim Abell

13

สำหรับ Visual Studio 2015 นี้ขึ้นขณะนี้คุณสามารถทำกับสิ่งที่เรียกว่าโครงการที่ใช้ร่วมกัน นี้เป็นเพียงประเภทโครงการที่ว่างเปล่าที่เก็บไฟล์ที่มาสำหรับการใช้งานภายในโครงการอื่นดูที่นี่


นี่เป็นสิ่งที่ดีตราบเท่าที่ไม่มีรหัสอยู่ในนั้น หากโครงการใดจำเป็นต้องอ้างอิงโปรเจ็กต์นี้ก็จะต้องมีการอ้างอิงที่ชาญฉลาดในการซิงค์ ดังนั้นสำหรับการทำหน้าที่เป็นตัวยึดสำหรับไฟล์แบบคงที่สิ่งนี้จะใช้ได้ดี
CJBS

1

ฉันคิดว่าโปรเจ็กต์เปล่า C ++ รองรับโฟลเดอร์ อย่างน้อยใน VS 2013 คุณต้องคลิกที่ "แสดงไฟล์ทั้งหมด" ใน Solution Explorer จากนั้นจะไม่แสดงโฟลเดอร์เสมือน (ตัวกรอง) เหล่านี้อีกต่อไป แต่เป็นโฟลเดอร์จริงในระบบไฟล์จากนั้นคุณยังสามารถสร้างโฟลเดอร์ใหม่ ...

แสดงไฟล์ทั้งหมดใน Visual Studio 2013


0

ดูเหมือนว่าคุณต้องการโฟลเดอร์โซลูชัน!


19
โฟลเดอร์โซลูชันไม่สะท้อนลำดับชั้นของไดเรกทอรี ถ้าฉันสร้างโฟลเดอร์โซลูชันภายในโฟลเดอร์โซลูชันอื่นและย้ายไฟล์ไปไว้ในโฟลเดอร์นั้นไฟล์นั้นจะไม่ถูกย้ายไปยังโฟลเดอร์นั้นในระบบไฟล์
Michael Stum

โอ้ยุติธรรมฉันคิดว่ามันน่าจะง่ายที่จะเป็นจริง แต่คุณไม่มีทางรู้!
Paul Creasey

ข้อเสียอีกประการหนึ่งคือฉันสังเกตเห็นว่าโครงสร้าง TFS ไม่ได้ใส่รายการโซลูชันลงในโฟลเดอร์แบบเลื่อน
Gopalakrishnan SA

0

ชุมชน Microsoft Visual Studio 2019 ชุมชน
Microsoft Visual Studio 2017 ชุมชน
Microsoft Visual Studio 2015

สำหรับการสร้างใน WPF เป็นโครงการว่างให้
ไปที่ไฟล์> โครงการใหม่
จากนั้นเทมเพลต> Visual Basic> Windows> Classic Desktop
ใช้การอ้างอิงนี้เพื่อค้นหา Empty Project สำหรับภาษาอื่น ป้อนคำอธิบายภาพที่นี่

ตอนนี้เพื่อทำงานกับโครงการที่ว่างเปล่านี้การอ้างอิงจะต้องถูกเพิ่มลงในโครงการ
ในการแก้ไขปัญหา Explorer , คลิกขวา อ้างอิงแล้วเพิ่มการอ้างอิง ...
เลือกอ้างอิงเหล่านี้: PresentationCore , PresentationFramework , System.Windows , WindowBase ;
จากนั้นคลิกตกลง ;

ตอนนี้คุณ Solution Explorer ควรมีลักษณะดังนี้:
ป้อนคำอธิบายภาพที่นี่

เริ่มการเข้ารหัสและสร้างแอปพลิเคชัน WPF ที่สร้างขึ้นแบบไดนามิกของคุณ
ทำตามขั้นตอนเหล่านี้หากต้องการการอ้างอิงเพิ่มเติมขึ้นอยู่กับรหัสที่ใช้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.