تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[كود] ايجاد process id
#1
اريد كل ما افتح نفس البرنامج يكتبلى اخر pid فى textbox مثلأ فتحت firefox اول مره مش محتاج ال pid بتاعه لاكن محتاج ال pid بتاع ال firefox اما افتحة مرة اخرى و يكون المفتوح من قبل لا يزال شغال اى ان اذا كان الاول pid = 1234 و الى الثانى pid = 2345 يكتب فى ال textbox 2345 و لو فتحت firfox مرة اخري و ال pid = 3456 يكتب فى textbox 3456 هكذا... يكتب فى ال textbox اخر firefox pid بمعنى يكتب ال pid بتاع firefox الى لسة مفتوح جديد ارجو اكون وضحت بصورة جيدة
هذا الكود الذى استخدمة
مشكلة هذا الكود انه بيجيب ثانى notepad pid و ثالث notepad pid بعد ذللك يتوقف لا اعلم السبب

كود :
   Dim newpro = 1
   Private Sub ProcessesPID(ByVal sProcName As String)
       Dim pProcs() As Process = Process.GetProcessesByName(sProcName)
       If pProcs.Length <> 0 Then
           Dim dLatest As Date = pProcs(0).StartTime
           Dim iIndex As Integer = 0
           Dim i As Integer
           For i = 0 To pProcs.Length - newpro
               If Not pProcs(i).StartTime > dLatest Then
                   dLatest = pProcs(i).StartTime
                   iIndex = i
               End If
           Next
           For i = 0 To pProcs.Length - newpro
               If i <> iIndex Then
                   TextBox1.Text = pProcs(i).Id.ToString
                   newpro += 1
               End If

           Next
       End If
   End Sub
timer1.enabled = true
كود :
   Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
       ProcessesPID("Notepad")
Label2.Text = newpro
   End Sub
اذا كان الكود غير مفهوم يمكننى شرح كل line
الرد }}}
تم الشكر بواسطة: الضمير المستتر
#2
السلام عليكم ورحمة الله

أخي أسامة

يمكنك وضع هذا الكود داخل Try Catch لتلافي خطأ عدم تشغيل firefox
هذا الكود يظهر رسالة تبين فيها معلومات عن آخر تشغيل للملف في ال Processes
PHP كود :
Dim p = (
    
From x In Process.GetProcessesByName("firefox")
    
Order By x.StartTime
    
).Last

MsgBox
(
    
"Filename: " p.MainModule.FileName vbNewLine &
    
"Id: " p.Id vbNewLine &
    
"StartTime: " p.StartTime
    


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

أخي أسامة

وهذه طريقة أخرى
PHP كود :
Dim p =
   
Process.GetProcessesByName("firefox").
   
OrderBy(Function(xx.StartTime).Last

MsgBox
(
    
"Filename: " p.MainModule.FileName vbNewLine &
    
"Id: " p.Id vbNewLine &
    
"StartTime: " p.StartTime
الرد }}}
تم الشكر بواسطة: أسامة , الضمير المستتر
#3
(12-11-15, 07:19 AM)مهموم كتب : السلام عليكم ورحمة الله

أخي أسامة

يمكنك وضع هذا الكود داخل Try Catch لتلافي خطأ عدم تشغيل firefox
هذا الكود يظهر رسالة تبين فيها معلومات عن آخر تشغيل للملف في ال Processes
PHP كود :
Dim p = (
 
   From x In Process.GetProcessesByName("firefox")
 
   Order By x.StartTime
    
).Last

MsgBox
(
 
   "Filename: " p.MainModule.FileName vbNewLine &
 
   "Id: " p.Id vbNewLine &
 
   "StartTime: " p.StartTime
    


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

أخي أسامة

وهذه طريقة أخرى
PHP كود :
Dim p =
 
  Process.GetProcessesByName("firefox").
 
  OrderBy(Function(xx.StartTime).Last

MsgBox
(
 
   "Filename: " p.MainModule.FileName vbNewLine &
 
   "Id: " p.Id vbNewLine &
 
   "StartTime: " p.StartTime
الله يعطيك العافية شكرآ جزيلآ اخى
الرد }}}
تم الشكر بواسطة: الضمير المستتر



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


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