Tôi đang viết một ứng dụng cần tạo tài khoản người dùng đặc biệt ẩn khỏi màn hình đăng nhập và ứng dụng người dùng Bảng điều khiển. Bằng cách viết một giá trị từ 0 DWORD
với tên người dùng đến khóa registry dưới đây, tôi có thể hoàn thành mục tiêu này:Không thể ghi vào sổ đăng ký theo HKEY_LOCAL_MACHINE Software
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon \ SpecialAccounts \ danh sách người dùng
Vấn đề là trong Windows 7 với UAC, bất kể tôi cố gắng làm gì, tôi không thể viết một giá trị cho khóa ở trên.
Đó là sự hiểu biết của tôi rằng viết cho một số phím này không được phép trên Windows 7 với UAC, trừ khi bạn đang chạy với quyền quản trị. Tôi đã thêm một biểu hiện ứng dụng requestedExecutionLevel level="requireAdministrator" uiAccess="false"
, tôi chấp nhận lời nhắc UAC khi chương trình của tôi được chạy, tài khoản của tôi là thành viên của Quản trị viên, nhưng tôi vẫn không thể ghi vào khóa đăng ký ở trên.
Tôi còn cần phải làm gì nữa? Làm thế nào có thể, trong bất kỳ cấu hình ứng dụng nào, để viết các khóa và giá trị theo HKEY_LOCAL_MACHINE\SOFTWARE
?
Thông tin khác ... Khi chương trình của tôi chạy, không có lỗi nào được ném và dường như viết giá trị. Tôi đoán là Windows đang ảo hóa vị trí mà tôi đang viết. Tôi cần phải ghi vào vị trí thực tế, không phải là một địa chỉ ảo, nếu tôi ẩn tài khoản người dùng đặc biệt này.
Họ có thể đang cố gắng để ngăn chặn chính xác những gì bạn đang cố gắng làm. Một tài khoản ẩn được viết bởi phần mềm độc hại sẽ là xấu ví dụ. – asawyer
Tuy nhiên, điều này áp dụng cho tất cả mọi thứ theo HKEY_LOCAL_MACHINE \ SOFTWARE, không chỉ là khóa cụ thể mà tôi đã đề cập. Oh, và bạn vẫn có thể ẩn tài khoản bằng cách sử dụng regedit, hoặc nhìn thấy nó bằng cách sử dụng quản lý máy tính/người dùng. – sysrpl
Xin lỗi, đó chỉ là một nhận xét tắt tiếng. Nếu tôi có một câu trả lời tốt cho bạn, tôi đã sử dụng hộp khác. Tôi cũng rất quan tâm đến những gì đang diễn ra ở đây. – asawyer