Các tình huống và lỗi thường gặp cần xử lý khi đóng gói ứng dụng (đặc biệt là ứng dụng C# WinForms / .NET) để đem đi chạy trên máy khách bao gồm:

1. Lỗi thiếu Runtime / Framework (Lỗi phổ biến nhất)

  • Nguyên nhân: Máy  chưa cài đặt môi trường thực thi của .NET (ví dụ .NET 8.0) mà ứng dụng của bạn yêu cầu. Khi chạy file .exe, máy sẽ báo lỗi không tìm thấy runtime hoặc tự văng mà không lên giao diện.

  • Cách xử lý:

    • Khi đóng gói hoặc Publish, cần cấu hình để bao gồm luôn bộ Self-Contained (đóng gói kèm luôn runtime vào trong bộ cài nếu muốn máy khách không cần cài gì thêm) hoặc hướng dẫn khách cài gói .NET Desktop Runtime tương ứng.

2. Lỗi đường dẫn tương đối của Database (Connection String)

  • Nguyên nhân: file chuỗi kết nối bị trỏ cứng đường dẫn tuyệt đối (ví dụ D:\Data\ExamChair.db), khi đem sang máy không có ổ D: hoặc thư mục đó, phần mềm sẽ không kết nối được database hoặc báo lỗi tạo file mới trắng tinh.

  • Cách xử lý: Dùng đường dẫn tương đối (như Data Source=ExamChair.db) để ứng dụng luôn tìm file database nằm cùng thư mục với file .exe.

3. Lỗi thiếu file DLL đi kèm hoặc file cấu hình (appsettings.json)

  • Nguyên nhân: Khi đóng gói thiếu các thư viện phụ trợ (các file .dll của bên thứ ba như SQLite, Entity Framework,...) hoặc quên đưa file appsettings.json vào thư mục phân phối.

  • Cách xử lý: Đảm bảo khi tạo script trong Inno Setup, câu lệnh Source quét toàn bộ thư mục Release để mang theo đầy đủ các file thành phần.

4. Lỗi thiếu quyền ghi dữ liệu (Permission / Access Denied)

  • Nguyên nhân: Nếu ứng dụng của bạn được cài vào thư mục mặc định là C:\Program Files\, Windows sẽ quản lý quyền rất chặt. Khi phần mềm cố gắng ghi thêm dữ liệu, sửa đổi hoặc cập nhật file database .db nằm ngay trong thư mục đó, nó sẽ bị từ chối quyền (Access Denied) và gây lỗi runtime.

  • Cách xử lý:

    • Hoặc cấu hình cho ứng dụng tự động chạy với quyền Administrator (RunAsAdmin).

    • Hoặc thiết kế lưu file database sang thư mục AppData của người dùng (Environment.SpecialFolder.ApplicationData) thay vì để chung thư mục cài đặt gốc.




0 nhận xét Blogger 0 Facebook

Post a Comment

Cám ơn bạn đã phản hồi


Subscribe to: Posts (Atom)


 
A-Kinh nghiem hay ©Email: tailieuchogiaovien@gmail.com. All Rights Reserved. Powered by >How to best
Link:Bantintuvan|tailieusupham|khoahocsupham|Soidiemchontruong|inluon|Tài liệu|Xuất ngoại Nhật|Travel-Du lịch|Tử vi|Science
Top