計(jì)算機(jī)學(xué)習(xí)積累

          ----轉(zhuǎn)載有理,轉(zhuǎn)載是想研究,想研究才會(huì)看,看了才會(huì)有感想,轉(zhuǎn)載后我有時(shí)會(huì)寫(xiě)一些自己的感受
          數(shù)據(jù)加載中……

          vb 實(shí)現(xiàn)查找進(jìn)程

          vb查找進(jìn)程,用到的API函數(shù)。

          Private Declare Function CreateToolhelp32Snapshot Lib "kernel32" (ByVal dwFlags As Long, ByVal th32ProcessID As Long) As Long

          Private Declare Function Process32First Lib "kernel32" (ByVal hSnapshot As Long, lppe As PROCESSENTRY32) As Long

          Private Declare Function Process32Next Lib "kernel32" (ByVal hSnapshot As Long, lppe As PROCESSENTRY32) As Long

          Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

          Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal blnheritHandle As Long, ByVal dwAppProcessId As Long) As Long

          Private Declare Function TerminateProcess Lib "kernel32" (ByVal ApphProcess As Long, ByVal uExitCode As Long) As Long

          Private Type PROCESSENTRY32

          dwSize As Long

          cntUsage As Long

          th32ProcessID As Long

          th32DefaultHeapID As Long

          th32ModuleID As Long

          cntThreads As Long

          th32ParentProcessID As Long

          pcPriClassBase As Long

          dwFlags As Long

          szExeFile As String * 1024

          End Type

          Private Const TH32CS_SNAPHEAPLIST = &H1

          Private Const TH32CS_SNAPPROCESS = &H2

          Private Const TH32CS_SNAPTHREAD = &H4

          Private Const TH32CS_SNAPMODULE = &H8

          Private Const TH32CS_SNAPALL = (TH32CS_SNAPHEAPLIST Or TH32CS_SNAPPROCESS Or TH32CS_SNAPTHREAD Or TH32CS_SNAPMODULE)

          Private Const TH32CS_INHERIT = &H80000000


          Private Declare Function RegisterWindowMessage Lib "user32" Alias "RegisterWindowMessageA" (ByVal lpString As String) As Long
          Private WM_TASKBARCREATED As Long

          '**********************************************************************
          '在查找函數(shù)
          '**********************************************************************
          Private Function FindPro(jinchenming As String)
          Dim my As PROCESSENTRY32
          Dim l As Long
          Dim l1 As Long
          Dim mName As String

          Dim I As Integer
          l = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)
          If l Then
          my.dwSize = 1060

          If (Process32First(l, my)) Then '遍歷開(kāi)始

          Do
          I = InStr(1, my.szExeFile, Chr(0))

          mName = LCase(Left(my.szExeFile, I - 1))

          If mName = jinchenming Then

          PID = my.th32ProcessID

          pname = mName

          Dim mProcID As Long

          mProcID = OpenProcess(1&, -1&, PID)

          MsgBox pname
          'TerminateProcess mProcID, 0&
          ?

          Exit Function
          End If
          Loop Until (Process32Next(l, my) < 1)
          End If
          l1 = CloseHandle(l)
          End If
          End Function

          posted on 2006-06-28 13:17 freebird 閱讀(2873) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): vb


          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 长宁县| 彰化县| 闽侯县| 广平县| 巴马| 韶关市| 芒康县| 葫芦岛市| 平南县| 富民县| 永登县| 东城区| 历史| 米泉市| 丹巴县| 视频| 武定县| 江津市| 垫江县| 东宁县| 邯郸市| 屏山县| 池州市| 嘉义县| 武隆县| 凉山| 怀集县| 昔阳县| 云浮市| 伊宁市| 扬中市| 永川市| 海兴县| 新泰市| 罗定市| 阳山县| 嘉义县| 栾城县| 彰化县| 中西区| 拉萨市|