Tôi có một hành động tùy chỉnh và cần phải nhận được dưới giá trị cho việc sao chép một số bộ phận từ thư mục cài đặt vào thư mục VS2010Có cách nào khác để truy cập chi tiết phiên trong hành động tùy chỉnh bị trì hoãn không?
- đường dẫn thư mục VS2010 (
VS2010DEVENV
tài sản) - đường Installation (
INSTALLLOCATION
tài sản)
Để cung cấp đủ đặc quyền, tôi đã đặt hành động tùy chỉnh là Execute='deferred' Impersonate='no'
. Nhưng khi chạy trình cài đặt, nó đăng thông điệp:
Không thể truy cập thông tin chi tiết phiên từ một hành động tùy chỉnh không ngay lập tức
Có vẻ như chúng ta không thể truy cập vào một tài sản trong một hành động tùy chỉnh "trì hoãn" (tức là session["VS2010DEVENV"]
)
Có cách nào khác để tôi có thể truy xuất các giá trị đó khi cần không?
Cảm ơn [tham khảo ] (http://msdn.microsoft.com/en-us/library/aa370543.aspx). Thuộc tính ** CustomActionData ** hoạt động tốt. Nhưng tôi tự hỏi làm thế nào chúng ta có thể vượt qua nhiều hơn một giá trị. Trong trường hợp của tôi, tôi cần cả hai giá trị VS2010 và thư mục cài đặt. Bạn có thể đưa ra một số gợi ý nếu có thể không? – jcha
Bạn sẽ phải phân tích cú pháp chuỗi bạn chuyển trong hành động tùy chỉnh bị trì hoãn. Ví dụ, bạn có thể truyền '[VS2010DEVENV] | [INSTALLLOCATION]', và chia nhỏ CustomActionData bằng '|' trong CA bị trì hoãn. Nếu bạn sử dụng DTF cho CA của bạn, nó có thuộc tính CustomActionData giống như từ điển và bạn có thể truyền nó như 'vs2010 = [VS2010DEVENV]; location = [INSTALLLOCATION]' và lấy nó như 'session.CustomActionData [" vs2010 "] 'và' session.CustomActionData ["location"] ' –
Tuyệt vời! Nó hoàn toàn giải quyết trường hợp của tôi. Cảm ơn bạn rất nhiều vì lời khuyên của bạn. – jcha