Chép đoạn code sau vào Form, make (build) thành file exe và chạy thử sẽ thấy kết quả.
Giải thích sơ bộ:
Hàm GetVerMajor lấy ra byte thấp (LowByte) từ giá trị Long (4byte) trả về của hàm API GetVersion để lấy số phiên bản chính của Windows. (MajorVersion > 5: Win7, Win8, Win8Point1, WinSv2k12/R2, Win10)
Hàm IsAdminMode trả về kiểu Long cho biết ứng dụng có đang chạy quyền Admin hay không. 1 = có, 0 = không.
Đầu tiên ta kiểm tra xem ứng dụng có đang được chạy dưới quyền admin hay chưa, nếu chưa thì dùng hàm ShellExecuteA để chạy lại ứng dụng với quyền admin với tham số Operation = "runas" (áp dụng từ Win7 trở lên).
Code trên chỉ hoạt động với Standard Exe, còn ActiveX Exe nếu chưa đăng ký mà chạy ứng dụng không có quyền Admin sẽ bị báo lỗi: Unexpected error; quitting, vì thế chúng ta không thể áp dụng cách trên.
Đối với ActiveX Exe chúng ta có thể nhúng manifest vào resrouce.
DCS_MakeFileRunAsAdmin.exe trong file đính kèm là công cụ dùng để add manifest resource vào exe. Bạn có thể dùng để add cho ActiveX Exe hoặc các Standard Exe nếu không muốn dùng code trên.
- Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
- Tìm kiếm trước khi đặt câu hỏi
Chạy ứng dụng với quyền Admin (Run as Administrator)
-
- Thành viên năng nổ
- Posts: 72
- Joined: Fri 21/11/2014 3:58 am
- Has thanked: 25 times
- Been thanked: 14 times
- Contact:
Re: Chạy ứng dụng với quyền Admin (Run as Administrator)
Mình không rành VB6 lắm...mình mô tả có gì sai bạn bỏ qua cho
Mình tải về chạy trên win10(32bit) thấy nó chạy tốt nhưng viết làm sao khi chạy nó khỏi báo yes hay No thì tốt
ý mình là nó chạy Run As administrator luôn vậy mà khỏi thông báo (User Account Control ....Yes ..No)
hay mình chưa biết xài vậy...xin cảm ơn
Mình tải về chạy trên win10(32bit) thấy nó chạy tốt nhưng viết làm sao khi chạy nó khỏi báo yes hay No thì tốt
ý mình là nó chạy Run As administrator luôn vậy mà khỏi thông báo (User Account Control ....Yes ..No)
hay mình chưa biết xài vậy...xin cảm ơn
-
- Thành viên năng nổ
- Posts: 72
- Joined: Fri 21/11/2014 3:58 am
- Has thanked: 25 times
- Been thanked: 14 times
- Contact:
Re: Chạy ứng dụng với quyền Admin (Run as Administrator)
@kieu manh:
Cái đó hình như là do cấu hình user trong hđh windows (user account control settings). Nếu là máy của bạn thì bạn có thể tự cấu hình lại để nó không báo nữa. Còn nếu là máy của người dùng thì ... bạn biết rồi đó. ^^!
Cái đó hình như là do cấu hình user trong hđh windows (user account control settings). Nếu là máy của bạn thì bạn có thể tự cấu hình lại để nó không báo nữa. Còn nếu là máy của người dùng thì ... bạn biết rồi đó. ^^!
Re: Chạy ứng dụng với quyền Admin (Run as Administrator)
To Dark.Cosmos
Cái đó mình biết ....nếu kéo UAC xuống thì lại không xài code đó nữa vấn đề mong muốn là vẫn để UAC mức cao mà vẫn chạy được ....
Có cách nào dùng senkey cho nó chọn Yes khi hiên thông báo không bạn
cảm ơn Bạn
Cái đó mình biết ....nếu kéo UAC xuống thì lại không xài code đó nữa vấn đề mong muốn là vẫn để UAC mức cao mà vẫn chạy được ....
Có cách nào dùng senkey cho nó chọn Yes khi hiên thông báo không bạn
cảm ơn Bạn
-
- Thành viên năng nổ
- Posts: 72
- Joined: Fri 21/11/2014 3:58 am
- Has thanked: 25 times
- Been thanked: 14 times
- Contact:
Re: Chạy ứng dụng với quyền Admin (Run as Administrator)
@Kieu Manh:
Nếu muốn send key thì vẫn đc chứ bạn.
Dùng hàm sendMessage, than số đầu là cán cửa sổ (handle window), tham số 2 là wm_keydown, tham số 3 là virtual key code, tham số 4 la 0.
Cũng có nhiều cách khác tương tự nữa.
Nếu muốn send key thì vẫn đc chứ bạn.
Dùng hàm sendMessage, than số đầu là cán cửa sổ (handle window), tham số 2 là wm_keydown, tham số 3 là virtual key code, tham số 4 la 0.
Cũng có nhiều cách khác tương tự nữa.
Re: Chạy ứng dụng với quyền Admin (Run as Administrator)
Cảm ơn Bạn rất nhiều ...
Mình cũng đang tập Vọc VB6... và Hàm API nên cũng không rành lắm nếu được Bạn cho một Ví dụ: Code send key....Nó chọn Yes khi hiện thông báo UAC (Change User Account Control Settings) của Win Áp dụng cho code bài 1 của Bạn Run as Administrator
Mình cũng đang tập Vọc VB6... và Hàm API nên cũng không rành lắm nếu được Bạn cho một Ví dụ: Code send key....Nó chọn Yes khi hiện thông báo UAC (Change User Account Control Settings) của Win Áp dụng cho code bài 1 của Bạn Run as Administrator
- NTN
- Thành viên tâm huyết
- Posts: 482
- Joined: Wed 05/02/2014 3:43 pm
- Location: Đồng Tháp,Việt Nam
- Has thanked: 19 times
- Been thanked: 7 times
- Contact:
Re: Chạy ứng dụng với quyền Admin (Run as Administrator)
Cái này áp dụng cho vb.net luôn à?
vietdap.com - trungnhan.name.vn - Tình yêu của tôi <3
Return to “[VB] Bài viết hướng dẫn”
Who is online
Users browsing this forum: No registered users and 0 guests