آموزش ساخت ویروس تعویض عکس پس زمینه ویندوز در پایتون :: Mr Python | مستر پایتون

آموزش ساخت ویروس تعویض عکس پس زمینه ویندوز در پایتون

  • ۱۴۵۵

آموزش ساخت ویروس تعویض عکس پس زمینه ویندوز در پایتون

 

درود به همه !

 

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

برای نوشتن این اسکریپت ما نیاز به هیچ کتابخونه ی خاصی نداریم  فقط از کتابخونه ی ctypes و time استفاده میکنیم که به طور پیشفرض نصب هستند . 

اما چجوری با پایتون تصویر پس زمینه رو عوض کنیم . برای اینکار از Windows API کمک میگیریم . 

Windows API چیه ؟ در اصل windows API یک سری توابع و کلاس های اماده هستش که خود مایکروسافت در اختیار برنامه نویسان قرار داده تا از اونا برای کنترل کردن و فعالیت های مختلف تو ویندوز در زبان های برنامه نویسی استفاده کنند . 

این توابع Windows API از طریق فایل های dll در ویندوز قابل دسترسی هستند .

 

برای استفاده از توابع Windows API در پایتون از کتابخونه ی ctypes استفاده میکنیم . windows API تابعی داره به اسم SystemParametersInfoA که به وسیله ی اون میتونیم تنظیمات مختلف یک یوزر از جمله تصویر پس زمینه شو تغییر بدیم . 

برای همین برای تغییر پس زمینه از این تابع استفاده میکنیم . 

 

بریم برا نوشتن اسکریپت .

سورس کد :

from ctypes import *

picture = "C:\\Users\\Hossein\\Desktop\\wallpaper.jpg".encode()

windll.user32.SystemParametersInfoA(20 , 0 , c_char_p(picture) , 0)

 

توضیح : اسکریپت ساده بالا میاد تصویر پس زمینه رو به تصویری که آدرسشو در متغییر picture ذخیره کردیم تغییر میده . چطوری :

در ابتدا ایمپورت کردن از کتابخونه ی ctypes رو انجام دادیم . سپس یه متغییر تعریف کردیم به نام picture که آدرس عکسی که قراره در پس زمینه قرار بگیره رو داخلش ریختیم و سپس اون رو با استفاده از متود encode از string به bytes تبدیلش کردیم .

نکته خیلی خیلی مهم : دقت کنید که آدرسی که داخل متغییر picture مینویسید حتما باید یک آدرس مطلق باشه . مطلق یعنی اینکه آدرس کامل باشه برای مثال حتی اگه اسکریپتتون هم کنار عکس هستش بازم آدرس عکس رو به همراه نام درایوش به طور کامل بدید مثل آدرسی که من استفاده کردم . همینطور که میبینید از درایو C شروع کردم تا رسیدم به desktop و سپس عکس .

پس از ساختن آدرس عکس میرسیم به خط اصلی که تصویر رو عوض میکنه یعنی استفاده از تابع SystemParametersInfoA که توضیح دادم بالا . اولین ورودی تابع مشخص کننده ی اینه که شما چه تنظیماتی از کاربر رو میخواین عوض کنید . عدد 20 یعنی میخوایم عکس پس زمینه رو عوض کنیم . دومین پارامتر تابع رو صفر میزاریم . سومین پارامتر تابع باید آدرس عکس (picture) رو بهش بدیم . چون داریم از windows API استفاده میکنیم باید از نوع داده های مخصوص به خود windows استفاده کنیم . به خاطر همین متغییر picture رو با استفاده از متود c_char_p تبدیل به c_char_p (pointer یا اشاره گری به کاراکتر) کردیم . 

پارامتر آخر رو هم صفر میدیم بهش . 

 

نهایتا بعد از اجرای اسکریپت ، تصویر پس زمینتون به عکسی که بهش دادیم تغییر پیدا میکنه .

این اسکریپت اصل کار ما رو انجام میده . حالا با بهره گیری از اسکریپت بالا میتونیم یه کار باحال بکنیم .

اسکریپت زیر رو ببینید :

# wallpaper bomber

from ctypes import *
from time import sleep

wall1 = "C:\\Users\\Hossein\\Desktop\\wall1.png".encode()
wall2 = "C:\\Users\\Hossein\\Desktop\\wall2.png".encode()
wall3 = "C:\\Users\\Hossein\\Desktop\\wall3.png".encode()

while True:
    windll.user32.SystemParametersInfoA(20 , 0 , c_char_p(wall1),0)
    sleep(0.5)
    windll.user32.SystemParametersInfoA(20 , 0 , c_char_p(wall2),0)
    sleep(0.5)
    windll.user32.SystemParametersInfoA(20 , 0 , c_char_p(wall3),0)
    sleep(0.5)

 

توضیح : در اسکریپت بالا ما 3 تا عکس رو تعریف کردیم . wall1 , wall2  و wall3 .

سپس با استفاده از یک حلقه ی while  و متودی که توضیح دادم در اسکریپت قبلی ، اومدیم هی تصویر زمینه رو عوض کردیم . وقتی این اسکریپت رو اجرا میکنیم هر 0.5 ثانیه یک بار تصویر ها عوض میشن و یک نمای خیلی باحال به وجود میارن . 

 

GIF زیر نحوه ی اجرا شدن این اسکریپت رو نشون میده :

 

امیدوارم که لذت برده باشید .

سوالی بود مطرح کنید .

 

یا حق !

Telegram Channel : @mrpythonblog

  • من یه درخاست دارم

    میشه انجام بدین؟

    من میخام روش ساخت ربات های وب رو با پایتون اموزش بدین(خیلی کاربدی هست برای کرک و..)

    پاسخ:
    سلام و درود.
    حتما آموزشش رو در حدی که فقط هدف آموزشی داشته باشه قرار میدیم . ولی آموزش استفاده مخرب از این مباحث رو خیر . 
    موفق باشید .
  • میشه یه نرم افزار زد که گیف بهش بدیم ست کنه رو سیستم؟

    بیاد اسپلیت کنه با فریم هاش

    سیو کنه

    بعد اون حلقه هه

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

    همینطور که گفتید باید فریم ها رو جدا کنید و تک تک اونا رو ست کنید روی صفحه دسکتاپ .
  • اوه مای پشم!!!!

    خیلی باحاله!!!!!!!!!!

    سپاسسس :)

    پاسخ:
    آره خیلی باحاله :)
    خواهش میکنم :))))
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی