Advertisement
Guest User

Untitled

a guest
Aug 30th, 2014
272
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Imports System.IO
  2. Imports System.Runtime.InteropServices
  3.  
  4. Public Class Hauptfenster
  5.  
  6.     Public HTS As Boolean = False
  7.     Public IsActive As Boolean = False
  8.     Public NoFlood As Boolean = False
  9.  
  10.     Private Sub Hauptfenster_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  11.         If My.Settings.LetzteDatei <> "" Then
  12.             Try
  13.                 Dim Reader As New IO.StreamReader(New IO.FileStream(IO.Path.Combine(My.Settings.LetzteDatei), IO.FileMode.Open))
  14.                 For i As Integer = 1 To 20 Step 1
  15.                     CType(Me.Hauptbox.Controls("a" + CStr(i)), CheckBox).Checked = Reader.ReadLine
  16.                 Next
  17.                 For i As Integer = 1 To 10 Step 1
  18.                     CType(Me.Hauptbox.Controls("b" + CStr(i)), TextBox).Text = Reader.ReadLine
  19.                 Next
  20.                 For i As Integer = 1 To 10 Step 1
  21.                     CType(Me.Hauptbox.Controls("c" + CStr(i)), NumericUpDown).Value = Reader.ReadLine
  22.                 Next
  23.                 Reader.Close()
  24.                 Me.Text = "LauniSoft - Keybinder - " + IO.Path.GetFileName(My.Settings.LetzteDatei)
  25.             Catch ex As Exception
  26.                 MessageBox.Show("Die zuletzt geöffnete Datei konnte nicht gefunden.", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error)
  27.                 My.Settings.LetzteDatei = ""
  28.             End Try
  29.         End If
  30.         NativeMethods.RegisterHotKey(Me.Handle, 10, NativeMethods.Key_NONE, Keys.Scroll)
  31.     End Sub
  32.  
  33.     Private Sub Hauptfenster_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize
  34.         If Me.WindowState = FormWindowState.Minimized Then
  35.             Me.Hide()
  36.             With Tray
  37.                 .BalloonTipIcon = ToolTipIcon.Info
  38.                 .BalloonTipTitle = "LauniSoft - Keybinder"
  39.                 .BalloonTipText = "Ich bin hier unten."
  40.                 .ShowBalloonTip(2500)
  41.             End With
  42.         End If
  43.     End Sub
  44.  
  45.     Private Sub Hauptfenster_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
  46.         If HTS = True Then
  47.             Dim Result As DialogResult = MessageBox.Show("Sie haben Änderungen vorgenommen, die noch nicht gespeichert wurden." + vbCrLf + vbCrLf + _
  48.                             "Möchten Sie jetzt speichern?", "Achtung!", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation)
  49.             If Result = Windows.Forms.DialogResult.Yes Then
  50.                 SpeicherDatei()
  51.             ElseIf Result = Windows.Forms.DialogResult.No Then
  52.                 LoescheHotkeys()
  53.                 NativeMethods.UnregisterHotKey(Me.Handle, 10)
  54.                 NativeMethods.UnregisterHotKey(Me.Handle, 12)
  55.                 NativeMethods.UnregisterHotKey(Me.Handle, 13)
  56.                 Me.Dispose()
  57.             Else
  58.                 e.Cancel = True
  59.             End If
  60.         Else
  61.             LoescheHotkeys()
  62.             NativeMethods.UnregisterHotKey(Me.Handle, 10)
  63.             NativeMethods.UnregisterHotKey(Me.Handle, 12)
  64.             NativeMethods.UnregisterHotKey(Me.Handle, 13)
  65.             Me.Dispose()
  66.         End If
  67.     End Sub
  68.  
  69.     Private Function FensterVorne()
  70.         Dim Caption As New System.Text.StringBuilder(256)
  71.         NativeMethods.GetWindowText(NativeMethods.GetForegroundWindow, Caption, Caption.Capacity)
  72.         Return Caption.ToString
  73.     End Function
  74.  
  75.     Private Sub StatusChange()
  76.         If IsActive = False Then
  77.             NativeMethods.Beep(2000, 100)
  78.             NativeMethods.Beep(2500, 100)
  79.             NativeMethods.Beep(3000, 100)
  80.             IsActive = True
  81.             Menu_Status.Image = My.Resources.bullet_green
  82.             If FensterVorne() = "GTA:SA:MP" Then
  83.                 SendKeys.Send("t")
  84.                 Threading.Thread.Sleep(250)
  85.                 SendKeys.Send(".: Keybinder aktiviert :.")
  86.                 SendKeys.Send("{ENTER}")
  87.             End If
  88.             SetzeHotkeys()
  89.         Else
  90.             NativeMethods.Beep(3000, 100)
  91.             NativeMethods.Beep(2500, 100)
  92.             NativeMethods.Beep(2000, 100)
  93.             IsActive = False
  94.             Menu_Status.Image = My.Resources.bullet_red
  95.             LoescheHotkeys()
  96.             NativeMethods.UnregisterHotKey(Me.Handle, 12)
  97.             NativeMethods.UnregisterHotKey(Me.Handle, 13)
  98.             If FensterVorne() = "GTA:SA:MP" Then
  99.                 SendKeys.Send("t")
  100.                 Threading.Thread.Sleep(250)
  101.                 SendKeys.Send(".: Keybinder deaktiviert :.")
  102.                 SendKeys.Send("{ENTER}")
  103.             End If
  104.         End If
  105.     End Sub
  106.  
  107.     Private Sub AllesNeu()
  108.         For i As Integer = 1 To 20
  109.             CType(Me.Hauptbox.Controls("a" + CStr(i)), CheckBox).Checked = False
  110.         Next
  111.         For i As Integer = 1 To 10
  112.             CType(Me.Hauptbox.Controls("b" + CStr(i)), TextBox).Text = ""
  113.         Next
  114.         For i As Integer = 1 To 10
  115.             CType(Me.Hauptbox.Controls("c" + CStr(i)), NumericUpDown).Value = 0
  116.         Next
  117.         Me.Text = "LauniSoft - Keybinder"
  118.         HTS = False
  119.     End Sub
  120.  
  121.     Private Sub LadeDatei()
  122.         DateiLaden.FileName = IO.Path.GetFileName(My.Settings.LetzteDatei)
  123.         If DateiLaden.ShowDialog = Windows.Forms.DialogResult.OK Then
  124.             Try
  125.                 Dim Reader As New IO.StreamReader(New IO.FileStream(IO.Path.Combine(DateiLaden.FileName), IO.FileMode.Open))
  126.                 For i As Integer = 1 To 20
  127.                     CType(Me.Hauptbox.Controls("a" + CStr(i)), CheckBox).Checked = Reader.ReadLine
  128.                 Next
  129.                 For i As Integer = 1 To 10
  130.                     CType(Me.Hauptbox.Controls("b" + CStr(i)), TextBox).Text = Reader.ReadLine
  131.                 Next
  132.                 For i As Integer = 1 To 10
  133.                     CType(Me.Hauptbox.Controls("c" + CStr(i)), NumericUpDown).Value = Reader.ReadLine
  134.                 Next
  135.                 Reader.Close()
  136.                 My.Settings.LetzteDatei = DateiLaden.FileName
  137.                 Me.Text = "LauniSoft - Keybinder - " + IO.Path.GetFileName(DateiLaden.FileName)
  138.                 HTS = False
  139.             Catch ex As Exception
  140.                 MessageBox.Show("Beim Laden der Datei ist ein Fehler aufgetreten.", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error)
  141.             End Try
  142.         End If
  143.     End Sub
  144.  
  145.     Private Sub SpeicherDatei()
  146.         DateiSpeichern.FileName = IO.Path.GetFileName(My.Settings.LetzteDatei)
  147.         If DateiSpeichern.ShowDialog = Windows.Forms.DialogResult.OK Then
  148.             Try
  149.                 Dim Writer As New IO.StreamWriter(New IO.FileStream(IO.Path.Combine(DateiSpeichern.FileName), IO.FileMode.Create))
  150.                 For i As Integer = 1 To 20
  151.                     Writer.WriteLine(CType(Me.Hauptbox.Controls("a" + CStr(i)), CheckBox).Checked)
  152.                 Next
  153.                 For i As Integer = 1 To 10
  154.                     Writer.WriteLine(CType(Me.Hauptbox.Controls("b" + CStr(i)), TextBox).Text)
  155.                 Next
  156.                 For i As Integer = 1 To 10
  157.                     Writer.WriteLine(CType(Me.Hauptbox.Controls("c" + CStr(i)), NumericUpDown).Value)
  158.                 Next
  159.                 Writer.Close()
  160.                 My.Settings.LetzteDatei = DateiSpeichern.FileName
  161.                 Me.Text = "LauniSoft - Keybinder - " + IO.Path.GetFileName(DateiSpeichern.FileName)
  162.                 HTS = False
  163.             Catch ex As Exception
  164.                 MessageBox.Show("Beim Speichern der Datei ist ein Fehler aufgetreten.", "Fehler!", MessageBoxButtons.OK, MessageBoxIcon.Error)
  165.             End Try
  166.         End If
  167.     End Sub
  168.  
  169.     Private Sub SetzeHotkeys()
  170.         NativeMethods.RegisterHotKey(Me.Handle, 0, NativeMethods.Key_NONE, Keys.D0)
  171.         NativeMethods.RegisterHotKey(Me.Handle, 1, NativeMethods.Key_NONE, Keys.D1)
  172.         NativeMethods.RegisterHotKey(Me.Handle, 2, NativeMethods.Key_NONE, Keys.D2)
  173.         NativeMethods.RegisterHotKey(Me.Handle, 3, NativeMethods.Key_NONE, Keys.D3)
  174.         NativeMethods.RegisterHotKey(Me.Handle, 4, NativeMethods.Key_NONE, Keys.D4)
  175.         NativeMethods.RegisterHotKey(Me.Handle, 5, NativeMethods.Key_NONE, Keys.D5)
  176.         NativeMethods.RegisterHotKey(Me.Handle, 6, NativeMethods.Key_NONE, Keys.D6)
  177.         NativeMethods.RegisterHotKey(Me.Handle, 7, NativeMethods.Key_NONE, Keys.D7)
  178.         NativeMethods.RegisterHotKey(Me.Handle, 8, NativeMethods.Key_NONE, Keys.D8)
  179.         NativeMethods.RegisterHotKey(Me.Handle, 9, NativeMethods.Key_NONE, Keys.D9)
  180.         NativeMethods.RegisterHotKey(Me.Handle, 11, NativeMethods.Key_NONE, Keys.T)
  181.     End Sub
  182.  
  183.     Private Sub LoescheHotkeys()
  184.         NativeMethods.UnregisterHotKey(Me.Handle, 0)
  185.         NativeMethods.UnregisterHotKey(Me.Handle, 1)
  186.         NativeMethods.UnregisterHotKey(Me.Handle, 2)
  187.         NativeMethods.UnregisterHotKey(Me.Handle, 3)
  188.         NativeMethods.UnregisterHotKey(Me.Handle, 4)
  189.         NativeMethods.UnregisterHotKey(Me.Handle, 5)
  190.         NativeMethods.UnregisterHotKey(Me.Handle, 6)
  191.         NativeMethods.UnregisterHotKey(Me.Handle, 7)
  192.         NativeMethods.UnregisterHotKey(Me.Handle, 8)
  193.         NativeMethods.UnregisterHotKey(Me.Handle, 9)
  194.         NativeMethods.UnregisterHotKey(Me.Handle, 11)
  195.     End Sub
  196.  
  197.     Protected Overrides Sub WndProc(ByRef m As Message)
  198.         If m.Msg = NativeMethods.WM_HOTKEY Then
  199.             Select Case m.WParam
  200.                 Case 0
  201.                     If FensterVorne() = "GTA:SA:MP" Then
  202.                         If NoFlood = False And a19.Checked = True Then
  203.                             LoescheHotkeys()
  204.                             NativeMethods.Beep(2500, 100)
  205.                             SendKeys.Send("t")
  206.                             Threading.Thread.Sleep(250)
  207.                             SendKeys.Send(b10.Text)
  208.                             For i As Integer = 0 To c10.Value - 1
  209.                                 SendKeys.Send("{LEFT}")
  210.                             Next
  211.                             If a20.Checked = True Then
  212.                                 SendKeys.Send("{ENTER}")
  213.                                 SetzeHotkeys()
  214.                             Else
  215.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  216.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  217.                                 WatchIt.Enabled = True
  218.                             End If
  219.                             NoFlood = True
  220.                             FloodProtect.Enabled = True
  221.                         End If
  222.                     Else
  223.                         LoescheHotkeys()
  224.                         SendKeys.Send("0")
  225.                         SetzeHotkeys()
  226.                     End If
  227.                 Case 1
  228.                     If FensterVorne() = "GTA:SA:MP" Then
  229.                         If NoFlood = False And a1.Checked = True Then
  230.                             LoescheHotkeys()
  231.                             NativeMethods.Beep(2500, 100)
  232.                             SendKeys.Send("t")
  233.                             Threading.Thread.Sleep(250)
  234.                             SendKeys.Send(b1.Text)
  235.                             For i As Integer = 0 To c1.Value - 1
  236.                                 SendKeys.Send("{LEFT}")
  237.                             Next
  238.                             If a2.Checked = True Then
  239.                                 SendKeys.Send("{ENTER}")
  240.                                 SetzeHotkeys()
  241.                             Else
  242.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  243.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  244.                                 WatchIt.Enabled = True
  245.                             End If
  246.                             NoFlood = True
  247.                             FloodProtect.Enabled = True
  248.                         End If
  249.                     Else
  250.                         LoescheHotkeys()
  251.                         SendKeys.Send("1")
  252.                         SetzeHotkeys()
  253.                     End If
  254.                 Case 2
  255.                     If FensterVorne() = "GTA:SA:MP" Then
  256.                         If NoFlood = False And a3.Checked = True Then
  257.                             LoescheHotkeys()
  258.                             NativeMethods.Beep(2500, 100)
  259.                             SendKeys.Send("t")
  260.                             Threading.Thread.Sleep(250)
  261.                             SendKeys.Send(b2.Text)
  262.                             For i As Integer = 0 To c2.Value - 1
  263.                                 SendKeys.Send("{LEFT}")
  264.                             Next
  265.                             If a4.Checked = True Then
  266.                                 SendKeys.Send("{ENTER}")
  267.                                 SetzeHotkeys()
  268.                             Else
  269.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  270.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  271.                                 WatchIt.Enabled = True
  272.                             End If
  273.                             NoFlood = True
  274.                             FloodProtect.Enabled = True
  275.                         End If
  276.                     Else
  277.                         LoescheHotkeys()
  278.                         SendKeys.Send("2")
  279.                         SetzeHotkeys()
  280.                     End If
  281.                 Case 3
  282.                     If FensterVorne() = "GTA:SA:MP" Then
  283.                         If NoFlood = False And a5.Checked = True Then
  284.                             LoescheHotkeys()
  285.                             NativeMethods.Beep(2500, 100)
  286.                             SendKeys.Send("t")
  287.                             Threading.Thread.Sleep(250)
  288.                             SendKeys.Send(b3.Text)
  289.                             For i As Integer = 0 To c3.Value - 1
  290.                                 SendKeys.Send("{LEFT}")
  291.                             Next
  292.                             If a6.Checked = True Then
  293.                                 SendKeys.Send("{ENTER}")
  294.                                 SetzeHotkeys()
  295.                             Else
  296.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  297.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  298.                                 WatchIt.Enabled = True
  299.                             End If
  300.                             NoFlood = True
  301.                             FloodProtect.Enabled = True
  302.                         End If
  303.                     Else
  304.                         LoescheHotkeys()
  305.                         SendKeys.Send("3")
  306.                         SetzeHotkeys()
  307.                     End If
  308.                 Case 4
  309.                     If FensterVorne() = "GTA:SA:MP" Then
  310.                         If NoFlood = False And a7.Checked = True Then
  311.                             LoescheHotkeys()
  312.                             NativeMethods.Beep(2500, 100)
  313.                             SendKeys.Send("t")
  314.                             Threading.Thread.Sleep(250)
  315.                             SendKeys.Send(b4.Text)
  316.                             For i As Integer = 0 To c4.Value - 1
  317.                                 SendKeys.Send("{LEFT}")
  318.                             Next
  319.                             If a8.Checked = True Then
  320.                                 SendKeys.Send("{ENTER}")
  321.                                 SetzeHotkeys()
  322.                             Else
  323.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  324.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  325.                                 WatchIt.Enabled = True
  326.                             End If
  327.                             NoFlood = True
  328.                             FloodProtect.Enabled = True
  329.                         End If
  330.                     Else
  331.                         LoescheHotkeys()
  332.                         SendKeys.Send("4")
  333.                         SetzeHotkeys()
  334.                     End If
  335.                 Case 5
  336.                     If FensterVorne() = "GTA:SA:MP" Then
  337.                         If NoFlood = False And a9.Checked = True Then
  338.                             LoescheHotkeys()
  339.                             NativeMethods.Beep(2500, 100)
  340.                             SendKeys.Send("t")
  341.                             Threading.Thread.Sleep(250)
  342.                             SendKeys.Send(b5.Text)
  343.                             For i As Integer = 0 To c5.Value - 1
  344.                                 SendKeys.Send("{LEFT}")
  345.                             Next
  346.                             If a10.Checked = True Then
  347.                                 SendKeys.Send("{ENTER}")
  348.                                 SetzeHotkeys()
  349.                             Else
  350.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  351.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  352.                                 WatchIt.Enabled = True
  353.                             End If
  354.                             NoFlood = True
  355.                             FloodProtect.Enabled = True
  356.                         End If
  357.                     Else
  358.                         LoescheHotkeys()
  359.                         SendKeys.Send("5")
  360.                         SetzeHotkeys()
  361.                     End If
  362.                 Case 6
  363.                     If FensterVorne() = "GTA:SA:MP" Then
  364.                         If NoFlood = False And a11.Checked = True Then
  365.                             LoescheHotkeys()
  366.                             NativeMethods.Beep(2500, 100)
  367.                             SendKeys.Send("t")
  368.                             Threading.Thread.Sleep(250)
  369.                             SendKeys.Send(b6.Text)
  370.                             For i As Integer = 0 To c6.Value - 1
  371.                                 SendKeys.Send("{LEFT}")
  372.                             Next
  373.                             If a12.Checked = True Then
  374.                                 SendKeys.Send("{ENTER}")
  375.                                 SetzeHotkeys()
  376.                             Else
  377.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  378.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  379.                                 WatchIt.Enabled = True
  380.                             End If
  381.                             NoFlood = True
  382.                             FloodProtect.Enabled = True
  383.                         End If
  384.                     Else
  385.                         LoescheHotkeys()
  386.                         SendKeys.Send("6")
  387.                         SetzeHotkeys()
  388.                     End If
  389.                 Case 7
  390.                     If FensterVorne() = "GTA:SA:MP" Then
  391.                         If NoFlood = False And a13.Checked = True Then
  392.                             LoescheHotkeys()
  393.                             NativeMethods.Beep(2500, 100)
  394.                             SendKeys.Send("t")
  395.                             Threading.Thread.Sleep(250)
  396.                             SendKeys.Send(b7.Text)
  397.                             For i As Integer = 0 To c7.Value - 1
  398.                                 SendKeys.Send("{LEFT}")
  399.                             Next
  400.                             If a14.Checked = True Then
  401.                                 SendKeys.Send("{ENTER}")
  402.                                 SetzeHotkeys()
  403.                             Else
  404.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  405.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  406.                                 WatchIt.Enabled = True
  407.                             End If
  408.                             NoFlood = True
  409.                             FloodProtect.Enabled = True
  410.                         End If
  411.                     Else
  412.                         LoescheHotkeys()
  413.                         SendKeys.Send("7")
  414.                         SetzeHotkeys()
  415.                     End If
  416.                 Case 8
  417.                     If FensterVorne() = "GTA:SA:MP" Then
  418.                         If NoFlood = False And a15.Checked = True Then
  419.                             LoescheHotkeys()
  420.                             NativeMethods.Beep(2500, 100)
  421.                             SendKeys.Send("t")
  422.                             Threading.Thread.Sleep(250)
  423.                             SendKeys.Send(b8.Text)
  424.                             For i As Integer = 0 To c8.Value - 1
  425.                                 SendKeys.Send("{LEFT}")
  426.                             Next
  427.                             If a16.Checked = True Then
  428.                                 SendKeys.Send("{ENTER}")
  429.                                 SetzeHotkeys()
  430.                             Else
  431.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  432.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  433.                                 WatchIt.Enabled = True
  434.                             End If
  435.                             NoFlood = True
  436.                             FloodProtect.Enabled = True
  437.                         End If
  438.                     Else
  439.                         LoescheHotkeys()
  440.                         SendKeys.Send("8")
  441.                         SetzeHotkeys()
  442.                     End If
  443.                 Case 9
  444.                     If FensterVorne() = "GTA:SA:MP" Then
  445.                         If NoFlood = False And a17.Checked = True Then
  446.                             LoescheHotkeys()
  447.                             NativeMethods.Beep(2500, 100)
  448.                             SendKeys.Send("t")
  449.                             Threading.Thread.Sleep(250)
  450.                             SendKeys.Send(b9.Text)
  451.                             For i As Integer = 0 To c9.Value - 1
  452.                                 SendKeys.Send("{LEFT}")
  453.                             Next
  454.                             If a18.Checked = True Then
  455.                                 SendKeys.Send("{ENTER}")
  456.                                 SetzeHotkeys()
  457.                             Else
  458.                                 NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  459.                                 NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  460.                                 WatchIt.Enabled = True
  461.                             End If
  462.                             NoFlood = True
  463.                             FloodProtect.Enabled = True
  464.                         End If
  465.                     Else
  466.                         LoescheHotkeys()
  467.                         SendKeys.Send("9")
  468.                         SetzeHotkeys()
  469.                     End If
  470.                 Case 10
  471.                     StatusChange()
  472.                 Case 11
  473.                     If FensterVorne() = "GTA:SA:MP" Then
  474.                         LoescheHotkeys()
  475.                         NativeMethods.RegisterHotKey(Me.Handle, 12, NativeMethods.Key_NONE, Keys.Enter)
  476.                         NativeMethods.RegisterHotKey(Me.Handle, 13, NativeMethods.Key_NONE, Keys.Escape)
  477.                         WatchIt.Enabled = True
  478.                         SendKeys.Send("t")
  479.                     Else
  480.                         LoescheHotkeys()
  481.                         SendKeys.Send("t")
  482.                         SetzeHotkeys()
  483.                     End If
  484.                 Case 12
  485.                     If FensterVorne() = "GTA:SA:MP" Then
  486.                         NativeMethods.UnregisterHotKey(Me.Handle, 12)
  487.                         NativeMethods.UnregisterHotKey(Me.Handle, 13)
  488.                         SetzeHotkeys()
  489.                         WatchIt.Enabled = False
  490.                     Else
  491.                         LoescheHotkeys()
  492.                         SendKeys.Send("{ENTER}")
  493.                         SetzeHotkeys()
  494.                     End If
  495.                 Case 13
  496.                     If FensterVorne() = "GTA:SA:MP" Then
  497.                         NativeMethods.UnregisterHotKey(Me.Handle, 12)
  498.                         NativeMethods.UnregisterHotKey(Me.Handle, 13)
  499.                         SetzeHotkeys()
  500.                         WatchIt.Enabled = False
  501.                     Else
  502.                         LoescheHotkeys()
  503.                         SendKeys.Send("{ESCAPE}")
  504.                         SetzeHotkeys()
  505.                     End If
  506.             End Select
  507.         End If
  508.         MyBase.WndProc(m)
  509.     End Sub
  510.  
  511.     Private Sub FloodProtect_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FloodProtect.Tick
  512.         NoFlood = False
  513.         FloodProtect.Enabled = False
  514.     End Sub
  515.  
  516.     Private Sub WatchIt_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles WatchIt.Tick
  517.         If FensterVorne() <> "GTA:SA:MP" Then
  518.             NativeMethods.UnregisterHotKey(Me.Handle, 12)
  519.             NativeMethods.UnregisterHotKey(Me.Handle, 13)
  520.             SetzeHotkeys()
  521.             WatchIt.Enabled = False
  522.         End If
  523.     End Sub
  524.  
  525.     Private Sub a1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles a1.CheckedChanged, a2.CheckedChanged, _
  526.         a3.CheckedChanged, a4.CheckedChanged, a5.CheckedChanged, a6.CheckedChanged, a7.CheckedChanged, a8.CheckedChanged, _
  527.         a9.CheckedChanged, a10.CheckedChanged, a11.CheckedChanged, a12.CheckedChanged, a13.CheckedChanged, a14.CheckedChanged, _
  528.         a15.CheckedChanged, a16.CheckedChanged, a17.CheckedChanged, a18.CheckedChanged, a19.CheckedChanged, a20.CheckedChanged
  529.         HTS = True
  530.     End Sub
  531.  
  532.     Private Sub b1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles b1.TextChanged, b2.TextChanged, _
  533.         b3.TextChanged, b4.TextChanged, b5.TextChanged, b6.TextChanged, b7.TextChanged, b8.TextChanged, b9.TextChanged, b10.TextChanged
  534.         HTS = True
  535.     End Sub
  536.  
  537.     Private Sub c1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles c1.ValueChanged, c2.ValueChanged, _
  538.         c3.ValueChanged, c4.ValueChanged, c5.ValueChanged, c6.ValueChanged, c7.ValueChanged, c8.ValueChanged, c9.ValueChanged, c10.ValueChanged
  539.         HTS = True
  540.     End Sub
  541.  
  542.     Private Sub Tray_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Tray.Click
  543.         Me.Show()
  544.         Me.WindowState = FormWindowState.Normal
  545.     End Sub
  546.  
  547.     Private Sub Menu_Neu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Neu.Click
  548.         If HTS = True Then
  549.             Dim Result As DialogResult = MessageBox.Show("Sie haben Änderungen vorgenommen, die noch nicht gespeichert wurden." + vbCrLf + vbCrLf + _
  550.                             "Möchten Sie jetzt speichern?", "Achtung!", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation)
  551.             If Result = Windows.Forms.DialogResult.Yes Then
  552.                 SpeicherDatei()
  553.             ElseIf Result = Windows.Forms.DialogResult.No Then
  554.                 AllesNeu()
  555.             Else
  556.                 Exit Sub
  557.             End If
  558.         Else
  559.             AllesNeu()
  560.         End If
  561.     End Sub
  562.  
  563.     Private Sub Menu_Laden_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Laden.Click
  564.         If HTS = True Then
  565.             Dim Result As DialogResult = MessageBox.Show("Sie haben Änderungen vorgenommen, die noch nicht gespeichert wurden." + vbCrLf + vbCrLf + _
  566.                             "Möchten Sie jetzt speichern?", "Achtung!", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation)
  567.             If Result = Windows.Forms.DialogResult.Yes Then
  568.                 SpeicherDatei()
  569.             ElseIf Result = Windows.Forms.DialogResult.No Then
  570.                 LadeDatei()
  571.             Else
  572.                 Exit Sub
  573.             End If
  574.         Else
  575.             LadeDatei()
  576.         End If
  577.     End Sub
  578.  
  579.     Private Sub Menu_Speichern_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Speichern.Click
  580.         SpeicherDatei()
  581.     End Sub
  582.  
  583.     Private Sub Menu_Status_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Status.Click
  584.         StatusChange()
  585.     End Sub
  586.  
  587.     Private Sub Menu_Hilfe_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Menu_Hilfe.Click
  588.         MessageBox.Show("- Hotkeys 1 bis 0" + vbCrLf + _
  589.                         "- Flood Protection" + vbCrLf + _
  590.                         "- Hotkeys nur InGame" + vbCrLf + _
  591.                         "- Erkennt ob Chat offen" + vbCrLf + _
  592.                         "- Laden / Speichern" + vbCrLf + vbCrLf + _
  593.                         "Ein / Aus mit Scroll Lock (Rollen-Taste)" + vbCrLf + _
  594.                         "oder durch Klick auf den Status-Button.", "Hilfe", MessageBoxButtons.OK, MessageBoxIcon.Information)
  595.     End Sub
  596.  
  597. End Class
  598.  
  599. Class NativeMethods
  600.  
  601.     <DllImport("kernel32.dll")> _
  602.     Public Shared Function Beep(ByVal freq As Integer, ByVal duration As Integer) As Boolean
  603.     End Function
  604.  
  605.     <DllImport("user32")> _
  606.     Public Shared Function RegisterHotKey(ByVal handle As IntPtr, ByVal id As Integer, ByVal modifiers As Integer, ByVal vkey As Keys) As Boolean
  607.     End Function
  608.  
  609.     <DllImport("user32")> _
  610.     Public Shared Function UnregisterHotKey(ByVal handle As IntPtr, ByVal id As Integer) As Boolean
  611.     End Function
  612.  
  613.     Public Declare Function GetForegroundWindow Lib "user32" Alias "GetForegroundWindow" () As IntPtr
  614.     Public Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As IntPtr, ByVal lpString As System.Text.StringBuilder, ByVal cch As Integer) As Integer
  615.  
  616.     Public Const Key_NONE As Integer = &H0
  617.     Public Const WM_HOTKEY As Integer = &H312
  618.  
  619. End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement