بچه های کامپیوتر همدان - ورودی ۸۴

این وبلاگ به تمام برو بچز باحال کامپیوتر همدان تعلق داره ..

بچه های کامپیوتر همدان - ورودی ۸۴

این وبلاگ به تمام برو بچز باحال کامپیوتر همدان تعلق داره ..

جلوگیری از اجرای خودکار برنامه ها از سی دی یا فلش دیسک و انتقال

جلوگیری از اجرای خودکار برنامه ها از سی دی یا فلش دیسک و انتقال ویروسها
 
حتما تجربه کرده اید که با قرار دادن سی دی نرم افزار خاصی  یک برنامه بصورت خودکار اجرا شده و پنجره نصب نرم افزار یا پنجره استفاده از نرم افزار نمایش داده می شود. این به دلیل امکان سیستم عامل ویندوز XP برای اجرای خودکار برنامه ها از یک درایو  (مثل سی دی ) است. اما اجرای خودکار برنامه ها همیشه هم مفید نیست و مثلا زمانی که شما صرفاً میخواهید فهرست فایلها موجود در درایو فوق را ببنید مزاحم است اما مهمترین ضرر آن میتواند اجرای ویروسها (یا تروجانها) و انتقال خودکار آنها از سی دی یا درایو فوق به کامپیوتر شما باشد. برخی از ویروسها و تروجانها از این امکان ویندوز سوء استفاده میکنند و در فلش دیسکی (یا همان کول دیسک یا USB drive) که به کامپیوتر آلوده متصل شده یا در هنگام نوشتن در سی دی نسخه ای از خود را بطوری منتقل میکنند که با قرار گرفتن در کامپیوتر دیگری بصورت خودکار اجرا شده و آنرا آلوده می کند. برخی از ویروسها حتی نسخه اجرای خودکار (autorun) را در پارتیشنهای مختلف هارددیسک هم قرار میدهند و عملا با باز کردن هر درایو ویروس امکان اجرای مجدد را دارد. برای جلوگیری از اجرای خودکار برنامه ها در ویندوز XP نسخه PRO یا Media center تغییرات زیر را انجام دهید.

1. دکمه Start  را بزنید و از منوی Start گزینه  Run را انتخاب کنید
2. در پنجره Run عبارت  gpedit.msc  را تایپ کنید و دکمه Enter را بزنید
3.پنجره  Group Policy نمایش داده می شود. در سمت چپ و در زیر   Computer Configuration آیتم  Administrative Templates را باز کنید.
4. بعد از باز کردن آیتم Administrative Templates  آیتم  System را زیر مجموعه آن انتخاب کنید (فقط کلیک کنید تا رنگ آن عوض شود)
5. حالا در پنجره سمت راست فهرستی از تنظیمات نمایش داده می شود که در بین آنها گزینه  Turn off Autoplay را انتخاب کنید ( دوبار کلیک کنید)
6.پس از دوبار کلیک بر Turn off Autoplay پنجره ای باز می شود در تب Setting از بین انتخابها گزینه  Enabled را انتخاب کنید همچنین در قسمت پایین تر و فهرست باز شوی روبروی عبارت  Turn off Autoplay on گزینه All drivers را انتخاب کنید و سپس OK را بزنید و پنجره Group Policy را هم ببنید.

اما در ویندوز XP نسخه Home Edtion  استفاده از شیوه بالا امکان پذیر نیست و بایستی تغییرات در ریجستری انجام شود. البته در ایران عموما از ویندوز PRO استفاده می شود و اکثر کاربران میتوانند از همان شیوه بالا اجرای خودکار را غیر فعال کنند. کاربران ویندوز XP home میتوانند برای غیر فعال کردن اجرای خودکار تغییرات زیر را اعمال کنند.

1. در منوی Start گزینه Run را انتخاب کنید و در پنجره Run عبارت regedit را تایپ و سپس Enter را بزنید.
2.پس از اقدام بالا پنجره Registry Editor باز می شود در بخش سمت چپ پنجره  گزینه  HKEY_CURRENT_USER را باز کنید.
3.سپس از زیر شاخه HKEY_CURRENT_USER گزینه  Software و سپس از زیر شاخه آن گزینه  Microsoft را انتخاب کنید.
4. از زیر شاخه  Microsoft گزینه  Windows  را انتخاب کنید و سپس در زیر شاخه آن نیز  CurrentVersion و در زیر شاخه آن نیز گزینه  Policies را انتخاب کنید و بعد Explorer را انتخاب کنید.
5.پس از انتخاب Explorer  در سمت راست بر گزینه NoDriveTypeAutoRun دوبار کلیک کنید و در پنجره باز شده در زیر  Value data عبارت ff را انتخاب کنید و سپس OK را بزنید و پنجره Registry Editor را هم ببندید.

اگر چه کمی پیچیده به نظر می رسد اما در صورتی که گام به گام حرکت کنید کار ساده ای خواهد بود. توجه داشته باشید که غیر فعال اجرای خودکار برای کسانی که از به کرات از سی دی یا فلش دیسکهای دوستان یا مشتریانشان استفاده می کنند (مثل مراکز خدماتی نشر یا چاپ) یک توصیه امنیتی جدی به حساب می آید.

توابع API

API چیست؟

