ورود

View Full Version : سوال: اجرای یک برنامه قبل از لود شدن ویندوز



R2du-soft
یک شنبه 20 اردیبهشت 1394, 03:10 صبح
با سلام به دوستان عزیز
چطور میشه یک برنامه رو در هنگام اجرای ویندوز در صفحه starting windows اجرا کرد؟!
مطمئنا شما ویندوز هایی نصب کردید که بعد از نصب شدن به صورت 100% و قبل از چیدن دسکتاپ در لحظه لود شدن ویندوز میاد ویندوز رو اکتیو میکنه و یا یک برنامه باز میکنه و میشه با تیک زدن گزینه های دلخواه برنامه هایی مثل kmplayer,mozilla یا هر چیز دیگه رو نصب کنه.
دقیق میخوام بدونم چطور (بدون نوشتن برنامه که مطمئنم میشه اینکارو کرد) و با تغییر در قسمت های مختلف ویندوز میشه یک برنامه رو قبل از لود شدن ویندوز همونجایی که مینویسه starting windows قبل از نمایان شدن دسکتاپ اجرا کرد.
خودم کمی تغییر در ریجستری دادم اما عملی نبود،خیلی هم جست و جو کردم اما چیزی پیدا نکردم بجز صفحه زیر که این ها میاد فایل رو در استارتاپ میزاره که من اینطور نمیخوام!
http://www.techspot.com/community/topics/execute-a-command-before-windows-7-loads.163760


یک مثال خوب اینه که برنامه TuneUp Utilities 2014 رو نصب کنید و بزنید سیستم ریجستری سیستم رو دیفرگ کنه ، میبینید که سیستم رو ریست میکنه و بعد از دیدن starting windows میاد دیفرگ میکنه ریجستری سیستم رو و بعدش دسکتاپ رو نمایان میکنه!این کار چطور امکانپذیره؟

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

#target
دوشنبه 21 اردیبهشت 1394, 12:02 عصر
در ویندوز اکس پی میشد فایلی رو جای فایل NTOSKRNL ویندوز قرار داد، مثلا میتونین کرنل رو از سورس با تغییرات مورد نظر کامپایل کنید و اون فایل رو در Boot.ini بگین فایل یعنوان کرنل بارگذاری بشه
البته اون برنامه ها از روش دیگه ای شاید استفاده میکنن، اگه پیدا کردم روش هایی رو بهتون میگم
البته سرویس ها هم قبل از وارد شدن به دسکتاپ اجرا میشن

R2du-soft
سه شنبه 22 اردیبهشت 1394, 03:48 صبح
ممنون ویندوز 7 از چه فایلی برای استارت سرویس ها استفاده میکنه؟ و اینکه چطور میشه یک خط فرمان داس رو قبل از اجرای سرویس ها اجرا کرد؟ من تو این چند روزه تست کردم و دیدم که سرویس ها قبل از نمایش starting windows اجرا میشن یعنی در صفحه سیاه رنگ هنگام بوت شدن! برای اینکه بفهمیم و ببینیم که کجا لود میشن میتونیم سیستم رو به سیف مود ببریم،در هنگام رفتن به سیف مود میبینید روی مانیتور در صفحه سیاه رنگ نوشته های سفید پر میشه،اینجا لحظه لود درایور هاست،البته در حالت عادی هم همینجا درایور ها لود میشن اما دیده نمیشن. حالا تنها راه اینه که دستور رو قبل از اجرای سرویس ها و یا بعد از اجرای سرویس های خود ویندوز اجرا کنم... ولی چطور؟!کلی سرچ زدم نه توی سات های ایرانی چیزی پیدا کردم نه خارجی! اصلا این کار شدنی هست!؟که چند خط دستور داس رو در اون زمان اجرا کرد؟!

#target
سه شنبه 22 اردیبهشت 1394, 11:18 صبح
چهار یخش زیر رو در نظر بگیر
1- روشن کردن کامپیوتر و نمایش اطلاعات سخت افزار و ...
2- صفحه سیاه Starting Windows
3- صفحه دارای Welcome
4- آمدن دسکتاپ

حالا شما بین کدام یک از این دو میخواید برنامه اجرا شه، بین مورد یک و دو انگار باید BootSector رو دستکاری کنین که احتمالا اینی که شما میخواین نیست
بین مورد ۲ و ۳ احتمالا منظور شما هست، یعنی مثل زمانی که Check Disk ویندوز میاد و ده ثانبه ازتون مهلت میخواد (سوال جالبیه باید بررسی کنم)
بین مورد سه و چهار هم در رجیستری یک کلید هست که میگه Explorer.exe باید اجرا شه با تغییر اون به برنامه خودتون بجای دسکتاپ برنامه شما میاد و شما باید در انتهای کار Explorer رو اجرا کنین

نگاهی به Schtasks (http://msdn.microsoft.com/en-us/library/windows/desktop/bb736357(v=vs.85).aspx) (اینجا هم (https://technet.microsoft.com/en-us/library/bb490996.aspx)) هم بندازین، به عنوان مثال با سویچ /RU و system میشه به عنوان سیستم اجرا شه و اگه با سویچ ONSTART زمان بندی کنین ببینین چی میشه

R2du-soft
جمعه 01 خرداد 1394, 00:32 صبح
ممنون دوست عزیز
شکل دستوری که باید وارد کنم چطور باید باشه؟چون من هرچی تست کردم جواب نداد!
دقیقا command باید قبل از اجرای سرویس های نرم افزار ها اجرا بشه...که فکر میکنم بین موارد 1 و 2 باشه!

#target
جمعه 01 خرداد 1394, 21:53 عصر
ممنون دوست عزیز
شکل دستوری که باید وارد کنم چطور باید باشه؟چون من هرچی تست کردم جواب نداد!
دقیقا command باید قبل از اجرای سرویس های نرم افزار ها اجرا بشه...که فکر میکنم بین موارد 1 و 2 باشه!

بنظرم در اون حالت باید به سمت درایور نویسی بیاین ، من خودم خیلی آشنایی با درایور نویسی ندارم ، ولی انگار برای نصب و اجراش در سیستم کاربرها باید امضا دیجیتال بشه در ویندوزهای جدید که فک کنم ی جور مشکل باشه

حالا شما شاید کار و هدفتون رو بگین بشه راه حل راحت تر و مناسب تری ارائه داد

R2du-soft
جمعه 01 خرداد 1394, 22:36 عصر
ممنون عزیز
هدف من این هست که من برنامه ای مینویسم برای تغییر در برنامه های دیگه و چون سرویس اون برنامه درحال اجرا هست میخوام با کد نویسی و یک ریست سرویس رو غیر فعال و تغییرات رو اعمال و سپس سرویس رو اجرا کنم و این سرویس مانع کار من شده...
و اگه بتونم این روش رو انجام بدم میخوام به عنوان پروژه کارشناسیم ارائش کنم،تغییر در سطح سیستم عامل قبل از اجرای آن...