2008-10-21 43 views

Trả lời

2

Bạn cần thêm hàng vào Bảng môi trường của tệp MSI để thực hiện việc này. Bạn có thể tìm thông tin trên bảng đó tại đây, http://msdn.microsoft.com/en-us/library/aa368369(VS.85).aspx. Bạn có thể sử dụng Orca để thực hiện việc này hoặc tự động hóa quy trình với một số VB Script. SDK nền tảng chứa tệp tập lệnh VB, WiRunSQL.vbs mà bạn có thể sử dụng để tự động hóa các hành động xây dựng cho chương trình của mình.

+0

Bạn có liên kết về cách chèn mục nhập trong bảng môi trường bằng cách sử dụng tác vụ xây dựng không? – Mel

+0

Có một liên kết đến một số thông tin trợ giúp cơ bản về tệp tập lệnh WiRunSQL.vbs tại đây, http://msdn.microsoft.com/en-us/library/windows/desktop/aa368568(v=vs.85).aspx. Bạn cần tải xuống và cài đặt bản sao Windows SDK để nhận tệp thực. – LanceSc

+0

Dưới đây là một số bài đăng trên blog mô tả quy trình cơ bản về thiết lập sự kiện xây dựng bài đăng MSI với Visual Studio 2005, http://blogs.msdn.com/b/astebner/archive/2006/08/24/716145.aspx và http : //blogs.msdn.com/b/astebner/archive/2006/08/12/696833.aspx – LanceSc

4

Sử dụng chế độ xem trình chỉnh sửa đăng ký trong dự án thiết lập và tạo khóa đường dẫn ở vị trí thích hợp tức là. HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ Session Manager \ Environment và tạo ra một chuỗi giá trị được gọi là "con đường" và nhập này là giá trị của bạn: "[% Đường dẫn]; [TargetDir]"

[% Đường dẫn] là một trình giữ chỗ cho chuỗi gốc trong giá trị Đường dẫn hiện có.

+1

Điều này thay thế và phá hủy đường dẫn hiện tại –

+0

@MartinMurphy Nó thực sự không phá hủy đường dẫn. Điều này hoạt động khá tốt. –

+0

@MartinMurphy Tôi có cùng một vấn đề nhưng khi tôi xây dựng lại dự án, vấn đề sẽ biến mất. Tôi đang sử dụng VS 2010. – Ashi

4

Có vấn đề với cách tiếp cận được đề cập ở trên sử dụng chế độ xem trình chỉnh sửa đăng ký và tạo khóa có tên PATH có giá trị "[% Path]; [TARGETDIR]". Trong khi phương thức hoạt động tốt khi cài đặt chương trình, hành vi mặc định trong khi gỡ cài đặt là xóa toàn bộ biến PATH, chứ không chỉ [TARGETDIR] được thêm vào. Tôi đã không tìm thấy một cách để vô hiệu hóa hành vi này, mặc dù nó có vẻ như một số hành vi có điều kiện có thể là có thể.

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