حروف A.P.I. در واقع مخفف عبارت Application Programming Interface است. اگر در دایرکتوری سیستم ویندوز نگاهی بیاندازیم (در ویندوزهای برپایه 95/98 در آدرس \Windows\System و در ویندوزهای مبتنی بر NT در آدرس \WinNT\System32) تعدادی فایل کتابخانه ای dll (Dynamic Link Library) مشاهده میکنیم. این فایلها مجموعه توابعی را تشکیل میدهند که برای اجرای سیستم عامل، تامین رابط کاربر (User Interface) و محیط کاربری استفاده میشوند. این مجموعه فایلها در واقع Windows API را تشکیل میدهند.
هدف Windows API این است که به برنامه نویسان اجازه داده شود تا برنامه هایی مبتنی بر سیستم عامل ویندوز و رابط کاربری آن تولید گردند. در واقع به جای اینکه هر کس با توجه به سلیقه های شخصی کدهایی جهت تولید اجزاء اصلی ویندوز همچون فرمها، کلیدها، منوها و ... تنظیم کند، همه برنامه نویسان میتوانند توابع اختصاص داده شده مرتبط را که در Windows API وجود دارند صدا کنند و به سیستم عامل اجازه دهند تا آن اجزاء را ایجاد کند.
اهداف توابع API و نحوه استفاده از آنها در پلت فرم SDK (Software Development Kit) آمده است (دوستانی که شیوه های قدیمی برنامه نویسی برای ویندوز را میشناسند حتما با این کیت آشنا هستند) و از طریق اسناد مربوطه قابل دسترسی هستند. به عنوان مثال در پکیج MSDN (MicroSoft Developer Network) ویا در کمک دلفی بخش Windows SDK میتوانیم لیست این توابع را مشاهده کنیم. علاوه بر اینها امکان دستیابی به این اطلاعات از طریق آدرس زیر نیز وجود دارد:
http://support.microsoft.com/defaul...tuplauncher.htm

دقت شود نحوه صدا زدن این توابع در زبانهای برنامه نویسی مختلف متفاوت است اما اصول کار در تمامی آنها یکسان است.

 چرا از Windows API استفاده میکنیم؟

برنامه نویسان اصولا با هدف اجرای عملیاتی فراتر از آنچه که محیطهای مختلف در حالت استاندارد خود ارائه میکنند به استفاده از توابع API روی می آورند.
به عنوان مثال فرض کنیم زمانی که بخواهیم به محض ایجاد فوکوس بر روی یک Edit Box زبان نوشتاری به فارسی تغییر کند و به محض اینکه فوکوس تغییر کرد زبان کاربری هم به حالت عادی بازگردد. استفاده از این توابع در مسائل پیچیده تر گاها بسیار مفید میباشد.

- چگونه توابع API را صدا کنیم؟

با توجه به اینکه این مطلب به زبان برنامه نویسی خاصی اختصاص ندارد از این جهت در این بخش تنها اشاره ای به نحوه کار با توابع Windows API میشود.
به همراه کلیه کامپایلرها و مترجم های ارائه شده در بازار که قابلیت استفاده از توابع Windows API را دارند اسنادی در رابطه با نحوه استفاده از این توابع وجود دارد که برنامه نویس میتواند با مراجعه به آنها با شیوه کار و صدا زدن توابع مورد بحث آشنا شود.
نکته مشترک بین محیطهای مختلف اینست که برای استفاده از این توابع ابتدا نیاز به وجود بخشی جهت تعریف این توابع هست و سپس امکان صدا زدن آنها در بین برنامه ایجاد میگردد. یعنی کار با این توابع دو مرحله دارد:
- تعریف مشخصات تابع مربوطه
- صدا زدن تابع مورد نظر در هر جای برنامه درست همانند دیگر توابع استاندارد

- API Wrappers

شاید بیان چنین عنوانی به صورت مستقل چندان منطقی و قابل قبول نباشد اما چون چنین کلماتی در متون مختلف مورد استفاده قرار گرفته و میگیرند، توضیحاتی که به درک این مفاهیم کمک کنند میتوانند مفید باشند.
همانگونه که گفته شد امکان تولید کلیه اجزاء استاندارد سیستم عامل ویندوز از طریق صدا زدن توابع Windows API وجود دارد، اما صدا زدن مستقیم این توابع کد برنامه را پیچیده میکند و امکان تولید خطاهای غیرقابل پیش بینی را افزایش میدهد که ایجاد خطاهای سیستمی میکنند و حتی احتمال ضربه زدن به سیستم نیز وجود دارد.
از این رو در نرم افزارهای برنامه نویسی محیطهایی تولید شده اند تا برنامه نویسان را در این امر یاری دهند. کامپایلرهای Delphi و CBuilder و همچنین مترجم Visual Basic و ... همراه خود محیط رابطی دارند که کاربر از طریق آنها به اجزاء استاندارد طراحی دسترسی دارد.
به این صورت برنامه نویس برای تولید اجزاء در برنامه خود نیاز به نوشتن کدهای طولانی ندارد. در این محیطها توابع مورد نیاز برای ایجاد یک جزء کامل یک جا جمع شده اند و در یک مجموعه قرار گرفته اند و کاربر به راحتی تنها به این مجموعه اشاره میکند.
این مجموعه یک API Wrapper است.
اصولا Wrapperها اختصاصا به اجزاء گرافیکی آنگونه که در بالا گفته شد اطلاق نمیگردند. هر مجموعه ای مانند: یک ActiveX، یک Component یا یک تابع ایجاد شده در یک فایل dll و ... میتواند یک API Wrapper باشد.
در حالتی چنین مجموعه هایی در دسترس باشند پیشنهاد شده که از آنها استفاده شود.

نکته: دقت شود تفاوتهایی میان نسخه های مختلف API وجود دارد، مثلا هنگام کار با ویندوز2000 باید دقت کرد گاهی تفاوتهایی بین توابع API مرتبط با آن و توابع ویندوز 98 وجود دارد.

در پایان توصیه میشود در استفاده از توابع Windows API در برنامه ها محتاط باشید و پیش از استفاده اسناد راهنمای تابع مورد نظر خود را به دقت مطالعه کنید.
 

منبع: www.barnamenevis.org