PDA

View Full Version : پاک کردن برناممون توسط خودش



gachboy
جمعه 08 آذر 1392, 10:35 صبح
سلام،چطور میشه برناممون توسط خودش پاک کنیم؟

m.4.r.m
جمعه 08 آذر 1392, 11:29 صبح
شما یه برنامه دیگه مینویسی یه برنامه کوچیک که بیاد آدرس برنامتونو بگیره و پاک کنه موقع خروج از برنامه اون برنامه رو با shell فراخوانی میکنی همین .

kimprog
جمعه 08 آذر 1392, 11:57 صبح
شما یه برنامه دیگه مینویسی یه برنامه کوچیک که بیاد آدرس برنامتونو بگیره و پاک کنه موقع خروج از برنامه اون برنامه رو با shell فراخوانی میکنی همین .

شما امتحان كرديد ؟
بنظرم چون برنامه اول هنوز درحال اجرا هست ، امكان پاك شدن نداشته باشه...

SlowCode
جمعه 08 آذر 1392, 12:06 عصر
2 تا راه داری:

1- راهی که دوستمون گفت. بعد از اینکه اون برنامه رو با شل باز کردی باید برنامه جاری رو end بکنی. تو اون برنامه هم یا باید از sleep استفاده کنی یا باید یه تایمر بزاری و Interval رو تنظیم کنی تا برنامه اصلی کاملا خارج بشه وگرنه خطا میده.
2- استفاده از فایل bat یا vbs هست که به نظرم این بهتره. چون وقتی میخوای برنامه رو حذف کنی فایل رو ایجاد میکنی و اجراش میکنی.
مثال:

Private Sub cmdDelete_Click()
Open App.Path & "/del.vbs" For Output As #1
Print #1, "WScript.Sleep 100"
Print #1, "Set obj = CreateObject(" & Chr(34) & "Scripting.FileSystemObject" & Chr(34) & ")"
Print #1, "obj.DeleteFile(" & Chr(34) & "./" & App.EXEName & ".exe" & Chr(34) & ")"
Close
Shell "Wscript.exe " & App.Path & "/del.vbs"
End
End Sub

یه دکمه به اسم cmdDelete درست کن و این کد رو بریز توش.

gachboy
جمعه 08 آذر 1392, 21:20 عصر
Sleep 100 یعنی بعد از 100 ثانیه؟
اگه بخوام بصورت مخفی این فایل vbs اجرا بشه باید چکار کنم؟ فرضا داخل فایل bat خط اولش میزارن echo off
فایل vbs روی همه ویندوز ها قابل اجرا هست؟

SlowCode
جمعه 08 آذر 1392, 22:06 عصر
نه یعنی 100 میلی ثانیه.
Shell "Wscript.exe " & App.Path & "/del.vbs",vbHide

بله قابل اجراست.

nesfenafar
چهارشنبه 13 آذر 1392, 21:26 عصر
به جای برنامه ی فایل مانند دیگه ساخته میشه اون چیه و چجوری میشه اون تولید نشه؟
میشه بگید چجوری میشه برنامه رو مخفی کرد حتی با Show Hidden هم نشه دیدش؟

meys34
چهارشنبه 13 آذر 1392, 23:15 عصر
محسن لابد یادش رفته...:لبخندساده::تشویق::لبخ ند:

این خط رو باید اضافه کنی....:متفکر:

Print #1, "obj.DeleteFile WScript.ScriptFullName"