Làm cách nào để tạo trình cài đặt cho bản demo XNA của tôi?


11

Tôi có một bản demo được mã hóa trong XNA3.1 bằng VS2008. Tôi thực sự thích có thể gửi nó cho bất kỳ ai có PC và để họ cài đặt và chạy nó mà không yêu cầu họ phải cài đặt VS hoặc khung .Net, v.v.

Tôi nghĩ rằng nó sẽ là tùy chọn xuất bản nhưng tôi hơi bối rối bởi nó. Bất cứ ai có thể làm sáng tỏ vấn đề?

Cảm ơn bạn trước.


Bất cứ điều gì được tạo ra với XNA đều yêu cầu XNA Framework chạy, vì vậy họ phải cài đặt khung .net và khung XNA. Họ sẽ không cần Visual Studio.
thedaian

2
điều đó hơi sai lệch. Bạn đúng ở chỗ họ sẽ cần khung xna và có thể là khung .net, v.v. Nhưng họ sẽ không cần phải tự cài đặt nó - đó là toàn bộ quan điểm của việc tạo trình cài đặt; nó kiểm tra các phụ thuộc và cài đặt chúng khi cần thiết. Trong trường hợp này bao gồm khung XNA được phân phối lại.
SirYakalot

Câu trả lời:


14

Bạn chọn đi

Có một số cách để tạo trình cài đặt cho mọi thứ, kể cả trò chơi XNA.

1. Giải pháp triển khai Visual Studio

Điều này là khá đơn giản. Nếu bạn có phiên bản Chuyên nghiệp của Visual Studio, thì bạn có thể thêm dự án Triển khai vào giải pháp của mình và bất cứ khi nào bạn biên dịch dự án này, nó sẽ biên dịch tất cả các phụ thuộc / tài sản cần thiết cho bạn và giúp bạn cài đặt tốt vào cuối.

Liên kết này có hầu hết các thông tin mà bạn sẽ cần để bắt đầu và chứa thông tin về phân phối lại .NET framework và các bit và phần liên quan khác.

Ưu điểm:

  • Được tích hợp vào Visual Studio
  • Đơn giản trong việc cài đặt trình cài đặt MSI đơn giản và sẵn sàng phân phối

Nhược điểm:

  • Không có sẵn trong một số phiên bản của Visual Studio
  • Khó có thể khiến trình cài đặt của bạn làm điều gì đó phức tạp hơn cài đặt / sửa chữa / gỡ cài đặt.

2. WiX

Nếu bạn không có tùy chọn tạo dự án Triển khai Visual Studio, do phiên bản giới hạn của Visual Studio, có một số lựa chọn thay thế miễn phí có sẵn. WiX là một trong những lựa chọn thay thế.

Nó là viết tắt của Windows Installer XML và có thể được tích hợp vào Visual Studio, giống như các dự án Triển khai VS. Điều này cũng tạo ra một trình cài đặt msi sau khi biên dịch. Mặc dù được cảnh báo, WiX có một đường cong học tập dốc, nhưng nó cho phép nhiều sự phức tạp khác nhau trong trình cài đặt của bạn.

Bạn có thể tìm hiểu thêm về nó ở đây

Ưu điểm:

  • 100% miễn phí.
  • Quyền lực. Nếu bạn muốn thực hiện một cái gì đó phức tạp một cách lố bịch trong trình cài đặt của mình, chỉ cần tạo DLL C #, liên kết nó với dự án WiX của bạn và chạy nó dưới dạng Hành động tùy chỉnh. (Hầu hết) Mọi thứ đều có thể.
  • Tích hợp vào Visual Studio độc đáo, hoạt động rất, rất tốt với các dự án .NET.
  • Những người trong danh sách gửi thư WiX cung cấp rất nhiều hỗ trợ.

Nhược điểm:

  • Khó nắm bắt và bắt đầu do đường cong học tập dốc.
  • Lỗi gần như vô nghĩa khi bạn bắt đầu và phải mất một thời gian để thực sự tìm ra vấn đề thực sự trong mã của bạn là gì.
  • Không đủ hướng dẫn về chủ đề này. Hầu hết (theo ý kiến ​​của tôi) là những từ ngữ tồi tệ, cấu trúc tồi tệ và hết sức khó hiểu.

3. NSIS

