2 ماه قبل

6 دیدگاه

Python Snake

ساخت پنجره‌ای که هیچ‌کس نمی‌تواند آن را ببندد: شوخی ویروسی با پایتون!

آیا تا به حال خواسته‌اید دوستانتان را با پنجره‌ای که به هیچ‌وجه بسته نمی‌شود، اذیت کنید؟! در این مقاله قصد داریم به شما نشان دهیم که چگونه با استفاده از پایتون و کتابخانه Tkinter، یک پنجره فول‌اسکرین غیرقابل بستن بسازید. این روش البته بیشتر جنبه شوخی دارد تا کاربرد جدی! فقط حواستان باشد، مسئولیت استفاده از این کدها با خودتان است و شاید بهتر باشد قبل از استفاده، کمی فکر کنید که چطور از آن استفاده می‌کنید!

پیش نیازها

قبل از هر چیز، لازم است پایتون را روی سیستم خود نصب کرده باشید. اگر هنوز این کار را نکرده‌اید، ابتدا راهنمای نصب پایتون را مطالعه کنید. همچنین برای این شوخی جذاب، به یک کتابخانه اضافه به نام keyboard نیاز دارید. این کتابخانه به شما کمک می‌کند تا کلیدهای دردسرساز را غیرفعال کنید.

pip install keyboard

بیشتر بخوانید:

قدم به قدم تا شوخی بزرگ!

حالا بیایید یک پنجره خالی و فول‌اسکرین ایجاد کنیم که به هیچ وجه بسته نشود، مگر اینکه خودمان بخواهیم! این پنجره به‌گونه‌ای طراحی می‌شود که تمام صفحه را پوشش دهد و کاربر نتواند به هیچ‌جای دیگر دسترسی پیدا کند. به نظر می‌رسد، دوستانتان حسابی گرفتار می‌شوند!

from tkinter import *
root = Tk()
root.attributes('-fullscreen', True)
root.mainloop()

این کد باعث می‌شود که صفحه‌نمایش شما به‌طور کامل با یک پنجره خالی پر شود. اما این کافی نیست؛ کاربر هنوز می‌تواند با استفاده از کلیدهای میانبر یا Task Manager از شر این پنجره خلاص شود. بنابراین باید برنامه‌مان را تقویت کنیم!

چالش‌های موجود

خب، در این مرحله هنوز چند راه فرار برای کاربر وجود دارد که باید جلوی آن‌ها را بگیریم:

  • Alt + F4: بسته شدن برنامه با کلیدهای میانبر.
  • دکمه ویندوز: خروج از حالت فول‌اسکرین با منوی استارت.
  • Task Manager: استفاده از کلید Ctrl + Shift + Esc برای باز کردن تسک منیجر و بستن برنامه.
  • خاموش کردن سیستم: البته این تنها راه فرار برای کاربر خواهد بود!

غیرفعال کردن کلیدهای میانبر

اینجاست که کتابخانه keyboard به کمک ما می‌آید! با این کتابخانه می‌توانید کلیدهای میانبری که ممکن است برای بستن برنامه استفاده شوند را غیرفعال کنید. کافی است کد زیر را به برنامه خود اضافه کنید تا خیالمان راحت شود که هیچ کلیدی نمی‌تواند برنامه را ببندد. این کدها را بعد از ایمپورت و قبل از root.mainloop() قرار دهید:

import keyboard
keyboard.block_key('Win')
keyboard.block_key('Alt')
keyboard.block_key('Ctrl')
keyboard.block_key('Shift')
keyboard.block_key('Esc')

حالا دیگر هیچ کدام از میانبرهای ویندوز و کیبورد برای بستن برنامه کار نمی‌کنند. دوست شما که توسط شما رکب خورده است سعی می‌کند با فشار دادن کلیدهای Alt+F4 یا Ctrl+Alt+Del فرار کند، متوجه می‌شود که هیچ‌کدام از آن‌ها فایده‌ای ندارند!

اجرا به صورت خودکار در هر بار روشن شدن سیستم

اگر می‌خواهید شوخی‌تان حتی جدی‌تر باشد و این پنجره هر بار که سیستم روشن می‌شود اجرا شود، این ترفند ساده را انجام دهید:

  • فایل کد پایتون خود را به پوشه‌ای که باز می‌شود، منتقل کنید.
  • دکمه‌های Win + R را بزنید.
  • در کادر باز شده عبارت shell:startup را تایپ کرده و کلید Enter را بزنید.

از این به بعد، هر بار که سیستم روشن می‌شود، برنامه شما به‌صورت خودکار اجرا می‌شود و دوستانتان مجبورند هر بار با این پنجره غیرقابل بستن دست و پنجه نرم کنند. البته مطمئن شوید که راهی برای متوقف کردن آن در نظر دارید، وگرنه ممکن است خودتان هم گرفتار شوید!

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

یک فوت کوزه‌گری دیگر هم وجود دارد تا شوخی‌تان بی‌نقص شود! اگر می‌خواهید مطمئن شوید که برنامه شما حتی در تسک‌بار هم نمایش داده نمی‌شود و هیچ اثری از آن باقی نمی‌ماند، کافی است پسوند فایل پایتون خود را از .py به .pyw تغییر دهید. این کار باعث می‌شود که برنامه بدون هیچ پنجره‌ای در تسک‌بار اجرا شود و حتی حرفه‌ای‌ترین کاربرها هم نتوانند به راحتی آن را ببندند. البته که تمام اینایی که گفتیم در صورتی اجرا میشه که یه کامنت مثبت زیر این پست بزارید.

جمع‌بندی

این بود روش ساخت پنجره‌ای که به هیچ عنوان بسته نمی‌شود! البته، فراموش نکنید که این روش‌ها به شوخی و اذیت کردن محدود می‌شوند و ممکن است برای کسی که گیر این پنجره بیفتد، چندان خوشایند نباشد. پس با احتیاط از این کدها استفاده کنید و به شوخی‌هایتان همواره مسئولانه نگاه کنید!

6 پاسخ

دیدگاهتان را بنویسید

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

پیشنهاد های کد اکسپلور