تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
معرفة اسامي الملفات التنفيذية
#1
مرحبا

انا عملت مشروع بسيط لمعرفة اسماء الملفات التنفيذية في اي ملف مع المسار واستخدمت هاذا الكود


 
كود :
       Dim file2 As String() = Directory.GetFiles("C:\ProgramData", "*.exe")
       For Each b In file2
           TextBox2.Text += b + Environment.NewLine
       Next



مشكلة هاذا الكود لابد من كتابة المسار حتى يضهر جميع اسماء الملفات التنفيذية بصيغة exe

لاكن المطلوب كود مشابه له ويضهر جميع اسماء الملفات في كافة الملفات في الجهاز يعني اضهار شامل
الرد
تم الشكر بواسطة:
#2
القى نظرة على هذا الرابط 

ستجد به الكود لـ Sub التالى
كود :
Private Sub Search_Exe(ByVal StartDir As String)
   Dim Dirs As IEnumerable(Of String) = Nothing
   Try
       Dim files() As String
       Dirs = IO.Directory.EnumerateDirectories(StartDir)
       files = IO.Directory.EnumerateFiles(StartDir) _
           .Where(Function(CurrentFile As String)
                      Dim Extention = IO.Path.GetExtension(CurrentFile)
                      If Extention.ToLower = ".exe" Then
                          Return True
                      Else
                          Return False
                      End If
                  End Function).ToArray
       ListBox1.Items.AddRange(files)
   Catch ex As Exception
       'Just Skip the denied access dirs
   End Try
   ' kevininstructor added check for Nothing
   If Dirs IsNot Nothing Then
       For Each Dir As String In Dirs
           Search_Exe(Dir)
       Next
   Else
       ' Access denied thrown in Catch above
   End If
End Sub

