Dừng chương trình yêu cầu các đặc quyền nâng cao: Chạy với tư cách quản trị viên [đã đóng]


0

Tôi có một tệp mà bất cứ khi nào tôi chạy nó đều yêu cầu quyền của quản trị viên. Làm thế nào tôi có thể vô hiệu hóa điều này để tôi có thể sử dụng nó trên các máy tính khác?


1
Bạn sẽ phải sửa đổi nguồn của chương trình để nó không yêu cầu quyền của Quản trị viên để chạy hoặc sửa đổi tệp manfest của chương trình. Nếu bạn sử dụng tệp manfest, rất có thể chương trình sẽ KHÔNG hoạt động như dự định.
Ramhound


Theo nhận xét của @Ramhound, ứng dụng được tạo nội bộ để yêu cầu quyền quản trị viên và có thể có một lý do để nó hoạt động xung quanh sẽ là thêm một tác vụ trong trình lập lịch tác vụ để bỏ qua UAC. Hãy thử các giải pháp này raymond.cc/blog/task-scheduler-bypass-uac-prompt
arthur kamande


1
Tại sao chương trình yêu cầu quyền quản trị viên? Có cần quyền quản trị viên? Bạn đang yêu cầu một cách để làm cho nó chạy một cách không phô trương mà không có quyền của quản trị viên, hoặc bạn đang yêu cầu một cách để làm cho nó chạy với quyền của quản trị viên mà không cần phải hỏi? Xin vui lòng không trả lời trong các ý kiến; chỉnh sửa câu hỏi của bạn để làm cho nó rõ ràng và đầy đủ hơn.
Scott

Câu trả lời:


2

Cố gắng khởi động chương trình từ một tệp bó mà trước tiên đặt biến môi trường

set __COMPAT_LAYER=RunAsInvoker

và kiểm tra xem nó có chạy như người dùng ban đầu không (không cần độ cao). Lưu ý rằng ngay cả khi chạy mà không cần độ cao, điều đó không có nghĩa là nó sẽ hoạt động theo cách đó.

Nếu có , có ba lý do có thể khiến chương trình này yêu cầu độ cao

  • Tên tệp ma thuật được mã hóa cứng trong Windows (như setup.exe, install.exe)
  • Tệp có một bảng kê khai nằm gần đó ( somefile.exesomefile.exe.manifest) yêu cầu các đặc quyền nâng cao
  • Tệp có một bảng kê khai nhúng yêu cầu các đặc quyền nâng cao

Cách thứ nhất rất dễ giải quyết (đổi tên nó), thứ hai cũng vậy (xóa bảng kê khai), đối với lần thứ ba, bạn phải trích xuất tệp kê khai bằng công cụ trích xuất tài nguyên (sẽ vô hiệu hóa chữ ký số nếu có).

Nếu không , chương trình sẽ kiểm tra các đặc quyền và khởi chạy hộp thoại theo cách thủ công (theo mã). Trong trường hợp đó nếu bạn không có mã nguồn để biên dịch lại ứng dụng, bạn sẽ không gặp may.


Câu hỏi liên quan với các giải pháp tương tự - độc giả có thể thấy hữu ích. Buộc một chương trình chạy * mà không có đặc quyền của quản trị viên hoặc UAC? *
Mister_Tom
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.