Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 15:42

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[C#]PostMessage problem.

Discussion on [C#]PostMessage problem. within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jan 2014
Posts: 31
Received Thanks: 14
[C#]PostMessage problem.

Ich bin gerade dabei einen kleinen Bot für ein Spiel (DirectX App) zu schreiben.

Code:
        [DllImport("user32", EntryPoint = "PostMessageA", CharSet = CharSet.Ansi, SetLastError = true,
               ExactSpelling = true)]
        public static extern int PostMessage(IntPtr hwnd, uint wMsg, int wParam, int lParam);

        [DllImport("kernel32.dll")]
        static extern uint GetLastError();

        public static Process[] processes = Process.GetProcessesByName("game.bin");



        public static void PressKey()
        {
            PostMessage(processes[0].MainWindowHandle, 0x0100, (int)Keys.Tab, 0);
            PostMessage(processes[0].MainWindowHandle, 0x0101, (int)Keys.Tab, 0);
            PostMessage(processes[0].MainWindowHandle, 0x0100, (int)Keys.D1, 0);
            PostMessage(processes[0].MainWindowHandle, 0x0101, (int)Keys.D1, 0);
        }
Der Bot sollte eigentlich Tab und danach 1 klicken, jedoch tut er das nicht.
Könnte mir einer weiterhelfen?
LetsPlayPixelz is offline  
Old 01/16/2014, 16:32   #2
 
tolio's Avatar
 
elite*gold: 2932
The Black Market: 169/1/0
Join Date: Oct 2009
Posts: 6,966
Received Thanks: 1,097
tolio is offline  
Thanks
1 User
Old 01/16/2014, 17:10   #3
 
elite*gold: 0
Join Date: Jan 2014
Posts: 31
Received Thanks: 14
Funktioniert immernoch nicht mit dem InputManager.
Der Skill der auf der Taste 1 liegt wird nicht gedrückt, aber in der Chatbox vom Spiel tippt er 1 ein.

Code:
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using InputManager;

namespace AuraKBotCSharp
{
    public class PxlKey
    {
        [DllImport("user32", EntryPoint = "PostMessageA", CharSet = CharSet.Ansi, SetLastError = true,
               ExactSpelling = true)]
        public static extern int PostMessage(IntPtr hwnd, uint wMsg, int wParam, int lParam);

        [DllImport("kernel32.dll")]
        static extern uint GetLastError();

        public static Process[] processes = Process.GetProcessesByName("game.bin");



        public static void PressKey()
        {
//            PostMessage(processes[0].MainWindowHandle, 0x0100, (int)Keys.Tab, 0);
//            PostMessage(processes[0].MainWindowHandle, 0x0101, (int)Keys.Tab, 0);
//            PostMessage(processes[0].MainWindowHandle, 0x0100, (int)Keys.D1, 0);
//            PostMessage(processes[0].MainWindowHandle, 0x0101, (int)Keys.D1, 0);
            Keyboard.KeyDown(Keys.D1);
            Keyboard.KeyUp(Keys.D1);
        }
    }
}
LetsPlayPixelz is offline  
Old 01/16/2014, 17:15   #4
 
Crossside's Avatar
 
elite*gold: 0
Join Date: Dec 2013
Posts: 2,095
Received Thanks: 506
ohne zu wissen für welches game kann man dir schlecht helfen,
Crossside is offline  
Thanks
1 User
Old 01/16/2014, 17:16   #5
 
elite*gold: 0
Join Date: Jan 2014
Posts: 31
Received Thanks: 14
Quote:
Originally Posted by Crossside View Post
ohne zu wissen für welches game kann man dir schlecht helfen,
Aura Kingdom Online
LetsPlayPixelz is offline  
Old 01/16/2014, 17:44   #6
 
Crossside's Avatar
 
elite*gold: 0
Join Date: Dec 2013
Posts: 2,095
Received Thanks: 506
Hmm.. Kenne ich nicht das Spiel, leider noch nicht gezockt.
Musst du am besten schauen ob es eventuell mit keybd_event() klappt - manche Spiele haben einen Fokus auf bestimmte Elemente (wie chat zb), sollte das hier der Fall sein musst du schauen wie du es am besten lösen kannst.

Glaube das einfachste wäre du hookst die funktion die für die auren zuständig ist und rufst die funktion direkt auf, ohne den umweg zu gehen das ganze per simulierten tastendruck zu lösen. So müsstest du auch nicht ständig das Spiel im Vordergrund haben für das ganze.
Crossside is offline  
Old 01/16/2014, 18:05   #7
 
elite*gold: 0
Join Date: Jan 2014
Posts: 31
Received Thanks: 14
Hat alles nicht geholfen.
LetsPlayPixelz is offline  
Reply


Similar Threads Similar Threads
PostMessage UDF
06/27/2017 - AutoIt - 48 Replies
Benötigt wird mindestens AutoIt v3.3.8.1. Die UDF beinhaltet 9 Funktionen: _PostMessage_Send($hWnd, $Key, $Delay = 10) _PostMessage_SendDown($hWnd, $Key, $Delay = 10) _PostMessage_SendUp($hWnd, $Key, $Delay = 10) _PostMessage_Click($hWnd, $X = -1, $Y = -1, $Button = "left", $Clicks = 1, $Delay = 10) _PostMessage_ClickDown($hWnd, $X = -1, $Y = -1, $Button = "left") _PostMessage_ClickUp($hWnd, $X = -1, $Y = -1, $Button = "left") _PostMessage_ClickDrag($hWnd, $X1, $Y1, $X2, $Y2, $Button...
Problem mit PostMessage
03/04/2011 - AutoIt - 8 Replies
Hallo, Also kurzum, ich will Tasten an ein inaktives Fenster senden. z.b. die {TAB} taste. Dies funktioniert auch, wenn das Fenster aktiv ist. _WinAPI_PostMessage($hWnd, 0x100, $TAB, 0x0)
[c++]postmessage problem
07/03/2010 - C/C++ - 7 Replies
hi ich hab wieder mal ein problem ich versuche mit c++ einen bot zu schreiben und möchte einen tastendruck zum gewünschten fenster senden (nostale) mit postmessage aber wie?? ich habs mal so probiert #include <iostream> #include <windows.h>



All times are GMT +1. The time now is 15:42.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.