Tôi đang sử dụng Cài đặt Inno để cài đặt bản cập nhật bản vá cho ứng dụng VB.net của mình nơi tôi phải thay thế tệp DLL và một vài tệp javascript/html cho bản cập nhật. Tuy nhiên, DLL không được cập nhật (nó nằm trong C: \ program files ...) - ngay cả trên các hệ thống XP mà không có UAC nó không được thay thế, nhưng khi tôi tự xóa DLL và chạy lại bản vá, tập tin sẽ được sao chép . Nó không phải là chỉ đọc, và không có đặc quyền UAC/admin có liên quan đến trường hợp XP.Cần ghi đè lên một tệp DLL trong trình cài đặt thiết lập inno - nhưng tệp không được thay thế
Lý do khiến tệp không được sao chép nếu tệp đã tồn tại? Nó được xây dựng trong VS2008 và trong .NET 2.0 - DLL mới có một sự khác biệt ngày và kích thước gần đây quá.
Có cách nào giải quyết sự cố truy cập ghi UAC trên Vista/Win7/8 không? Tôi đoán các bản vá sẽ không bao giờ thành công để thay thế các tập tin trên các hệ thống với UAC trên. Nói rõ cơ sở người dùng của chúng tôi để tắt nó rõ ràng không phải là một lựa chọn.
[EDIT] Tập hợp dll được đóng gói vào setup.exe trong Visual Studio bằng cách chọn nó từ thư mục Release để xây dựng giải pháp. Các thiết lập inno iss [File] phần có điều này:
[Files]
Source: C:\Visual Studio 2005\Projects\Setup5\Setup5\Debug\setup.exe; DestDir: {app}
Source: C:\Visual Studio 2005\Projects\Setup5\Setup5\Debug\interact.msi; DestDir: {app}
[Run]
Filename: {app}\setup.exe; Flags: runmaximized
Bạn có thể hiển thị mục nhập của [[Tập tin] 'cho thư viện đó không? Bạn có ý nghĩa gì bởi * "Có cách nào giải quyết vấn đề truy cập ghi UAC trên Vista/Win7/8 không?" *, Bạn nghĩ sao về vấn đề này? – TLama
Lý tưởng nhất là tôi muốn cập nhật bản vá xảy ra mà không cần bất kỳ sự tương tác nào của con người - tức là. Tôi không thể có họ nhấp vào một cuộc đối thoại yêu cầu quyền admin (UAC?) Khi tôi đang cố gắng di chuyển hoặc xóa các tập tin như DLL. – Surge
Nếu bạn định cập nhật/cài đặt các tập tin trong thư mục 'Program Files' trên Windows Vista, bạn chỉ cần yêu cầu quyền quản trị, nếu không bạn không truy cập được lỗi bị từ chối và trong trường hợp này bạn không nên chỉ định rõ ràng ['PrivilegesRequired'] (http://jrsoftware.org/ishelp/topic_setup_privilegesrequired.htm) giá trị chỉ thị (theo mặc định yêu cầu quyền quản trị). – TLama