GetByProcessName Deklaration

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von bigbasti.

    GetByProcessName Deklaration

    Hallo ich habe eine ganz simple frage.
    Wie kann ich das deklarieren

    VB.NET-Quellcode

    1. Public Shared Function GetProcessesByName( _
    2. ByVal processName As String _
    3. ) As Process()
    4. End Function

    Meine Fehler wen ich das mache

    VB.NET-Quellcode

    1. Warnung 3 Von der Funktion "GetProcessesByName" wird nicht in allen Codepfaden ein Wert zurückgegeben. Wenn das Ergebnis verwendet wird, kann zur Laufzeit eine NULL-Verweisausnahme auftreten. C:\Users\Toni\AppData\Local\Temporary Projects\WindowsApplication1\Form2.vb 6 5 WindowsApplication1


    ....

    Hoffe auf schnelle Hilfe =D
    MfG im Voruas TONI :D
    Ok ich verdeutliche es

    Ich will nur mein Problem beim deklariren Lösen ich programmiere ein Bot für ein Spiel

    Das ist mein Kompletter Code.
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Imports System
    2. Imports System.Diagnostics
    3. Imports System.ComponentModel
    4. Public Class Form1
    5. Public Shared Function GetProcessesByName( _
    6. ByVal processName As String _
    7. ) As Process()
    8. End Function
    9. Public Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    10. Public Declare Function ReadProcessMemory Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    11. Public Declare Function WriteByte Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Byte, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    12. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    13. End Sub
    14. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    15. Timer1.Start()
    16. End Sub
    17. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    18. Dim metin2Process() As Process = GetProcessesByName("metin2client.bin")
    19. Dim handle As IntPtr = metin2Process(0).MainWindowHandle ' oder halt p(0).Handle, ich weiß nicht
    20. Dim funzpickup() As Byte = {&H90, &H90} 'Dentro ci devi mettere i byte
    21. For i = 0 To funzpickup.Length - 1
    22. WriteByte(metin2Process, &H60015D + i, funzpickup(i), 1, Nothing)
    23. Next
    24. End Sub
    25. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    26. Timer1.Stop()
    27. End Sub
    28. End Class


    Meine Fehler
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Warnung1Von der Funktion "GetProcessesByName" wird nicht in allen Codepfaden ein Wert zurückgegeben. Wenn das Ergebnis verwendet wird, kann zur Laufzeit eine NULL-Verweisausnahme auftreten.C:\Users\Toni\documents\visual studio 2010\Projects\Metin2 PickUp Bot\Metin2 PickUp Bot\Form1.vb105Metin2 PickUp Bot
    2. Fehler2"metin2Process" wurde nicht deklariert. Auf das Objekt kann aufgrund seiner Schutzstufe möglicherweise nicht zugegriffen werden.C:\Users\Toni\documents\visual studio 2010\Projects\Metin2 PickUp Bot\Metin2 PickUp Bot\Form1.vb2923Metin2 PickUp Bot


    Und eigentl. mag ich das nur zum laufen brigen :D
    Neuer Code
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Imports System
    2. Imports System.Diagnostics
    3. Imports System.ComponentModel
    4. Public Class Form1
    5. Public Shared Function GetProcessesByName( _
    6. ByVal processName As String _
    7. ) As Process()
    8. Dim metin2process() As Process = Process.GetProcessesByName("metin2client.bin")
    9. End Function
    10. Public Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    11. Public Declare Function ReadProcessMemory Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    12. Public Declare Function WriteByte Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Byte, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
    13. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    14. End Sub
    15. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    16. Timer1.Start()
    17. End Sub
    18. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    19. Dim metin2Process() As Process = GetProcessesByName("metin2client.bin")
    20. Dim handle As IntPtr = metin2Process(0).MainWindowHandle ' oder halt p(0).Handle, ich weiß nicht
    21. Dim funzpickup() As Byte = {&H90, &H90} 'Dentro ci devi mettere i byte
    22. For i = 0 To funzpickup.Length - 1
    23. WriteByte(metin2Process, &H60015D + i, funzpickup(i), 1, Nothing)
    24. Next
    25. End Sub
    26. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    27. Timer1.Stop()
    28. End Sub
    29. Private Function WriteByte(ByVal metin2Process As Process(), ByVal p2 As Integer, ByVal funzpickup As Byte, ByVal p4 As Integer, ByVal p5 As Object) As Integer
    30. Throw New NotImplementedException
    31. End Function
    32. End Class


    Immer noch falsch achso ich muss den Process deklariren sonst weiß das programm nicht wohin es seine "FUNKTION" senden muss
    das kann doch nicht sein immer dieser fehler
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Warnung 1 Von der Funktion "GetProcessesByName" wird nicht in allen Codepfaden ein Wert zurückgegeben. Wenn das Ergebnis verwendet wird, kann zur Laufzeit eine NULL-Verweisausnahme auftreten. C:\Users\Toni\documents\visual studio 2010\Projects\Metin2 PickUp Bot\Metin2 PickUp Bot\Form1.vb 10 5 Metin2 PickUp Bot