آخرین اخبار و مقالات و مطالب پیرامون wiki در ایران آی سی تی نیوز ، پایگاه فناوری اطلاعات و ارتباطات ایران
بر روی این دامنه اینترنتی سیستم مدیریت محتوا
پارس سی ام اس
نصب شده است که نرم افزاری قوی جهت طراحی سایت
می باشد. طراحی وب
با استفاده از پرتال
( پورتال
) پارس منجر به طراحی وب سایت
شما می شود. طراحی وب سایت
کپی رایت پورتال
پارس
از ویندوز ویستا به این طرف، سیستم امنیتی جدیدی به نام user account control به ویندوز اضافه شد. این سیستم در نسخه های قبلی هم بود، اما کاربرد فعلی را نداشت. این سیستم امنیتی در روزهای ابتدایی کار با ویندوز ویستا 7، آزاردهنده به نظر نمی رسد، ولی بعد از مدتی به یک مزاحم تبدیل می شود و بیشتر کاربران، این سیستم را غیرفعال می کنند. برای آشنایی بیشتر با آن و نحوه غیرفعال کردن آن به لینک های پاورقی مراجعه کنید. بحث ما درباره نوشتن برنامه هایی است که در ویندوز ویستا و 7 نوشته می شوند و قرار است با uac دست و پنجه نرم کنند. اجازه دهید با یک مثال این موضوع را بیشتر روشن کنیم. ممکن است شما در برنامه خود نیاز به تغییراتی در رجیستری داشته باشید یا این که یک فایل را در درایو اصلی ویندوز، تغییر دهید. اگر uac شما غیرفعال نباشد با یک پیغام خطا مواجه می شوید (این خطا ناشی از رخ دادن استثنا unauthorize exception است). عملیات مورد نظر شما مختل خواهد شد و کار به درستی انجام نمی شود و طبعا بخش های دیگر برنامه شما هم درست کار نخواهند کرد. بسیارخوب، این مشکل را چگونه حل کنیم؟اولین راهی که پیش روی ماست غیرفعال کردن uac است. اما بزرگ ترین مشکل این است که نمی توانید به مشتری بگویید حتما uac را غیرفعال کند. ضمن این که غیرفعال کردن آن، خود نیاز به دسترسی ادمین دارد و ممکن است کاربر دسترسی به ادمین نداشته باشد. راه دیگر این است که به کاربر اطلاع دهیم یا خودش uac را غیرفعال کند یا زمان اجرای برنامه از گزینه run as administrator را انتخاب کند.این روش ها، روش های درستی هستند، اما بهترین نیستند. در اینجا ما روش سومی را به شما معرفی می کنیم. در این روش این برنامه خود را، به صورت administrator اجرا می کند.برای شروع، نکته ای در مورد یکی از دستورات خط فرمان ویندوز بدانید. در خط فرمان ویندوز دستوری به نام runas موجود است. این دستور به ویندوز می فهماندکه فلان برنامه (که آدرس آن را به عنوان آرگومان به runas داده ایم) در چه حالتی(mode) قرار است اجرا شود یا با چه سطح دسترسی باید اجرا شود. برای اطلاعات بیشتر در مورد این دستور کافی است از help آن استفاده کنید. برای مطالعه help دستور را با آرگومان /? اجرا کنید: (runas /?) یا به لینک پاورقی مراجعه کنید.برای غلبه به این مشکل چه کنیم؟ اولین کاری که باید انجام شود، بررسی حالت اجرای برنامه است. باید متوجه شویم که آیا برنامه به سیستم دسترسی کامل دارد؟ برای این کار از متد زیر استفاده می کنیم.
static internal bool isadmin(){ windowsidentity id = windowsidentity.getcurrent(); windowsprincipal p = new windowsprincipal(id); return p.isinrole(windowsbuiltinrole.administrator); { این متد ابتدا مشخصات کاربر جاری را از سیستم می گیرد و با استفاده از isinrole مشخص می کند که کاربر جزو دسته administrator است یا خیر. برای اطلاعات بیشتر در مورد متدها و کلاس های استفاده شده به msdn مراجعه کنید. اگر متد بالا مقدار true را برگرداند، یعنی کاربر ادمین است و دسترسی کامل و نامحدود به سیستم دارد و می تواند هر عملی را انجام دهد.نکته: وقتی شما از گزینه run as administrator برای اجرای برنامه استفاده می کنید، مثل این است که کاربر ادمین برنامه را اجرا کرده است یا این که وقتی uac را غیر فعال می کنید، بدین معناست که همه کاربران ادمین هستند.اگر کاربر ادمین نبود، یعنی متد isadmin مقدار false را برگرداند، چه باید کرد؟در این شرایط شما باید برنامه را با استفاده از دستور runas که پیش تر توضیح داده شد اجرا کنید. این کار با استفاده از متد زیر انجام می شود:
internal static void restartelevated(){ processstartinfo startinfo = new processstartinfo(); startinfo.useshellexecute = true; startinfo.workingdirectory = environment.currentdirectory; startinfo.filename = application.executablepath; startinfo.verb = "runas"; try { process p = process.start(startinfo); } catch(system.componentmodel.win32exception ex) { return; //if cancelled, do nothing } application.exit();} کاری که این متد انجام می دهد این است که نمونه دیگری از برنامه ما را با دستور runas اجرا می کند و سپس نمونه قبلی را با استفاده از application.exit می بندد. بعد از اجرای این متد، برنامه ما با سطح دسترسی ادمین اجرا می شود، درست مانند زمانی که ما گزینه run as administrator را برای اجرای برنامه انتخاب کرده ایم. به این ترتیب، برنامه بدون مشکل تمام کارها را انجام می دهد. منبع:
http://www.codeproject.com/kb/vista-security/uac_shield_for_elevation.aspx پاورقی: شیوه غیرفعال کردن uac:
http://en.wikipedia.org/wiki/user_account_control استفاده از دستور runas
http://en.wikipedia.org/wiki/runas
امیربهاالدین سبط الشیخ
... org/wiki/order_of_operationsپس اگر داشته باشیم a+b*c اول b در c ضرب می شود و سپس حاصل با a جمع می شود، حال اگر داشته باشیم که ابتدا b با c جمع می شود و سپس حاصل در a ضرب می شود همان طور که می بینید، همین تقدم عملگر ها را ما در ریاضی و هنگام محاسبه ذهنی و دستی عبارت آن را لحاظ می کنیم ...
... درحالی که 3 درصد پاسخ دهندگان نیز به استفاده خود از برنامه ویکی های (wiki) متکی برمردم اشاره می کنند ...
... org/wiki/ati [3] http://en ... org/wiki/nvidia [4] http://en ... org/wiki/larrabee_(gpu) پی نوشت 1 ...
دسترسی اینترنت مستقیم کاربران یک سازمان و اداره، هرچقدر هم که کوچک باشد، می تواند باعث از دست رفتن سهوی یا عمدی اطلاعات مهم شرکت از داخل و یا خارج سیستم شود، جدا از آن، امکان مدیریت شبکه در حالت مستقیم وجود ندارد و نمی توان وضعیت کارمندان و میزان استفاده و یا فعالیت های آنها را رهگیری کرد. از این رو، سخت افزارها و نرم افزارهایی وجود دارند که به کمک آنها می توان بخشی از دسترسی کاربران را محدود، فیلتر یا گزارش گیری کرد. ...
... org/wiki/main _function_%28programming%29 http://en ... org/wiki/entry_point http://en ... org/wiki/command-line_argument پی نوشت 1 ...
|
صفحه 1
|
2 | 3 | 4 |
|