SeaMonster131 |
» 2010-08-05 21:18:50 Aaaa...no to to nie zadziała :) @ison - troche racji masz w tym "nie chce pomagać oszustom i odwalać za nich robotę"........ |
|
Animax97 Temat założony przez niniejszego użytkownika |
» 2010-08-05 23:29:38 Hm... Panowie, zamiast nabijać głupie posty może jakaś podpowiedz z waszej strony? Jestem początkujący, a żeby oskarżać kogoś o oszustwo trzeba mieć dowody, bo moim zdaniem jest to pomówienie. |
|
ison |
» 2010-08-05 23:40:05 a może tak trochę zaangażowania z własnej strony?... podałem ci jak na tacy funkcję. Wystarczy że wpisałbyś w google SendMessage(); co do oskarżania to tak się składa że 99% ludzi którzy zaczynają 'naukę' od wysyłania symulacji klawiszy do programów piszą boty. uchwyt okna z nazwy aplikacji zwraca funkcja FindWindow( 0, "nazwa okna" );
przykładowo jeśli chcesz wysłać znak '1': SendMessage( uchwyt, WM_CHAR, 49, 0 );
|
|
Animax97 Temat założony przez niniejszego użytkownika |
» 2010-08-05 23:52:58 A więc jestem tym 1% :) Dziękuję. Ale mam problem: #undef UNICODE #define WIN32_LEAN_AND_MEAN #include <windows.h> #include <conio.h>
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow ) { HWND uchwyt = NULL; uchwyt = FindWindow( "plik.txt - Notatnik", NULL ); SendMessage( uchwyt, WM_CHAR, VkKeyScan( 'a' ), 0 ); getch(); } Czy możecie mi wskazać linię w której jest błąd ? I ew. jakaś podpowiedź? Chodzi o to, że nie wysyła mi tekstu do notatnika. Jeszcze raz mówie, jestem noob'em jeżeli chodzi o C++, ale myślę, że tutaj się nauczę. Przynajmniej niektórych, rzeczy. |
|
ison |
» 2010-08-05 23:56:02 w tym miejscu: uchwyt = FindWindow( "plik.txt - Notatnik", NULL );
odwrotnie argumenty :) coś mi się zdaje że do notatnika tak łatwo nie napiszesz czegoś, musiałbyś chyba mieć bezpośrednio jego kontrolkę żeby móc coś wpisać choć mogę się mylić. Lepiej jak będziesz testował w tej sposób: -odpal konsole -wpisz title abc -wysylaj komunikaty do okna abc będziesz widział czy się coś pojawi w konsoli czy nie |
|
Animax97 Temat założony przez niniejszego użytkownika |
» 2010-08-05 23:59:12 Wielkie dzięki - już umiem. ;> Cóż, widzę, że dobrze, że zarejestrowałem się na forum. Zostanę z Wami na dłużej.
Klawisz już umiem wysłać, a możesz mi podpowiedzieć jak wysłać np. Hello World ? Jakaś podpowiedź ? :) |
|
ison |
» 2010-08-06 00:04:39 przykładowo dla strzałki w lewo: SendMessage( uchwyt, WM_KEYDOWN, VK_LEFT, 0 );
jeśli chcesz wysłać ciąg znaków to chyba najlepiej jak zrobisz to ręcznie, tzn będziesz wysyłał po znaku void wyslij_ciag_znakow( string napis, HWND window ) { for( int i = 0; i < napis.length(); ++i ) SendMessage( window, WM_CHAR, napis[ i ], 0 ); }
nie zapomij o i |
|
Animax97 Temat założony przez niniejszego użytkownika |
» 2010-08-06 00:18:58 Chyba podłapałem, ale nie do końca: #undef UNICODE #define WIN32_LEAN_AND_MEAN #include <windows.h> #include <conio.h> #include <iostream>
using namespace std;
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow, string napis, HWND window ) { window = FindWindow( NULL, "plik.txt - Notatnik" ); for( int i = 0; i < napis.length(); ++i ) { SendMessage( window, WM_CHAR, napis[ i ], 0 ); } getch(); } A tutaj log: Kompilator: Default compiler Building Makefile: "C:\Documents and Settings\Administrator\Pulpit\C++\Makefile.win" Wykonywanie make... make.exe -f "C:\Documents and Settings\Administrator\Pulpit\C++\Makefile.win" all g++.exe -c main.cpp -o main.o -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include"
g++.exe main.o -o "C++ Programmer.exe" -L"C:/Dev-Cpp/lib"
C:/Dev-Cpp/lib/libmingw32.a(main.o)(.text+0x106):main.c: undefined reference to `WinMain@16' collect2: ld returned 1 exit status
make.exe: *** ["C++] Error 1
Wykonanie zakończone
Nie wiem czemu, ale wywala mi błąd, wiesz może o co chodzi? |
|
1 « 2 » 3 4 |