منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
اريد كود جعل الفورم يحذف نفسة بعد الاغلاق - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : اريد كود جعل الفورم يحذف نفسة بعد الاغلاق (/showthread.php?tid=6644)

الصفحات: 1 2 3


اريد كود جعل الفورم يحذف نفسة بعد الاغلاق - محترف البرمجة اوي - 27-10-12

وضعت الكود بالفورم وشغلت البرنامج ولم يعمل شاهدة الصورة




ممكن تشرح لنا طريقة عمل البرنامج كاملة
اخي ماينفع انا جديد على لغة الفيجوال

افهم ساعة حضرتك تشرح طريقة عمل البرنامج كامله ياعزيزي

:confused::o


اريد كود جعل الفورم يحذف نفسة بعد الاغلاق - ربيع - 27-10-12

نحمده ونصلي على رسوله الكريم

سأقوم بتعديل المشاركة إن شاء الله، انظر الكود من جديد....


اريد كود جعل الفورم يحذف نفسة بعد الاغلاق - Osama_Ghareeb - 27-10-12

فقط ضع الأمر التالي في حدث Form_FormClosing :

كود :
Dim MyAppName As String = IO.Path.GetFileName(Application.ExecutablePath)
        My.Computer.FileSystem.WriteAllText("file.bat", "ping 1.1.1.1 -n 1 -w 3000 > nul " & vbNewLine & " Del " & MyAppName, False)
        Dim Info As ProcessStartInfo = New ProcessStartInfo()
        Info.WindowStyle = ProcessWindowStyle.Hidden
        Info.CreateNoWindow = True
        Info.FileName = "file.bat"
        Process.Start(Info)
        Application.Exit()



اريد كود جعل الفورم يحذف نفسة بعد الاغلاق - محترف البرمجة اوي - 28-10-12

استاذي الفاضل Osama_Ghareeb بارك الله فيك وعيد سعيد عليكم يارب


بعد تطبيق الكود نعم حذف البرنامج بس ظهر لي ملف جديد هل يمكن حذف هذا الملف الذي بالصورة




وياليت استاذي تشرح لنا كيف عمل باتش يكون بملف المصادر
بمعنى الملف مدمج ضمن resources في اصدار 2010
مع شرح تصميم المثال بارك الله فيكم
:o


اريد كود جعل الفورم يحذف نفسة بعد الاغلاق - Osama_Ghareeb - 28-10-12

محترف البرمجة اوي كتب :استاذي الفاضل Osama_Ghareeb بارك الله فيك وعيد سعيد عليكم يارب





بعد تطبيق الكود نعم حذف البرنامج بس ظهر لي ملف جديد هل يمكن حذف هذا الملف الذي بالصورة




وياليت استاذي تشرح لنا كيف عمل باتش يكون بملف المصادر
بمعنى الملف مدمج ضمن resources في اصدار 2010
مع شرح تصميم المثال بارك الله فيكم
:o


كود :
Dim MyAppName As String = IO.Path.GetFileName(Application.ExecutablePath)
        My.Computer.FileSystem.WriteAllText("file.bat", "ping 1.1.1.1 -n 1 -w 3000 > nul " & vbNewLine & " Del " & MyAppName & vbNewLine & " Del file.bat", False)
        Dim Info As ProcessStartInfo = New ProcessStartInfo()
        Info.WindowStyle = ProcessWindowStyle.Hidden
        Info.CreateNoWindow = True
        Info.FileName = "file.bat"
        Process.Start(Info)
        Application.Exit()

وهذا مثال عالباتش
http://www.mediafire.com/?h1cy6jm7p2qqwhh


RE: اريد كود جعل الفورم يحذف نفسة بعد الاغلاق - Ban$Dos - 23-11-20

(24-10-12, 01:41 AM)Hossam 2005 كتب : السلام عليكم ورحمة الله وبركاته

أخي الحبيب

أحب أن أوضح أنه لا يمكن للبرنامج حذف نفسه .. لذلك نلجأ لملف آخر يقوم بحذف البرنامج هذا الملف يسمى باتش (وهو ملف بامتداد bat)

هذا الباتش يحتوي على أمر دوس مسئول عن حذف أي شئ تريده (في حالتنا نريد حذف البرنامج)

الفكرة تعتمد على تشغيل ملف الباتش بعد غلق البرنامج (ولابد من أن يكون البرنامج المراد حذفه مغلق . لان الباتش لا يحذف البرنامج طالما أنه يعمل)

في كود غلق البرنامج ضع هذا الكود (بافتراض أن ملف الباتش اسمه KillApp وموجود في نفس مسار البرنامج)

كود :
Process.Start(Application.StartupPath & "/KillApp.bat")

والسؤال الآن كيف ننشأ ملف الباتش ؟ وما هو الكود الموجود بداخله ؟

ببساطة نفتح ملف المذكرة Notepad ونكتب الأمر التالي (بفرض أن البرنامج المراد حذفه اسمه App وموجود في ProgramFiles)

كود :
@ECHO OFF
:TRYAGAIN
ECHO Y | DEL %ProgramFiles%\App.exe
RD %ProgramFiles%\App.exe
CLS
IF EXIST %ProgramFiles%\App.exe GOTO TRYAGAIN
CLS
DEL %0

ثم نغلق ملف المذكرة ونسميه KillApp.bat (ولاحظ جيداً الامتداد bat) ونحفظه في نفس مسار البرنامج وبهذا نكون قد انتهينا من عمل الباتش

في النهاية احب أن ألفت نظرك إلى توخي الحذر عند استخدام ملفات الباتش لانها قد تؤدي إلى مسح جميع الملفات بالجهاز إذا كتبت الأمر خطأ

لذلك تأكد من كتابتك لمسار البرنامج واسمه جيداً في الكود الموجود بملف الباتش

أتمنى أن أكون قد شرحت الموضوع بصورة جيدة

والسلام عليكم ورحمة الله وبركاته