2012-01-11 31 views
5

Tôi đang biên dịch tập lệnh NSIS thứ nhất và tận hưởng đường cong học tập.Triển khai WAR vào thư mục WebApps phù hợp

Ứng dụng này có đã:

  • Kiểm tra nếu máy là 64bit, hủy bỏ nếu 32bit.
  • Tìm JRE và cài đặt một bộ JRE nếu không tìm thấy.
  • Cài đặt Apache Tomcat 7 bằng trình cài đặt kèm theo.

    ExecWait ' "$ PLUGINSDIR \ apache-tomcat-7.0.19_x64.exe"'

Từ cài đặt riêng biệt này, người dùng có thể chọn một địa điểm khác nhau để mặc định để cài đặt Tomcat.

Cũng có thể một Tomcat khác có thể đã tồn tại trên cùng một máy và họ cài đặt phiên bản thứ hai bằng các số cổng khác nhau.

Tôi đã xem xét một vài mẫu khác, nhưng họ cài đặt Tomcat bằng cách giải nén phiên bản zip vào một thư mục cụ thể.
I nghĩ rằng đó là cách tiếp cận tốt hơn để chạy trình cài đặt exe TC7. Cũng sẽ làm cho cuộc sống dễ dàng hơn khi chúng ta cần phải trao đổi nó ra cho một phiên bản mới hơn. Vì vậy, Q của tôi là: Cách tiếp cận tốt nhất để giữ lại đường dẫn nơi họ vừa cài đặt Tomcat, để tôi có thể lấy nó từ trình cài đặt Tomcat và sử dụng nó trong kịch bản NSIS của tôi để triển khai các tệp WAR ?

Tôi đã hy vọng tìm thấy biến hệ thống, nhưng không thể thấy bất kỳ biến nào.

Trả lời

2

Các Tomcat installer ghi vào HKLM "SOFTWARE\Apache Software Foundation\Tomcat\@[email protected]\$TomcatServiceName" "InstallPath" nhưng vì bạn không biết giá trị của $ TomcatServiceName Tôi nghĩ rằng bạn có thể phải gọi EnumRegKey trước và sau khi cài đặt Tomcat đã thực hiện và so sánh hai danh sách các khoá con ...

+0

Vì vậy, sau khi trình cài đặt nhúng đã thực hiện xong, khóa reg này sẽ tồn tại và tôi sẽ cần phải đăng nhập để xem có> 1 mục và nếu có, trình bày chúng cho người dùng qua trình đơn thả xuống? Bạn có thể cung cấp một số đoạn mã hoặc mã giả để giúp tôi hiểu cách thực hiện điều này không? – Simon

+0

Nếu bạn so sánh hai danh sách, bạn sẽ có thể tìm ra những gì đã được thêm vào, nếu họ sử dụng lại tên bạn sẽ phải hiển thị một danh sách – Anders

Các vấn đề liên quan