also ich wollte das ControlSend für einfache Fälle durch nen user32.dll call ersetzen, da grad das shift, alt, control handling etwas speziell ist (und ichs auch nicht brauch).
EDIT: ok knapp vorbei ist halt auch daneben, hab jetzt im AutoIt source gespickt und dabei noch gelernt, dass es naben Vk noch scancode gibt und das ist nicht immer der gleiche Wert...
Ja das geht da müsst dann aber denke ich den ASCII Code manuell dir raussuchen (64 für @) oder gibt es in AutoIT eine Möglichkeit sich direkt den ASCII für zB. {space} sich ausgeben zu lassen?
Jo also aktueller Stand s.o., also alles für das es einen VKEY definiert gibt, kann man so einfach lösen. Das sleep(xx) ist notwendig damit die msg Reihenfolge passt, da WM_KEYDOWN zerlegt wird in eine KEYDOWN und eine CHAR msg. Wenn man den sleep weglässt geht es für single events, jedoch kann man nicht in textinput felder senden, da dann der CHAR erst nach dem UP kommt. Das dürfte dem keydowndelay entsprechen, muss man probieren, ob das schon so passt für jeden Rechner/Windows.
Also hab jetzt nochmal probiert, ob man so was wie CTRL+ALT+q = @ schicken kann, habs aber nicht hinbekommen. Hab dann noch mit WM_SYSKEYDOWN experimentiert, hat aber auch nicht geklappt. Alle Lösungen die scheinbar funktioneren (so wie AutoIt das macht) modifizieren die KeyBoardState Struktur und schreiben sie danach wieder zurück. In dem
Moment wo die verbogen ist, wirkt sich das auch auf den normalen Keyboard Input aus und dadurch ensteht diese "lustige" Groß-/Kleinschreibung.
Beim testen mit dem @ über ControlSend() ist mir allerdings eine spannende Sache aufgefallen, nämlich dass es das als ASCII Zeichen gibt 0x40 und Autoit interessanter Weise das gar nicht als CTRL-ALT q verschickt sonder als char code 0x40, daraus ist nun folgende Lösung entstanden mit der ich meine e-mail adresse testhalber in den chat window geschickt habe:
C++ SendMEssage Problem 12/11/2010 - C/C++ - 53 Replies Hey Comunity,
bin C++ Anfänger und hab da ein Problem.
Und zwar möchte ich Tastendrücke mithilfe meines Programms simulieren,
da hab ich mir gedacht, dass ich SendMessage benutze.
Mein Problem ist jetzt, dass ich nicht weiß, wo ich das Parameter
für die "zu drückende" Taste hinschreiben soll bzw. in welcher Form;
als Hex oder VK_KEY_? . Der Bot soll einfach nur ununterbrochen
"w" drücken, jedoch krig ich es einfach nicht hin.
Bei Google hab ich nix gefunden, MSDN hab ich nicht...
C++ SendMessage Problem 08/02/2010 - C/C++ - 1 Replies Also ich versuche gerade in C++ einen kleinen Spammer zu programmieren habe aber leider ein Problem.
Mein Code:
#include <iostream>
#include <windows.h>
#include <string>
using namespace std;
delphi sendmessage 07/27/2010 - General Coding - 3 Replies hallo leute ich hab mal eine frage ob mir jemand kurz erläutern könnte wie ich mit sendmessage eine mausbewegung in einem minimierten fenster ausgebe
ich habe embarcadero rad studio 2010
hier ist der bisherige "source":
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
[Help] C# SendMessage() 05/11/2010 - CO2 Programming - 19 Replies I'm currenty trying to use the SendMessage Function with CO. According to msdn I need to use this:
static extern IntPtr SendMessage(IntPtr hWnd, UInt32 Msg, IntPtr wParam, IntPtr lParam);
My question is: How do I find the hWnd? What are the wParam and lParam? And what can I use as wParam and lParam? Any help will be greatly appreciated.
sendmessage? 12/26/2008 - CO2 Programming - 0 Replies just wondering how it works in C# tried few tutorials with notepad in it and it doesnt send the letters/close it even it finds the window this is how i got it so far (pretty much copypasted, just to see how it works...)
private static extern IntPtr FindWindow(string winClass, string WinName);
private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
private static extern IntPtr PostMessage(IntPtr hWnd,...