وعند تطبيق الامر فقط سيكون بهذا الشكل
كود :
Search_Exe("C:\")

بدلاً من 
PHP كود :
C:\ 

يمكنك وضع اى مسار اذا كان مجلد وتحتوى على عديد من المجلدات الداخلية
فسيقوم بالبداء بالبحث بهذا المجلد وما بداخل المجلدات التى بداخل هذا المسار فقط

اتمنى ان يكون الكود بسيط لك
وان يكون هذا ما تريده تماماً

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد
تم الشكر بواسطة: dasktop , ابو روضة
#3
(30-10-18, 01:42 PM)elgokr كتب :
القى نظرة على هذا الرابط 

ستجد به الكود لـ Sub التالى
كود :
Private Sub Search_Exe(ByVal StartDir As String)
   Dim Dirs As IEnumerable(Of String) = Nothing
   Try
       Dim files() As String
       Dirs = IO.Directory.EnumerateDirectories(StartDir)
       files = IO.Directory.EnumerateFiles(StartDir) _
           .Where(Function(CurrentFile As String)
                      Dim Extention = IO.Path.GetExtension(CurrentFile)
                      If Extention.ToLower = ".exe" Then
                          Return True
                      Else
                          Return False
                      End If
                  End Function).ToArray
       ListBox1.Items.AddRange(files)
   Catch ex As Exception
       'Just Skip the denied access dirs
   End Try
   ' kevininstructor added check for Nothing
   If Dirs IsNot Nothing Then
       For Each Dir As String In Dirs
           Search_Exe(Dir)
       Next
   Else
       ' Access denied thrown in Catch above
   End If
End Sub

وعند تطبيق الامر فقط سيكون بهذا الشكل
كود :
Search_Exe("C:\")

بدلاً من 
PHP كود :
C:\ 

يمكنك وضع اى مسار اذا كان مجلد وتحتوى على عديد من المجلدات الداخلية
فسيقوم بالبداء بالبحث بهذا المجلد وما بداخل المجلدات التى بداخل هذا المسار فقط

اتمنى ان يكون الكود بسيط لك
وان يكون هذا ما تريده تماماً

تحياتى لك
وتمنياتى لك التوفيق



ضهر الخطا التالي

الرد
تم الشكر بواسطة:
#4
قبل كلاً من IO
ضع هذه الجملة
كود :
System.

ليصبح كلا من السطرين بهذا الشكل
كود :
           Dirs = System.IO.Directory.EnumerateDirectories(StartDir)
           files = System.IO.Directory.EnumerateFiles(StartDir) _

او يكفى استدعاء باستخدام الكود التالى
كود :
Imports System.IO

من ثم جعل كل من السطرين بهذا الشكل
كود :
           Dirs = Directory.EnumerateDirectories(StartDir)
           files = Directory.EnumerateFiles(StartDir) _


تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد
تم الشكر بواسطة:
#5
(30-10-18, 09:02 PM)elgokr كتب :
قبل كلاً من IO
ضع هذه الجملة
كود :
System.

ليصبح كلا من السطرين بهذا الشكل
كود :
           Dirs = System.IO.Directory.EnumerateDirectories(StartDir)
           files = System.IO.Directory.EnumerateFiles(StartDir) _

او يكفى استدعاء باستخدام الكود التالى
كود :
Imports System.IO

من ثم جعل كل من السطرين بهذا الشكل
كود :
           Dirs = Directory.EnumerateDirectories(StartDir)
           files = Directory.EnumerateFiles(StartDir) _


تحياتى لك
وتمنياتى لك التوفيق


لم يتغير الخطا حتى جربت تغيير الى system.io

الرد
تم الشكر بواسطة:
#6
بما ان الرسالة تبقي كما هى 
فهنا يبقي المشكلة فى .net framework

من خلال التعديل فى My Project
طبق كما فى الصورة وما اعلى من اصدار

تذكر بان لا يكون الفريم يحتوى على كلمة Client Profile
عند اختيار الاصدار 4 وما اعلى ستجد المشكلة حلت بامر الله

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد
تم الشكر بواسطة:
#7
(31-10-18, 11:30 PM)elgokr كتب :
بما ان الرسالة تبقي كما هى 
فهنا يبقي المشكلة فى .net framework

من خلال التعديل فى My Project
طبق كما فى الصورة وما اعلى من اصدار

تذكر بان لا يكون الفريم يحتوى على كلمة Client Profile
عند اختيار الاصدار 4 وما اعلى ستجد المشكلة حلت بامر الله

تحياتى لك
وتمنياتى لك التوفيق


المشكلة الاولى انحلت ولاكن ضهر خطا واحد حاولت احله لم ينتهي

الرد
تم الشكر بواسطة: elgokr
#8
كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       Dim dialog = New FolderBrowserDialog()
       dialog.SelectedPath = "C:\"
       If DialogResult.OK = dialog.ShowDialog() Then
           FindDir(dialog.SelectedPath)
       End If
   End Sub
   Sub FindDir(Folder As String)
       For Each file In IO.Directory.GetFiles(Folder, "*.exe", searchOption:=IO.SearchOption.AllDirectories)
           TextBox1.Text += file.ToString + Environment.NewLine
       Next
   End Sub
سبحان الله وبحمده سبحان الله العظيم و الحمد لله ولا اله الا الله والله اكبر




الرد
تم الشكر بواسطة: elgokr , elgokr
#9
(01-11-18, 11:07 AM)dasktop كتب : المشكلة الاولى انحلت ولاكن ضهر خطا واحد حاولت احله لم ينتهي


بخصوص الخطاء هنا يرجع لاصدار لديك
لا يقبل الاستكمال الاسطر من خلال _

كل الامر ستاتى عند هذه الاسطر

كود :
      files = IO.Directory.EnumerateFiles(StartDir) _
          .Where(Function(CurrentFile As String)

واجعلها بهذا الشكل
كود :
      files = IO.Directory.EnumerateFiles(StartDir).Where(Function(CurrentFile As String)

وستتم حل المشكلة


ليصبح الشكل النهائي للكود
كود :
   Private Sub Search_Exe(ByVal StartDir As String)
       Dim Dirs As IEnumerable(Of String) = Nothing
       Try
           Dim files() As String
           Dirs = IO.Directory.EnumerateDirectories(StartDir)
           files = IO.Directory.EnumerateFiles(StartDir).Where(Function(CurrentFile As String)
                                                                   Dim Extention = IO.Path.GetExtension(CurrentFile)
                                                                   If Extention.ToLower = ".exe" Then
                                                                       Return True
                                                                   Else
                                                                       Return False
                                                                   End If
                                                               End Function).ToArray
           ListBox1.Items.AddRange(files)
       Catch ex As Exception
           'Just Skip the denied access dirs
       End Try
       ' kevininstructor added check for Nothing
       If Dirs IsNot Nothing Then
           For Each Dir As String In Dirs
               Search_Exe(Dir)
           Next
       Else
           ' Access denied thrown in Catch above
       End If
   End Sub

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد
تم الشكر بواسطة:
#10
لم ينتهي الخطا علماً غيرت الاصدار ولازال باقي
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] ما هي الملفات المطلوب إرفاقها لتشغيل تقرير Microsoft Report sulim 2 53 26-11-20, 12:47 PM
آخر رد: sulim
  [سؤال] كيف أستخدم دالة معرفة مسبقاً ضمن الاستعلام؟ السندبااد 13 580 03-11-20, 01:37 PM
آخر رد: Anas Mahmoud
  [VB.NET] المشكلة انني لم استطيع استدعاء الملفات pdf من قاعدة البيانات sql 304 0 132 31-10-20, 05:40 PM
آخر رد: 304
  الملفات الناتجة اكثر من المستخدمة في مكونات ديفاكسبريس ابو محمد محمد محمد 3 415 30-09-20, 12:29 AM
آخر رد: محمد كريّم
  كيفية معرفة رقم الهارديسك المتألق9 6 858 25-09-20, 11:42 PM
آخر رد: عبد العزيز البسكري
  [VB.NET] كيف بامكاني معرفة عدد اللى فاتحين البرنامج بتاعي ميدو الفنان 0 207 21-09-20, 01:09 PM
آخر رد: ميدو الفنان
  [VB.NET] ارجو المساعدة في برنامج لتشغيل الملفات الصوتية لنطق الارقام eman kh 5 642 13-09-20, 06:05 PM
آخر رد: eman kh
  [سؤال] تنظيم ارفاق المستندات في قاعدة البيانات Sql واحضار الملفات حسب قيمة البحث محمد العامر 10 765 07-09-20, 12:28 AM
آخر رد: محمد العامر
  استعراض الملفات الموجودة في سلة المحذوفات EbrNaj00 2 375 02-09-20, 02:24 AM
آخر رد: EbrNaj00
  [VB.NET] معرفة الفرق باليوم محمد بوقزاحة 2 351 19-08-20, 02:20 PM
آخر رد: محمد بوقزاحة

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم