สร้าง MSI หรือติดตั้งโปรเจ็กต์ด้วย Visual Studio 2012


129

ฉันสร้างแอปพลิเคชั่นขนาดเล็กและต้องการสร้างไฟล์ MSI หนึ่งไฟล์

ในVisual Studio 2010คุณมีโครงการประเภทนี้ภายใต้:

ประเภทโครงการอื่น ๆ -> การตั้งค่าและการปรับใช้ -> โปรแกรมติดตั้ง Visual studio -> โครงการตั้งค่า

แต่สิ่งเดียวที่คุณได้รับในVisual Studio 2012คือ "Enable InstallShield Limited Edition"

คุณสามารถเปลี่ยน. NET Framework ได้ แต่ไม่มีอะไรเปลี่ยนแปลง

ทำไมมันไม่มีอีกแล้ว? แล้วจะเอาคืนได้อย่างไร? มีวิธีใหม่ในการทำเช่นนี้หรือไม่?


1
อะไรคือจุดสำคัญของ Add-in ของ Visual Studio ถ้าไม่มีวิธีปรับใช้ ???!
DevDave

เพียงสำหรับการอ้างอิงนี่คือคำอธิบายของเครื่องมือทางเลือกที่พบมากที่สุดที่ใช้ในการสร้าง MSI A: stackoverflow.com/a/1546941/129130 พวกเขาทั้งหมดมีราคาแพงไปหน่อยยกเว้น Wix
Stein Åsmul

คำตอบ:


37

หากต้องการสร้างโปรเจ็กต์การตั้งค่าใน Visual Studio 2012 ด้วย InstallShield Limited Edition โปรดดูวิดีโอนี้

InstallShield รุ่น จำกัด ที่ไม่สามารถติดตั้งบริการ

"ISLE เป็นตัวเลือกการติดตั้งที่แย่ที่สุดและการอัปเกรดแบบอ่าน - จ่ายสำหรับเวอร์ชันนั้นยุ่งยากในการใช้งานที่ดีที่สุดและเป็นไปไม่ได้ในสถานการณ์ส่วนใหญ่ InnoSetup, Nullsoft, Advanced, WiX หรือโปรแกรมติดตั้งอื่น ๆ จะดีกว่าถ้าคุณ ทำแบบสำรวจแล้วคุณจะเห็นว่าไม่มีใครใช้ ISLE ฉันไม่รู้ว่าทำไมพวกคุณถึงยังคงเชื่อมโยงกับ InstallShield มันทำลายความน่าเชื่อถือของคุณนักพัฒนาทุกคนที่มีค่าน้ำหนักครึ่งหนึ่งของเขาในเกลือรู้ว่า ISLE ไม่มีค่าและเมื่อคุณยืนอยู่ข้างหลังเรา ต้องตั้งคำถามกับการตัดสินของ Microsoft "

โดย Edward Miller (ความคิดเห็นในVisual Studio Installer Projects Extension )

ชุดเครื่องมือ WiXซึ่งในขณะที่ทรงพลังนั้นเกินกว่าที่ผู้ใช้จะไม่เป็นมิตรและมีช่วงการเรียนรู้ที่สูงชัน นอกจากนี้ยังมีเทมเพลตที่ดาวน์โหลดได้สำหรับการติดตั้งบริการของ Windows (อ้างอิงVS2012: โปรแกรมติดตั้งสำหรับบริการ Windows? )

สำหรับ Visual Studio 2013 ดูโพสต์บล็อกการสร้างโปรแกรมติดตั้งกับ Visual Studio


3
เป็นต่อวิดีโอไม่สามารถสร้างSetup.msiในVS 2012ความช่วยเหลือใด ๆ เพิ่มเติม .. ??
AB Bolim

ติดตั้งโล่รุ่น จำกัด ที่ไม่สามารถติดตั้งบริการ WIX Toolset ซึ่งในขณะที่ทรงพลังนั้นเกินกว่าที่ผู้ใช้จะไม่เป็นมิตรและมีช่วงการเรียนรู้ที่สูงชัน มีเทมเพลตที่ดาวน์โหลดได้สำหรับติดตั้งบริการ windows arstechnica.com/civis/viewtopic.php?f=20&t=1190745
Kiquenet

สวัสดี @santhoshkumar หลังจากเสร็จสิ้นการติดตั้งหน้าต่างจากการตั้งค่า MSI ไฟล์ดิบของฉัน (การออกแบบและการเข้ารหัส) จะแสดงที่ตำแหน่งติดตั้งด้วย ฉันได้พัฒนาแอปพลิเคชันนี้โดยใช้ Visual Studio 2010 สร้างการตั้งค่าสำเร็จแล้ว แต่หลังจากติดตั้ง MSI ก็เกิดปัญหานี้ขึ้น โปรดช่วยฉันด้วย ขอบคุณล่วงหน้า.
dilipkumar1007

68

โปรดมอง:

โครงการติดตั้ง Visual Studio (vdproj) จะไม่มาพร้อมกับ VS เวอร์ชันในอนาคต

การปรับใช้ Windows Installer

มีการประกาศเมื่อ 1 1/2 ปีที่แล้วว่ามีการฆ่าประเภทโครงการ ทางเลือก ได้แก่ :

  1. ใช้โซลูชัน VS2008 / 2010 เพื่อสร้างตัวติดตั้งของคุณ
  2. เปลี่ยนไปใช้เครื่องมืออื่นเช่น InstallShield หรือ Windows Installer XML

ถ้าเราไปหาโซลูชันแรกของคุณ .. เราจะเพิ่มข้อกำหนดเบื้องต้นเป็น. NET 4.5 ได้ไหม
Sreekumar P

อาจ ฉันเชื่อว่า VS มีไดเร็กทอรีของไฟล์ config (XML?) ที่มีคำจำกัดความของ prerequistes คุณอาจสามารถคำนวณโครงสร้างข้อมูลจากนั้นสร้างคำจำกัดความของคุณเองสำหรับ. NET 4.5 มันจะไม่ได้รับการสนับสนุนและฉันใส่เพียงอันดับ 1 เท่านั้นเพื่อชี้ให้เห็นว่ามันเป็นตัวเลือก โดยส่วนตัวแล้วการพูดในฐานะผู้เชี่ยวชาญในสาขานี้ด้วยประสบการณ์ 16 ปีฉันไม่ชอบเกือบทุกอย่างเกี่ยวกับเครื่องมือนี้และฉันจะไม่พยายามใช้ชีวิตอีกต่อไป ฉันไม่ได้เสียใจเมื่อได้ยินว่า Microsoft กำลังฆ่ามัน
Christopher Painter

ลองดูที่นี่หากคุณต้องการลอง: C: \ Program Files \ Microsoft SDKs \ Windows \ v7.0A \ Bootstrapper \ Packages การหาวิธีที่พวกเขาแฮชแอตทริบิวต์ PublicKey อาจเป็นหนึ่งในอุปสรรคที่ใหญ่ที่สุด
Christopher Painter

1
ขออภัย "ใช้โซลูชัน VS2008 / 2010 เพื่อสร้างโปรแกรมติดตั้ง" หมายความว่าอย่างไร
Alan Macdonald

4
หมายความว่าหากคุณมีโครงการปรับใช้และโครงการแอปพลิเคชันในโซลูชันเดียวกันคุณจะต้องหยุดดำเนินการดังกล่าว คุณจะต้องแบ่งออกเป็นสองโซลูชันและออกจากโซลูชันการปรับใช้ใน VS2005 / 2008/2010 และย้ายโซลูชันแอปพลิเคชันของคุณไปข้างหน้าเป็นปี 2555
Christopher Painter

24

