Зациклить все процессы памяти - PullRequest
0 голосов
/ 21 июня 2011

Как я мог, используя API "ReadProcessMemory", циклически пройти по всем запущенным процессам машины и сканировать массив строк и возвращать значение true / false, если какой-либо один или несколько содержатся в памяти процесса - используяVB6?

Пример:

Strings() = {"@STRING1@", "@ANOTHERSTRING@", "$TRING"}
Loop # Processes
    If InStr(ProcessMemory(#), Strings) Then
        MsgBox(Process(#) & " Contains one of the strings!")
    End If
Loop

1 Ответ

1 голос
/ 22 июня 2011

я не знаю, но я использовал wmi в моей программе

что-то как то

Public Sub KillProcess(ByVal processName As String)

On Error GoTo ErrHandler

Dim oWMI
Dim ret
Dim sService
Dim oWMIServices
Dim oWMIService
Dim oServices
Dim oService
Dim servicename

Set oWMI = GetObject("winmgmts:")
Set oServices = oWMI.InstancesOf("win32_process")

For Each oService In oServices

    servicename = LCase$(Trim$(CStr(oService.Name) & ""))

    If InStr(1, servicename, LCase(processName), vbTextCompare) > 0 Then
        ret = oService.Terminate
    End If

Next

If Not oServices Is Nothing Then Set oServices = Nothing
If Not oWMI Is Nothing Then Set oWMI = Nothing


ErrHandler:
    Err.Clear

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...