• NEW Dark Gaming Theme by Mishar DESIGN!
  • DARK FIRE!
  • Responsive - 5 color variations!
  • VERY SOON!
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Sendkeys Sorunu [5 dakikada kapat hatası veriyor]
#1
Kod:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using AutoItX3Lib;
using System.Runtime.InteropServices;

namespace WindowsFormsApplication3
{
   public partial class Form1 : Form
   {
       public Form1()
       {
           InitializeComponent();
           DinleTusAyari();

       }

       KeyboardHook tusDinleyici = new KeyboardHook();
       AutoItX3 makro = new AutoItX3();


       public void DinleTusAyari()
       {
           tusDinleyici.HookedKeys.Add(Keys.G);
           tusDinleyici.KeyDown += new KeyEventHandler(Tusabasildiginda);
           tusDinleyici.KeyDown += new KeyEventHandler(Tusdancekildiginde);
       }


       void Tusabasildiginda(object sender, KeyEventArgs e)
       {
           button1.PerformClick();
           e.Handled = true;
       }

       void Tusdancekildiginde(object sender, KeyEventArgs e)
       {  
       }




       private void Form1_Load(object sender, EventArgs e)
       {

       }

       private void button1_Click(object sender, EventArgs e)
       {
           if (button1.Text == "BAŞLAT")
           {
               timer1.Enabled = true;
               button1.BackColor = Color.Red;
               button1.Text = "DURDUR";
           }
           else if (button1.Text == "DURDUR")
           {
               timer1.Enabled = false;
               button1.BackColor = Color.Blue;
               button1.Text = "BAŞLAT";
           }

       }

       private void timer1_Tick(object sender, EventArgs e)
       {
           if (checkBox1.Checked == true)
               SendKeys.Send("Z");
           if (checkBox2.Checked == true)
               SendKeys.Send("W");
           if (checkBox3.Checked == true)
               SendKeys.Send("R");
           if (checkBox4.Checked == true)
               SendKeys.Send("1");
           if (checkBox5.Checked == true)
               SendKeys.Send("2");
           if (checkBox6.Checked == true)
               SendKeys.Send("3");
           if (checkBox7.Checked == true)
               SendKeys.Send("4");
           if (checkBox8.Checked == true)
               SendKeys.Send("5");
           if (checkBox9.Checked == true)
               SendKeys.Send("6");
           if (checkBox10.Checked == true)
               SendKeys.Send("7");
           if (checkBox11.Checked == true)
               SendKeys.Send("8");
           if (checkBox12.Checked == true)
               SendKeys.Send("9");
           if (checkBox13.Checked == true)
               SendKeys.Send("0");
       }

       private void hScrollBar1_Scroll(object sender, ScrollEventArgs e)
       {
           timer1.Interval = hScrollBar1.Value;
           label1.Text = hScrollBar1.Value.ToString();
       }

       private void label1_Click(object sender, EventArgs e)
       {
       }

       private void checkBox12_CheckedChanged(object sender, EventArgs e)
       {

       }
   }
}

Kodlarım bu şekilde. Belirli bir süre sonra kapat hatası alıyorum.

hatayı SendKeys.Send kısmında veriyor sebebi ne olabilir bilen biri yardımcı olabilir mi
#2
@aliemre123
    Hatanın sebebini bilmiyorum ama sourcede garip bulduğum bir iki yer var
1. Knight Online de tuş göndermek için AutoIt Kullanman Gerekir
2. using AutoItX3Lib;
    AutoItX3 makro = new AutoItX3();
    AutoIt Referans Olarak Göstermişsin Ama Tuş Gönderirken Neden Kullanmamışsın
----------------------------------------------------------------------------------------------------------------
   Yani:  if (checkBox1.Checked == true)
              SendKeys.Send("Z");-----> Bu şekilde Kullanmak Yerine
-----------------------------------------------------------------------------------------------------------------
    Bu :  if (checkBox1.Checked == true)
              makro.Send("Z"); ---------> Bu şekilde Kullanman Gerekmezmiydi
                                                        [Resim: 2JkP6A.gif]
 
#3
(17-01-2019, Saat: 21:22)kzlsakal2002 Adlı Kullanıcıdan Alıntı: @aliemre123
    Hatanın sebebini bilmiyorum ama sourcede garip bulduğum bir iki yer var
1. Knight Online de tuş göndermek için AutoIt Kullanman Gerekir
2. using AutoItX3Lib;
    AutoItX3 makro = new AutoItX3();
    AutoIt Referans Olarak Göstermişsin Ama Tuş Gönderirken Neden Kullanmamışsın
----------------------------------------------------------------------------------------------------------------
   Yani:  if (checkBox1.Checked == true)
              SendKeys.Send("Z");-----> Bu şekilde Kullanmak Yerine
-----------------------------------------------------------------------------------------------------------------
    Bu :  if (checkBox1.Checked == true)
              makro.Send("Z"); ---------> Bu şekilde Kullanman Gerekmezmiydi

dikkatimden kaçtı sanırım hemen düzeltip deniyorum.

debug klasörünü silip tekrar yaptığımda hatadan kurtuldum
Konu ile Alakalı Benzer Konular
Konular
Yazar
  /  
Son Yorum
Yorumlar: 6
Okunma: 817
02-09-2017, Saat: 00:07
Son YorumWithCreative

Hızlı Menü:

Konuyu Okuyanlar: 1 Ziyaretçi