Điều lớn nhất đã thay đổi giữa Windows XP và Windows Vista / 7 là sự ra đời của UAC có nghĩa là người dùng, ngay cả khi được tạo với tư cách quản trị viên, thường không có quyền truy cập đọc / ghi vào các vị trí "quan trọng" như %programfiles%
(Thường là C:\Program Files
hoặc C:\Program Files (x86)
) danh mục. Đây là lý do tại sao ứng dụng của bạn hoạt động trên Windows XP chứ không phải trên Windows Vista.
Bạn cần lưu trữ DỮ LIỆU của mình trong %programdata%
thư mục (thường là C:\ProgramData
) nếu dữ liệu được chia sẻ giữa những người dùng trên máy hoặc %appdata%
(thường là C:\Users\USERNAME_GOES_HERE\AppData\Roaming
) nếu nó dành riêng cho một người dùng nhất định. Giờ đây, bạn sẽ không còn gặp phải sự cố không thể ghi vào tệp.
Lý do cho điều này là do khi lưu trữ dữ liệu trong thư mục cài đặt chương trình, bạn đã làm sai . Windows đã không ngăn bạn làm điều này trước đây, nhưng nó đã được ghi nhận khá rộng rãi rằng %programfiles%
không phải là nơi thích hợp để lưu trữ dữ liệu.