German-Roleplay Bestatterkeybinder Problem!

  • VB.NET

Es gibt 29 Antworten in diesem Thema. Der letzte Beitrag () ist von keydrow.

    Hatt keiner sonst ne Idee bei Haltepunkt kan Halt das Heraus
    Eine Ausnahme (erste Chance) des Typs "System.InvalidCastException" ist in Microsoft.VisualBasic.dll aufgetreten.

    Eine Ausnahme (erste Chance) des Typs "System.NullReferenceException" ist in GRPBestatterKeybinder.exe aufgetreten.
    Nu was das Bedeutet weis ich nicht oder habe ich etwas flasch gemacht??? ?(

    VB.NET-Quellcode

    1. Dim auftrag() As String = System.IO.File.ReadAllLines("C:\Users\Marvin\Documents\GTA San Andreas User Files\SAMP\chatlog.txt")
    2. Private Declare Function GetAsyncKeyState Lib "User32" (ByVal vKey As Integer) As Short
    3. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    4. End Sub
    5. Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
    6. If auftrag(auftrag.Length - 2) = "gib /accept corpse ein, um den Auftrag anzunehmen!" Then

    Sehe ich es richtig das du nur beim start des Programms die Datei auslist ?
    Somit wirst du kaum die Timer benötigen wen er so oder so immer nur die gleiche Datei hat O,o
    was eig. jetzt mit den filewatcher?
    musst ja nur in das Verzeichnis wo die chatlog.txt drin ist angeben und im change event überprüfen ob chatlog.txt verändert und wen dann deine reihe von if's
    durchgehen und bei einer Eingabe Sendkeys senden...
    Danke das hatte ich nochgarnic ht bedacht und wie das mit dem FileWatcher gehen soll habe ich kein Plan ich finde auch nichts was mir dabei hift(Ich bin zu blööd zum Googlen :S)

    Hab Gleich mal

    VB.NET-Quellcode

    1. Dim auftrag() As String = System.IO.File.ReadAllLines("C:\Users\Marvin\Documents\GTA San Andreas User Files\SAMP\chatlog.txt")
    in den Timer gepackt Jetzt bekomme ich auch Feedback aber kein gutes :S. Ich dachte Super bisjetzt geht alles bis der Fehler kam: ... kann nicht auf "C:\Users\Marvin\Documents\GTA San Andreas User Files\SAMP\chatlog.txt" zugreifen da bereits ein Anderer Prozess darauf zugreift wie kann ich das Umgehen?? Das SAMP und mein Keybinder gleichzeitig auf die selbe sache zugreifen?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „keydrow“ ()

    msdn.microsoft.com/de-de/libra…stemwatcher(v=vs.80).aspx
    Example:
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Class Watcher
    2. Public Shared Sub Main()
    3. Run()
    4. End Sub
    5. <PermissionSet(SecurityAction.Demand, Name:="FullTrust")> _
    6. Private Shared Sub Run
    7. Dim args() As String = System.Environment.GetCommandLineArgs()
    8. ' If a directory is not specified, exit the program.
    9. If args.Length <> 2 Then
    10. ' Display the proper way to call the program.
    11. Console.WriteLine("Usage: Watcher.exe (directory)")
    12. Return
    13. End If
    14. ' Create a new FileSystemWatcher and set its properties.
    15. Dim watcher As New FileSystemWatcher()
    16. watcher.Path = args(1)
    17. ' Watch for changes in LastAccess and LastWrite times, and
    18. ' the renaming of files or directories.
    19. watcher.NotifyFilter = (NotifyFilters.LastAccess Or NotifyFilters.LastWrite Or NotifyFilters.FileName Or NotifyFilters.DirectoryName)
    20. ' Only watch text files.
    21. watcher.Filter = "*.txt"
    22. ' Add event handlers.
    23. AddHandler watcher.Changed, AddressOf OnChanged
    24. AddHandler watcher.Created, AddressOf OnChanged
    25. AddHandler watcher.Deleted, AddressOf OnChanged
    26. AddHandler watcher.Renamed, AddressOf OnRenamed
    27. ' Begin watching.
    28. watcher.EnableRaisingEvents = True
    29. ' Wait for the user to quit the program.
    30. Console.WriteLine("Press 'q' to quit the sample.")
    31. While Chr(Console.Read()) <> "q"c
    32. End While
    33. End Sub
    34. ' Define the event handlers.
    35. Private Shared Sub OnChanged(source As Object, e As FileSystemEventArgs)
    36. ' Specify what is done when a file is changed, created, or deleted.
    37. Console.WriteLine("File: " & e.FullPath & " " & e.ChangeType)
    38. End Sub
    39. Private Shared Sub OnRenamed(source As Object, e As RenamedEventArgs)
    40. ' Specify what is done when a file is renamed.
    41. Console.WriteLine("File: {0} renamed to {1}", e.OldFullPath, e.FullPath)
    42. End Sub
    43. End Class
    Oh ich habe den anderen Beitrag grade bearbeitet da kamm schon deine Antwort hier aber mal ein Kleiner Doppelpost:
    Danke das hatte ich nochgarnic ht bedacht und wie das mit dem
    FileWatcher gehen soll habe ich kein Plan ich finde auch nichts was mir
    dabei hift(Ich bin zu blööd zum Googlen :S)
    Hab Gleich mal

    VB.NET-Quellcode

    1. Dim auftrag() As String = System.IO.File.ReadAllLines("C:\Users\Marvin\Documents\GTA San Andreas User Files\SAMP\chatlog.txt")

    in den Timer gepackt Jetzt bekomme ich auch Feedback aber kein gutes :S.
    Ich dachte Super bisjetzt geht alles bis der Fehler kam: ... kann nicht
    auf "C:\Users\Marvin\Documents\GTA San Andreas User
    Files\SAMP\chatlog.txt" zugreifen da bereits ein Anderer Prozess darauf
    zugreift wie kann ich das Umgehen?? Das SAMP und mein Keybinder
    gleichzeitig auf die selbe sache zugreifen?
    Das kommt dabei genau heraus
    Der Prozess kann nicht auf die Datei "C:\Users\Marvin\Documents\GTA San Andreas User Files\SAMP\chatlog.txt" zugreifen, da sie von einem anderen Prozess verwendet wird.