ورود

View Full Version : حذف يک exe توسط خودش



h_mohamadi
پنج شنبه 19 شهریور 1388, 17:02 عصر
سلام بر دوستان گرامي و اساتيد محترم دلفي
من مي خواهم يک فايل exe داشته باشم که فرم نداشته باشد و با اجرا شدنش آدرسي را در درون ريجستري نوشته و بسته شده و خوش را delete کند مي خواست چه دستوري بايد براي اينکه اين فايل خودش را حذف کند بنويسم
با تشکر از راهنمايي هاي شما دوستان گرامي

tdkhakpur
پنج شنبه 19 شهریور 1388, 20:02 عصر
مثال از توابع زیر, خلاصه کار شماست داخل برنامه consol استفاده کنید.


ParamStr(0); نام برنامه ای را که در حال اجراست را برای شما برمیگرداند
DeleteFile('tset.exe'); // فایل را برای شما حذف میکند

h_mohamadi
یک شنبه 22 شهریور 1388, 17:36 عصر
منونم مي شود يک کمي بيشتر توضيح بدهيد
با سپاس فراوان

mehdimdp
دوشنبه 23 شهریور 1388, 00:12 صبح
مثال از توابع زیر, خلاصه کار شماست داخل برنامه consol استفاده کنید.


ParamStr(0); نام برنامه ای را که در حال اجراست را برای شما برمیگرداند
DeleteFile('tset.exe'); // فایل را برای شما حذف میکند


ميشه توضيح بديد؟؟

AliReza Vafakhah
دوشنبه 23 شهریور 1388, 00:21 صبح
روشی که دوستمون عرض کردن شدنی نیست !

زیرا برنامه در حال اجرا هست و سیستم عامل قادر به حذف آن نیست !

حال این روش

اگر می خواهید فقط یکبار برنامه اجرا شود (در هنگام بالا آمدن ویندوز==>> Logon ) نیاز به هیچ کدی ندارید این کار رو با قرار دادن برنامه در قسمت استارت آپ RunOnce قرار دهید

در یکی از این دو مسیر

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\RunOnce
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\Curre ntVersion\RunOnce

پس از اجرای اولین بار توسط سیستم عامل آدرس برنامه شما که درآن میسر قرار داده اید پاک میشود

باز ببین این به کارت میاد اگه نه از Batch File هم میتونی کمک بگری

موفق باشی

babakmomeni
دوشنبه 23 شهریور 1388, 10:58 صبح
سلام بر دوستان گرامي و اساتيد محترم دلفي
من مي خواهم يک فايل exe داشته باشم که فرم نداشته باشد و با اجرا شدنش آدرسي را در درون ريجستري نوشته و بسته شده و خوش را delete کند مي خواست چه دستوري بايد براي اينکه اين فايل خودش را حذف کند بنويسم
با تشکر از راهنمايي هاي شما دوستان گرامي

سلام. راهی که من می تونم خدمتتون پیشنهاد بدم با استفاده از کامپوننت های رایگان کمپانی ABF Software هستش. البته شما فقط از یونیت abfsysutils اون استفاده خواهید کرد. پس از اضافه شدن این یونیت به برنامه تابعی به نام abfremovefile قابل دسترسی میشه که می تونین با این کد


abfremovefile(application.exename)
فایل اجرایی برنامه رو پاک کنین. البته پاک شدن بلافاصله بعد از بسته شدن برنامه اتفاق می افته. امیدوارم کارتون رو راه بندازه. اگه کد مثال و یونیت مربوطه رو هم خواستین دستور بدین تقدیم کنم.
موفق باشید.

h_mohamadi
سه شنبه 24 شهریور 1388, 12:13 عصر
دوستان خوبم سلام
ممنونم از راهنمای خوب babakmomeni (http://barnamenevis.org/forum/member.php?u=48569) می شود خود کامپوننت و مثالی از آن را قرار دهید

babakmomeni
سه شنبه 24 شهریور 1388, 14:04 عصر
دوستان خوبم سلام
ممنونم از راهنمای خوب babakmomeni (http://barnamenevis.org/forum/member.php?u=48569) می شود خود کامپوننت و مثالی از آن را قرار دهید

سری کامپوننت ها رو از آدرس http://www.abf-dev.com می تونید دانلود و بعد نصب کنید که رایگانه. یک مثال بسیار ساده رو هم ضمیمه قرار میدم. البته به دو نکته عنایت داشته باشین:
1- برنامه مثال به صورت فرم دار هستش برای هدف شما ظاهرا برنامه کنسول مورد نظر هست که زحمتش پای خودتون خواهد بود.
2- در بخش یونیتهای برنامه حتما abfsysutils رو بذارین چون عملا برای این کار شما از سری کامپوننت ها استفاده نمی کنین و فقط همین یونیت برای شما کافیه. ولی سری اونها هم ارزش دانلود رو داره (نظر شخصی).

موفق باشید

SayeyeZohor
چهارشنبه 10 خرداد 1391, 12:11 عصر
ميشه زحمت بكشيد abfComponents رو براي دلفي 2010 بگذاريد؟
آخه ايراد مي گيره

hossein_h62
چهارشنبه 10 خرداد 1391, 13:24 عصر
ميشه زحمت بكشيد abfComponents رو براي دلفي 2010 بگذاريد؟
آخه ايراد مي گيره
تا دلفی 2005 بیشتر ساپورت نمیکنه دوست عزیز!

SayeyeZohor
پنج شنبه 11 خرداد 1391, 06:27 صبح
ميشه يونيت abfsysutils رو برام بذارين؟