Lỗi quyền UAC (Kiểm soát tài khoản người dùng) trong MT5×EA: Nguyên nhân và cách khắc phục cho người mới bắt đầu


Lỗi quyền UAC là gì?

Khi chạy EA (Expert Advisor) trong MT5 (MetaTrader 5), hệ thống UAC (User Account Control) của Windows có thể gây ra lỗi như “Access Denied” hoặc “Không thể tạo tệp”.
UAC là cơ chế bảo mật của Windows nhằm hạn chế việc ghi hoặc thay đổi tệp trong các khu vực hệ thống được bảo vệ.

Nếu MT5 được cài trong các thư mục được bảo vệ như C:\Program Files hoặc C:\Program Files (x86), lỗi này thường xuất hiện khi EA cố gắng ghi log, tạo tệp cài đặt hoặc xuất báo cáo.

Bạn có thể kiểm tra vị trí cài đặt MT5 bằng cách nhấp chuột phải vào biểu tượng MT5 trên màn hình → “Mở vị trí tệp”.

Nhấp chuột phải vào biểu tượng MT5 → Thẻ Shortcut → Mở vị trí tệp


Triệu chứng phổ biến (ví dụ thông báo lỗi)

  • cannot open file ... (access denied)
  • failed to save file
  • cannot create directory
  • “Không thể truy cập tệp.”

Những lỗi này xảy ra khi EA hoặc MT5 không có quyền ghi tệp cần thiết.
Thường gặp khi lưu kết quả backtest, xuất chỉ báo tùy chỉnh hoặc ghi log.


Tại sao UAC ảnh hưởng đến MT5?

Để bảo vệ hệ thống, Windows không cho phép người dùng thông thường ghi tệp vào một số thư mục như Program Files.
Nếu MT5 được cài trong khu vực này, các tệp do EA tạo ra (MQL5\Files hoặc log) có thể bị UAC chặn, gây lỗi.

Trong một số trường hợp, tệp có thể bị chuyển hướng đến “VirtualStore” (%LocalAppData%\VirtualStore), khiến cài đặt dường như không được lưu.


Cách khắc phục (theo thứ tự khuyến nghị cho người mới)

1. Chạy MT5 với quyền quản trị viên

Đây là cách dễ nhất.
Nhấp chuột phải vào biểu tượng MT5 và chọn “Run as administrator”.
Việc này cho phép MT5 và EA có quyền truy cập ghi tệp cần thiết.

Nhấp chuột phải vào biểu tượng MT5 → Chạy với quyền quản trị viên

Cách thiết lập để MT5 luôn chạy với quyền quản trị viên:

  1. Nhấp chuột phải vào biểu tượng MT5 → “Properties”
  2. Chọn thẻ “Compatibility” → Tích “Run this program as an administrator”
  3. Nhấn “OK” để lưu

Nhấp chuột phải vào biểu tượng MT5 → Properties → Compatibility → Chọn Run this program as administrator

2. Cài lại MT5 trong thư mục không bị bảo vệ

Nếu bạn không muốn phải chọn “Run as administrator” mỗi lần, hãy cài lại MT5 trong thư mục không bị ảnh hưởng bởi UAC, chẳng hạn C:\MT5\ hoặc D:\Trading\MetaTrader5\.
EA có thể tự do lưu log, tệp cài đặt và báo cáo tại đó.

Thư mục MT5 được đặt trực tiếp dưới ổ C
Mẹo: Trước khi cài lại, hãy sao chép nội dung thư mục “Data Folder” (File > Open Data Folder), bao gồm MQL5, để khôi phục cài đặt dễ dàng.

3. Điều chỉnh mức UAC (cho người dùng nâng cao)

Bạn có thể giảm mức thông báo của UAC trong Control Panel.
Tuy nhiên, điều này làm giảm mức độ bảo mật, chỉ nên áp dụng trên VPS chuyên dùng cho EA hoặc máy tính giao dịch riêng biệt.

  1. Tìm “UAC” trong Windows → Chọn “Change User Account Control settings”
  2. Kéo thanh trượt xuống để giảm cảnh báo → Khởi động lại máy

4. Lưu ý khi sử dụng VPS

UAC cũng hoạt động trên VPS.
Nếu để mặc định, có thể gây lỗi khi ghi log hoặc lưu báo cáo.
Nên thiết lập MT5 luôn chạy với quyền quản trị viêngiảm thông báo UAC nếu cần để tránh sự cố.


Danh sách kiểm tra trước khi cài đặt và khi gặp lỗi

  • MT5 có đang chạy với quyền quản trị viên không? (kiểm tra trong Properties)
  • Thư mục cài đặt có nằm ngoài Program Files không?
  • Các tệp log và cài đặt có được lưu đúng vị trí không? (kiểm tra VirtualStore nếu cần)
  • Bạn có thiết lập giống nhau trong môi trường VPS không?

Tổng kết

Lỗi quyền do UAC gây ra có thể được khắc phục bằng cách điều chỉnh vị trí cài đặtquyền chạy chương trình.
Đối với người mới bắt đầu, cách nhanh nhất và an toàn nhất là chạy MT5 với quyền quản trị viên, sau đó (nếu cần) cài lại trong thư mục không bị bảo vệ.

Bài viết liên quan:
Hướng dẫn cài đặt và khởi chạy MT5 lần đầu (kèm hình minh họa)
Cách chạy nhiều phiên bản MT5 trên cùng một PC/VPS


Câu hỏi thường gặp (FAQ)

Hỏi: Tôi có cần chạy MT5 với quyền quản trị viên mỗi lần không?
Đáp: Không cần. Sau khi chọn “Run this program as administrator” trong Properties, MT5 sẽ luôn chạy với quyền quản trị viên.
Hỏi: Có thể cài MT5 trong Program Files không?
Đáp: Có thể, nhưng UAC dễ gây lỗi. Nên cài trong thư mục không bị bảo vệ.
Hỏi: Giảm mức UAC có an toàn không?
Đáp: Làm giảm bảo mật, chỉ nên thực hiện trên VPS hoặc máy tính riêng cho giao dịch.
Hỏi: Tôi không tìm thấy tệp đã lưu.
Đáp: Có thể tệp đã bị chuyển hướng đến VirtualStore (%LocalAppData%\VirtualStore). Hãy kiểm tra vị trí thực tế.
Hỏi: Trên VPS có cần thiết lập tương tự không?
Đáp: Có. UAC cũng hoạt động trên VPS, nên bạn cần bật chế độ quản trị viên và cài trong thư mục không bị bảo vệ.

Để lại một bình luận