Chạy ứng dụng C# với quyền administrator trong windows 7

Chạy ứng dụng C# với quyền administrator trong windows 7

Có rất nhiều chương trình ứng dụng được cài trên windows 7 (hay windows Vista)phải chạy dưới quyền Admin mới có thể tương tác với bộ nhớ trong ổ C (ổ cài đặt Chạy ứng dụng C# với quyền administrator trong windows 7windows). Thông nhưng trên thực tế không phải ứng dụng nào mà chúng ta viết ra cũng có thể chạy với quyền user thông thường, do đó có một số tính năng sẽ hạn chế. Bài viết này sẽ trình bày cách thức để yêu cầu quyền admin khi bạn mở chương trình của mình chứ không phải click chuột phải rồi chọn “run as administrator”.

-  Có rất nhiều lập trình viên khi tạo project thường tạo trong ổ C (ổ đĩa cài đặt Windows) do đó khi debug chương trình thông thường sẽ nhận được thông báo lỗi là không thể mở được file thực thi của chương trình. Do đó để tránh khỏi lỗi này thì bạn nên tạo project của mình ở ổ đĩa khác ổ đĩa cài đặt Windows, hoặc chạy Visual studio với quyền Admin.

-  Cách trên là một cách có vẻ hơi né tránh vấn đề. Ví dụ như chương trình của bạn viết ra thực hiện một số tính năng mà chỉ có quyền Administrator mới có thể truy xuất được. Khi đó bạn không đưa ra quyền yêu cầu quyền admin từ user control thì chương trình sẽ báo lỗi. Dưới đây là ảnh về một chương trình Format ổ đĩa, khi người dùng click vào bình thường như mở các chương trình khác thì nó sẽ có thông báo lỗi.

image

-  Nếu ở cấp độ người dùng thông thường, họ cho rằng đây là một lỗi của chương trình nhưng thực sự không phải vậy. Nếu bạn click chuột phải vào chương trình và chọn “Run as administrator” và trong hộp thoại hiện ra chọn yes thì chương trình vẫn mở bình thường.

image

image

-  Vì những lý do trên, bạn nên tạo cho chương trình của mình khả năng yêu cầu quyền admin ngay từ đầu mà không phải click chuột phải như trong trường hợp trên. Dưới đây là cách thức làm điều đó:

+   Trong cửa sổ Solution Explorer của ứng dụng trên Visual Studio bạn click chuột phải vào project chọn Add –> New Item (hoặc nhấn Ctrl + Shift + A).

+   Trong cửa sổ hiện ra, chọn “Application Manifest File” và đặt tên cho nó. Sau đó click nút Add.

image

+ Sau khi click nút Add bạn sẽ thấy trong thanh solution explorer xuất hiện file .manifest với tên vừa tạo

image

+   Click vào file đó thì cửa sổ soạn thảo sẽ mở ra với một file code kiểu xml. Bạn cần chú ý nội dung dòng mà tôi tô màu vàng dưới đây:

<requestedExecutionLevel level="asInvoker" uiAccess="false" />

image

+   Để chương trình của bạn ra lời gọi chạy với quyền admin bạn cần thay “asInvoker” trong dòng code trên thành “requireAdministrator”. khi đó dòng code đó sẽ trở thành.

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

image

+   Bầy giờ bạn nhấn F5 để chạy chương trình, khi đó Visual Studio 2010 sẽ xuất hiện thông báo sẽ khởi động lại visual để chạy với quyền Admin. Chọn “Restart under different credentials”

image

+   Bây giờ visual sẽ khởi động lại và đưa ra yêu cầu chạy quyền admin, bạn chọn “Yes”. Sau đó nhấn F5 thì chương trình sẽ chạy bình thường.

+   Bạn thử mở file thực thi .exe của chương trình lên. Bạn sẽ nhận được thông báo yêu cầu quyền Admin. Chọn yes để chạy chương trình của bạn với quyền cao nhất.

image

-  Click vào đây để download project demo Run As Administrator in Windows 7 viết trên Visual studio 2010.

Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Binh Tran Thanh

Drupal Consultant

Started my career as a drupal8 developer in EM Solutions . I love learning Web technologies like HTML, CSS, PHP, Jquery Ajax and Drupal backend . Currently working as a drupal backend developer.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Facebook và Twitter

Chia sẻ video nhanh chóng trên Facebook và Twitter

Với dịch vụ video 15 giây có tên Tout, bạn có thể chia sẻ những video nhỏ một cách nhanh chóng với bạn bè và người thân của mình. Có nhiều cách bạn có thể truy cập vào dịch vụ này và khiến nó trở nên thú vị hơn, dễ dàng sử dụng hơn.

Drupal 8: Writing a Hello World Module

Drupal 8: Thử viết Hello World Module

It's been a while since I've sat down and tried to write a module from scratch in Drupal 8. I've dabbled here and there in the various already existing modules but there's always something interesting about just trying to write that simple 

Foxconn giấu công nhân dưới 18 tuổi trước khi bị điều tra?

Foxconn giấu công nhân dưới 18 tuổi trước khi bị điều tra?

Đối tác sản xuất của Apple – Foxconn – bị cáo buộc biết trước cuộc điều tra của FLA và chuyển các công nhân dưới độ tuổi lao động sang bộ phận khác để tránh bị trông thấy.

Công ty diệt chuột T&C

 

Diet con trung