تعیین سطح دسترسی (UAC) اپلیکیشن

در بسیاری از برنامه نیاز به سطح دسترسی بالاتری برای دسترسی به فایل ها و فولدرها و رجیستری ویندوز هست. به عنوان مثال با استفاده از Environment.SpecialFolder.MyDocuments می توان به فولدر Document ویندوز دسترسی پیدا کرد. در ویندوز ۷ و ویستا، یک لایه برای کنترل سطح دسترسی (UAC) اضافه شده است. به همین دلیل است که قبل از اجرای بسیاری از برنامه ها، ویندوز از شما سوال می کند که می خواهید برنامه اجرا شود یا خیر. وقتی پرژه تمام می شود پس از ساخت Setup و نصب آن در سیستم مشتری اگر از کدهای استاندارد مانند Path.Combine استفاده نشده باشد، قبل از اجرا، خطای سطح دسترسی داده می شود و برنامه بسته می شود. برای رفع این مشکل باید تغییراتی در فایل manifest.xml برنامه داد. اگر این فایل در پروژه شما وجود ندارد بر روی پروژه کلیک راست کنید و از منوی Add، گزینه Add New Item را انتخاب کنید. به زیر مجموعه General بروید و Application Manifest File را انتخاب کنید. پس از اینکه فایل ساخته شد، آن را باز کنید. کدها به صورت زیر است:

تگی که ما به آن نیاز داریم، تگ requestedPrivileges است. در این تگ یک تگ دیگر به نام requestedExecutionLevel وجود دارد که خاصیت level آن، تعیین کننده سطح دسترسی است. اگر آن را بر روی requireAdministrator تنظیم کنید، قبل از اجرای برنامه ویندوز از کاربر درخواست تایید سطح دسترسی می کند و برنامه به طور درست اجرا می شود.
برای اطلاعات بیشتر می توانید به (^) مراجعه کنید.

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *