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

 
StatCounter: Chrome vượt Firefox, giành vị trí trình duyệt số 2

StatCounter: Chrome vượt Firefox, giành vị trí trình duyệt số 2

Tháng 11/2011, Chrome (của Google) đã vượt qua Firefox (của Mozilla) để giành vị trí trình duyệt phổ biến thứ 2, theo số liệu do công ty StatCounter (Ailen) công bố hôm 1/12.

Motorola Atrix 4G Review

Motorola Atrix 4G Review

Motorola made a brave leap in the smartphone market with Motorola Atrix 4G. It is the most advanced Android phone created by Motorola.

Luật Steve Jobs - Vì sao nhà sáng lập lại chính là nhà lãnh đạo tốt nhất?

Luật Steve Jobs - Vì sao nhà sáng lập lại chính là nhà lãnh đạo tốt nhất?

Vị CEO quá cố của Apple rất đặc biệt, nhưng một bài học ta rút ra từ quá khứ của ông ấy thì còn có ảnh hưởng hơn nhiều, đến mức có thể gọi thành “luật” (bất thành văn, đương nhiên).

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

 

Diet con trung