NSIS là một gói tạo trình cài đặt đầy đủ tính năng. Tôi sẽ thừa nhận, tôi hầu như không sử dụng nó, nhưng khi tôi làm điều đó là một trải nghiệm thú vị. Có một số lượng lớn các hướng dẫn, nó hoàn toàn có thể viết được, nhưng tôi có thể nói rằng nó không mạnh bằng WiX (nếu bất cứ ai cảm thấy điều này không đúng, thì hãy thoải mái sửa tôi).

Nó hoàn toàn miễn phí và là nguồn mở và bạn có thể tìm thêm thông tin về nó ở đây .

Ưu điểm:

  • 100% miễn phí.
  • Trình cài đặt có thể tạo script, do đó bạn sẽ có thể mã hóa một số hành vi phức tạp.
  • Lượng hướng dẫn tốt, hỗ trợ tốt.
  • Không tạo ra MSI, nhưng thay vào đó là EXE (MSI có thể xấu )

Nhược điểm:

  • Không tạo ra MSI, nhưng thay vào đó là EXE (MSI có thể tốt )
  • Bị giới hạn bởi phạm vi của các lệnh scripting

4. InstallShield và InstallAnywhere

Tôi chưa bao giờ sử dụng InstallShield, nhưng vì sự hoàn chỉnh, tôi nghĩ tôi sẽ đề cập đến nó ở đây. Kinh nghiệm duy nhất của tôi là từ những gì mọi người đã nói với tôi, vì vậy tôi sẽ không liệt kê những ưu và nhược điểm.

Theo như tôi biết, nó khá đầy đủ tính năng, tuy nhiên nó không thể xử lý một lượng lớn tệp (> 1000). Bạn cần phải trả tiền cho nó mặc dù. InstallAnywhere là phiên bản đa nền tảng của InstallShield. Thêm thông tin ở đây .

5. Giải pháp khác

Tôi sẽ liệt kê các giải pháp khác để triển khai tại đây nếu có ai có thêm giải pháp nào khác:

Advanced Installer - Phiên bản phần mềm miễn phí cho phép các giải pháp triển khai cơ bản. Cảm ơn vì sự bổ sung này, pek.

Phần kết luận

Có rất nhiều tùy chọn có sẵn để tạo trình cài đặt cho trò chơi XNA của bạn. Hãy thử một vài, xem những gì bạn nhận được với hầu hết. Tuy nhiên, điều quan trọng nhất liên quan đến việc tạo ra các trình cài đặt là đảm bảo rằng nó hoạt động trên một số máy tính. Nếu bạn đang tạo trình cài đặt MSI, việc kiểm tra sẽ dễ dàng hơn nhiều bằng cách chạy msi từ dòng lệnh bằng lệnh sau:

msiexec /i [name of installer.msi] /L*v verbose_log.txt

Điều này sẽ viết ra một bản ghi của mỗi sự kiện mà trình cài đặt đang trải qua, sau đó bạn có thể khác với bất kỳ công cụ khác nào bạn muốn.

Tóm lại, hãy xem những gì phù hợp với bạn và quy trình làm việc của bạn nhất, kiểm tra là chìa khóa và bất cứ khi nào bạn kiểm tra trình cài đặt của mình, LUÔN LUÔN ghi nhật ký cài đặt (hầu hết các trình cài đặt không bao giờ cung cấp cho bạn bất kỳ thông tin hữu ích nào về sự cố).

Điều này biến thành một cái gì đó lâu hơn tôi mong đợi, và tôi xin lỗi. Nhưng tôi hy vọng nó sẽ giúp.

~ Ray


Đây là một công cụ cài đặt khác mà bạn có thể muốn thêm cho đầy đủ: Advanced Installer ( advancedinstaller.com ). Rất nhiều thứ có thể được thực hiện với giao diện người dùng và cho các dự án đơn giản là đủ. Không sử dụng nó cho bất cứ điều gì phức tạp. Phiên bản phần mềm miễn phí có hầu hết mọi thứ mà một dự án đơn giản cần, vì vậy tôi đã ổn với điều đó.
pek

1
"Giải pháp triển khai Visual Studio" thực sự đề cập đến hai công nghệ riêng biệt - ClickOnce và Windows Installer. Windows Installer tạo một trình hướng dẫn cài đặt trông bình thường; nó được sử dụng rộng rãi hơn và chuyên nghiệp hơn. ClickOnce dễ sử dụng hơn, bao gồm khả năng tự động cập nhật chương trình và có thể cài đặt trực tiếp từ một trang web. Tuy nhiên, ClickOnce chỉ là .Net (không hỗ trợ các dự án C ++ gốc) - vì XNA cũng là .Net, đây không phải là vấn đề ..
BlueRaja - Danny Pflughoeft
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.