Tôi đang viết một tiện ích WPF nhỏ để quản lý các mục nhập trong tệp máy chủ cho mục đích dev. Như bạn có thể biết các tập tin host được bảo vệ bởi các hệ điều hành mới hơn (Win 7/2008/Vista).Làm cách nào tôi có thể chỉnh sửa chương trình tệp máy chủ trong Windows 7/Server 2008?
Tôi đã thêm tệp kê khai vào ứng dụng của mình để đặt requestExecutionLevel thành "requireAdministrator", như chi tiết here (sử dụng "cách dễ dàng") và trong câu hỏi liên quan here.
Thật không may điều này đã không hiệu quả đối với tôi. Không có dấu nhắc độ cao khi tôi khởi động ứng dụng và gọi File.AppendText cho tệp máy chủ lưu trữ vẫn khiến System.UnauthorizedAccessException bị ném: "Truy cập vào đường dẫn 'C: \ Windows \ System32 \ drivers \ etc \ hosts' là từ chối."
HostsChanger.exe.manifest:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="HostsChanger" type="win32"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
Bất kỳ ý tưởng?
Vì vậy, ngoại lệ khi truy cập khóa đăng ký được bảo vệ là hoàn toàn mong đợi nếu bạn không nâng cấp. Tuy nhiên, tôi đã không sử dụng các tệp kê khai đủ để nhớ tất cả các bước, vì vậy tôi không biết tại sao những gì bạn đã thử không hoạt động cho bạn. –
Có ngoại lệ được mong đợi ... và độ cao nên giải quyết nó nhưng thiếu dấu nhắc cho biết độ cao không xảy ra. – bszom
Im tìm kiếm một chương trình Hostschanger đơn giản nhưng tôi chưa tìm thấy một ứng dụng nào được nêu ra – JasonDavis