اجرای برنامه در سطح دسترسی root در lazarus

به نام دانای برحق

مقدمه

شاید اگر شما با لینوکس و دلفی با هم کار کردید سراغ لازاروس هم رفته باشید این پلنگ مظلوم خوب با برنامه نویس های دلفی راه میادش با وجود لنگ زدن بازم سعی می کنه هواتو داشته باشه اما مسائله ای تو لینوکس وجو داره که توی ویندوز هم بخشی از بدل زده شده تو لینوکس دسترسی برنامه ها دو حالت هستش حالت کاربر عادی یا کاربر root یا ریشه که دسترسی کامل رو سیستم داره.
همین حالت تقریبا همون معادل run as admin در ویندوز هست اما با تفاوت های فاحش که اینجا جای بحث نیست.

 

Linux_Android_Root01
این مطلب فک نکنم حتی به انگلیسی وجود داشته باشه ولی ما فقط به پارسی منتشرش می کنیم.

موارد مورد استفاده :

یونیت (ها):

 Process

 

تابع (ها) :

 GetUserDir , RunCommand

سایر موارد

 Application class, gksu app

نحوه run شدن برنامه در حالت دسترسی root :

روی فرمتون دوبار کلیک کنید تا رویداد FormCreate برای ویرایش نمایش داده شود سپس کد زیر رو داخل کپی کنید:

 

البته با توجه با تغییرات در حد درک برنامه نویسش و توضیحات:

یونیت مورد نظر رو اضافه می کنیم با تابع GetUserDir و جستجو در آن متوجه میشم که این یوزر ریشه است یا خیر؟
در صورت ریشه نبودن دستور RunCammand رو اجرا می کنیم این دستور کارش خیلی ساده است با دستور gksu پسورد رو از کاربر میخواد با این برنامه برنامه خودمون رو دوباره باز می کنیم.

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

‌A1Gard

اول از همه کوچک ترین عضو مجموعه 4xmen بنده حقیر هستم. در ثانی یک توسعه دهنده هستم زمینه های تخصصی کارم :‌ Delphi, PHP, C++ ,Python, JavaScript, Unity game engine, C#, asm و علاقه مند به لینوکس، RCE ، کریپتوگرافی هستم. تا الان حضرت حق اینا رو به ما داده و هر وقت که بخواد ازمون میگیره دست خودشه. یا حق، با حق، تا حق

More Posts

پاسخ دهید

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