คุณลองใช้วิธี "เผยแพร่" แล้วหรือยัง คุณเพียงคลิกขวาที่ไฟล์โครงการในตัวสำรวจโซลูชันแล้วเลือก "เผยแพร่" จากเมนูป๊อปอัป สิ่งนี้จะสร้างตัวติดตั้งในขั้นตอนง่ายๆไม่กี่ขั้นตอน

คุณสามารถกำหนดค่าตัวติดตั้งเพิ่มเติมได้จากแท็บเผยแพร่ในหน้าต่างคุณสมบัติโครงการ

หมายเหตุ: วิธีนี้ใช้ได้กับแอป WPF และ Windows Forms เท่านั้น


6
หรือที่เรียกว่า ClickOnce - msdn.microsoft.com/en-us/library/t71a733d(v=vs.110).aspx
Surfbutler

ฉันทำแบบเดียวกันในโครงการฝังตัวของฉันที่มีหน้าต่าง WPF และ VC ++ dll ลูกค้าของฉันขอให้ฉันรวมแพ็คเกจ VC ++ ที่แจกจ่ายต่อได้ในตัวติดตั้ง คุณช่วยฉันได้ไหม เนื่องจากฉันผ่านวิซาร์ดทั้งหมด แต่ฉันไม่เห็นตัวเลือกใด ๆ ในการรวมตัวติดตั้งแยกในการปรับใช้โดยใช้วิธีการปรับใช้ clickOnce นี้
Manish Dubey

@grantnz ในที่สุดฉันก็พบตัวเลือก ฉันพบมันในแท็บคุณสมบัติ Prjoect -> เผยแพร่ -> ข้อกำหนดเบื้องต้น หวังว่าคุณจะพบมัน
Manish Dubey

17

ไมโครซอฟท์ได้ฟังเสียงร้องสำหรับการสนับสนุนการติดตั้ง (MSI) ใน Visual Studio และปล่อยVisual Studio Installer โครงการส่วนต่อขยาย ตอนนี้คุณสามารถสร้างโปรแกรมติดตั้งใน Visual Studio 2013 ได้แล้ว ดาวน์โหลดส่วนขยายที่นี่จาก visualstudiogallery


2
ไม่ใช่ส่วนขยายสำหรับ VS 2012? ซอร์สโค้ดแบบเต็มแอปพลิเคชันตัวอย่างจริง + โครงการตั้งค่าหรือไม่
Kiquenet

ดาวน์โหลด Installer Projects Extension สร้าง msi ง่ายๆเพื่อใส่ dll ของบุคคลที่สามใน GAC ตามลำดับสั้น ๆ ง่ายมากใช้งานง่ายเป็นพื้นฐาน
Chris Mills

1
กองนี้กำลังถามเกี่ยวกับปี 2555
teapeng

5

ISLE (InstallShield Limited Edition) เป็นการ "ทดแทน" ของโครงการ Visual Studio Setup และ Deploy แต่ผู้ใช้หลายคนคิดว่า Microsoft ทำผิดขั้นตอนในการลบการสนับสนุน. vdproj ออกจาก Visual Studio 2012 (และรุ่นที่ใหม่กว่า) และสนับสนุนซอฟต์แวร์ของ บริษัท อื่น

หลายคนขอคืน ( นำการตั้งค่าพื้นฐานและการติดตั้งโครงการประเภท Visual Studio Installer กลับมาใช้ ) แต่ Microsoft หูหนวกกับเสียงของเรา ... เศร้าจริงๆ

ในฐานะที่เป็น WiX มีความซับซ้อนจริงๆผมคิดว่ามันคุ้มค่าที่จะลองระบบการติดตั้งฟรี - NSISหรือInno ติดตั้ง ทั้งสองแบบสามารถเขียนสคริปต์ได้และเรียนรู้ได้ง่าย แต่มีประสิทธิภาพเทียบเท่า SADP ดั้งเดิม

ฉันได้สร้างส่วนขยาย Visual Studio ที่ดีมากสำหรับ NSIS และ Inno Setup พร้อมคุณสมบัติมากมาย (Intellisense การเน้นไวยากรณ์แถบการนำทางการรวบรวมโดยตรงจาก Visual Studio เป็นต้น) คุณสามารถทดลองใช้งานได้ที่www.visual-installer.com (ขออภัยสำหรับโปรโมชั่นด้วยตนเอง :)

ดาวน์โหลดInno Setup (jrsoftware.org/isdl.php) หรือNSIS (nsis.sourceforge.net/Download) และติดตั้งV&I (unsigned-softworks.sk/visual-installer/downloads.html)

ตัวติดตั้งทั้งหมดทำได้ง่าย Next / Next / Next ...

ใน Visual Studio เลือกเมนูFile -> New -> ProjectเลือกNSISProjectหรือInno Setup จากนั้นโปรเจ็กต์ใหม่จะถูกสร้างขึ้น (พร้อมแหล่งข้อมูลทั้งหมด)


1
จะติดตั้ง NSIS และ Inno Setup ได้อย่างไร? เริ่มต้นทีละขั้นตอนใน 5 นาทีและตัวอย่างซอร์สโค้ดแบบเต็มใน VS?
Kiquenet

1
ดาวน์โหลด Inno Setup ( jrsoftware.org/isdl.php ) หรือ NSIS ( nsis.sourceforge.net/Download ) และติดตั้ง V&I ( unsigned-softworks.sk/visual-installer/downloads.html ) ตัวติดตั้งทั้งหมดทำได้ง่าย Next / Next / Next ... ใน Visual Studio ให้เลือก File -> New -> Project เลือก NSISProject หรือ InnoSetup จากนั้นโปรเจ็กต์ใหม่จะถูกสร้างขึ้น (พร้อมแหล่งข้อมูลแบบเต็ม)
Slappy

3

มีความคืบหน้าสำหรับผู้พัฒนา Visual studio 2013 :-D woot woot! ดูบล็อกโพสต์ภาพและสตูดิโอการติดตั้งโครงการขยาย

การเชื่อมโยงและข้อมูลที่ถูกดึงออกมาจากบล็อกโพสต์ไบรอันแฮร์รี่สร้างติดตั้งกับ Visual Studio


2

ได้ดูบทความที่Visual Studio Installer การปรับใช้ มันจะช่วยคุณได้อย่างแน่นอน

คุณสามารถเลือก. NET Framework เวอร์ชันที่ถูกต้องได้ในหน้า ดังนั้นสำหรับคุณทำให้เป็น. NET 4.5 ฉันเดาว่าน่าจะอยู่ที่นั่นสำหรับ Visual Studio 2012


1
สำหรับ Visual Studio 2012 ระบุว่า " InstallShield Limited Edition (ISLE) ฟรีสำหรับนักพัฒนา Visual Studio และแทนที่ฟังก์ชันการทำงานของเทมเพลตโครงการใน Visual Studio สำหรับการตั้งค่าและการปรับใช้ "
Peter Mortensen

0

ฉันคิดว่าการปรับใช้โซลูชัน Office โดยใช้ ClickOnce (MSDN) จะมีประโยชน์

หลังจากสร้างปลั๊กอินOutlookสำหรับ Office 2010 ปัญหาคือการติดตั้งลงในคอมพิวเตอร์ของลูกค้าโดยไม่ต้องใช้ ISLE หรือเครื่องมือที่ซับซ้อนอื่น ๆ (หรือมีราคาแพง)

วิธีแก้ปัญหาคือการใช้เครื่องมือการเผยแพร่ของโครงการ Visual Studio ตามที่อธิบายไว้ในลิงก์ มีเพียงสองสิ่งที่ต้องทำก่อนการตั้งค่าจะทำงาน:

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