IPB

Witaj Gościu ( Zaloguj | Rejestruj )

> Uwaga!

Uwaga!
To forum służy do zamieszczania gotowych przykładów i silników, nie do poszukiwań!

 
Reply to this topicStart new topic
[DLL] Xtend DLL, Tak, nudziło mi się
Ocena 5 V
 
Snake
post 5.04.2008 - 16:17
Post #1


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


No tak, znowu mi się nudziło więc postanowiłem napisać DLL-a w którym znajdują się funkcje - które IMO brakują w GM-ie (GM6 - tylko na tym testowałem) smile.gif

Wersja 2 here

------------------------------------------------------------------

Info z poprzedniej wersji 1.5

Funkcje:

Rejestr:
  • registry_delete_key - Kasuje klucz i wszystkie jego wartości z rejestru.
  • registry_delete_key_value - Kasuje podana wartość klucza z rejestru.
  • registry_find_key_first &
  • registry_find_key_next - Szuka podkluczy w kluczu ( Dzięki Markowi.S )
  • registry_find_key_value_first &
  • registry_find_key_value_next - Szuka wartości w kluczu ( Dzięki Markowi.S )
Schowek:
  • save_bmp_from_clipboard - jeśli w schowku znajduje się obrazek - zapisuje zawartość schowka do pliku bmp
Okna itp.:
  • show_message_box - Pokazuje Message Box z wczesniej ustawionymi opcjami przez show_message_box_options
  • show_message_box_options - Ustawia opcje dla wyświetlania MessageBoxa
  • window_find - Szuka okna poprzez podana nazwe klasy i/lub okna i zwraca jego uchwyt.
  • window_find_ex - Szuka potomnego okna poprzez podana nazwę klasy i/lub nazwę okna w podanym oknie i zwraca jego uchwyt.
Liczby:
  • real_to_hex - Konwertuje liczbę na HEX o podanej minimalnej długości stringa
  • hex_to_real - działanie odwrotne do powyższego biggrin.gif
Pliki:
  • file_get_version - Sprawdza czy w pliku jest informacja o wersji (Version Info), w plikach exe, dll itp.
  • file_read_version_info - Wyczytuje wybrane informacje o wersji pliku (Version info), w plikach exe, dll itp.
Procesy:
  • process_find_first &
  • process_find_next - Szuka procesów ( Dzięki Moldisowi )
  • process_close - Zamyka proces ( po nazwie )
  • process_close_by_id - Zamyka proces poprzez podany ID. ( Dzięki Shyliosowi )
  • process_exists - Sprawdza czy dany proces jest uruchomiony ( Dzięki Markowi.S )
  • process_id_current - Pobiera Process ID procesu, który został właśnie wyszukany przez funkcje process_find_first/next.
  • process_id_from_name - Szuka ID procesu (PID) poprzez nazwę.
  • process_id_from_window_handle - Szuka ID procesu (PID) poprzez uchwyt okna
  • process_read_byte / short / long / double - Odczytuje zmienna typu (...) z pamięci procesu. ( Dzięki Pieterowi )
  • process_read_string - Odczytuje stringa z pamięci procesu ( Dzięki Pieterowi )
  • process_write_byte / short / long / double - Zapisuje zmienna typu (...) do pamięci procesu.
  • process_write_string - Zapisuje stringa do pamięci procesu
  • process_write_nstring - Zapisuje stringa do pamięci procesu razem z terminatorem na końcu ( dodaje zerowy bajt ) ( Dzięki Pieterowi )
  • process_protection - Ustawia dostęp do podanego regionu pamięci wybranego procesu. ( Dzięki Pieterowi )
  • xtend_set_debug_privilege - Po wywołaniu tej funkcji Xtend ma prawa dostępu do każdego procesu
Jak używać i więcej info w skryptach smile.gif

Download v1.5:
http://www.gmclan.org/up541_4_Xtend15.html ( DLL + Example w GM6 )

A tu przykład autorstwa Pietera, pokazujący jak stworzyć bota do gier ( z Xtend.dll ):
http://forum.gmclan.org/index.php?showtopic=12366
Można w nim zobaczyć, jak za pomocą Xtenda można odczytać i zapisać dane do innego procesu ;P


--------------------
Go to the top of the page
 
+Quote Post
post 5.04.2008 - 16:17
Post #





Wiek:



Uploader


Pani kontekstowa pokazuje swe wdzięki tylko w Valhalli lub wszędzie jeżeli nie jesteś zalogowany(a)! :3
Go to the top of the page
 
Quote Post
Nobody
post 5.04.2008 - 17:48
Post #2


Nobody is perfect
**********

Wiek: 17 lat
Grupa: Użytkownicy
Postów: 2,020
Dołączył: 2.07.2007
Skąd: 50°N, 22°E
GG Uploader
Ostrzeżenia:
(0%) -----


Nieźle smile.gif Najlepsze to Real > Hex i na odwrót. Bardzo przydatne przy większych projektach online smile.gif


--------------------

Go to the top of the page
 
+Quote Post
Snake
post 19.05.2008 - 14:29
Post #3


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


Update.

Nowe funkcje:
registry_find_key_first &
registry_find_key_next - Szuka podkluczy w kluczu ( Dzięki Markowi.S )
registry_find_key_value_first &
registry_find_key_value_next - Szuka wartości w kluczu ( Dzięki Markowi.S )
process_find_first &
process_find_next - Szuka procesów ( Dzięki Moldisowi )
process_close - Zamyka proces ( po nazwie ) [ po kij to ? xD ]

Poprawki:
- show_message_box teraz poprawnie wyświetla wiadomości z np. polskimi znakami. ( Dzięki Markowi.S )
- file_read_version_info teraz odczytuje każdy plik z informacjami o wersji.

No i zrobiłem przykład na szybko:
http://gmclan.org/up541_4_Xtend12.html ( DLL + Example w GM6 )


--------------------
Go to the top of the page
 
+Quote Post
Marek.S
post 19.05.2008 - 14:45
Post #4


prostokonciki ! =D
***********

Wiek: 18 lat
Grupa: Redaktorzy
Postów: 3,100
Dołączył: 28.11.2006
Skąd: Gdańsk
Team: ni mam.
GG Uploader
Ostrzeżenia:
(0%) -----


i to się nazywa kawał dobrej roboty biggrin.gif
super!


--------------------
Dla kumatego nic trudnego..

Moje prace:
ASS subs Converter v2.05.1 (konwerter napisów)
Pan Fikuśny (moja pierwsza gra)
Domek Projektor (tworzenie obrazków i generowanie kodu PASCAL ze znaków ASCII
SuperFrog2 (kontynuacja kultowej gry z amicy)
Go to the top of the page
 
+Quote Post
Solmis
post 19.05.2008 - 16:12
Post #5


#define INT int
********

Wiek: 16 lat
Grupa: Użytkownicy
Postów: 1,043
Dołączył: 15.10.2006
Skąd: ...::|Warszawa|::...
Team: South Lemon Studio
GG Solmis Uploader
Ostrzeżenia:
(0%) -----


Heh... ;x
Kawał dobrej roboty, ja nie skorzystam, ale inni... smile2.gif

BTW.
Napisałem DLL'a i okazało się, że największy problem mam z użyciem go w GMie... tongue2.gif


--------------------
www.south-lemon-studio.com - Stronka teamu
-----------------------------------------------------------------------------
www.great-layouts.com - Już niedługo... ;) (gotowe w 45%)
-----------------------------------------------------------------------------
www.south-lemon-studio.com/solmis - Moja stronka (layout tymczasowy)
-----------------------------------------------------------------------------
-> http://www.lastfm.pl/user/Solmis/library/playlists <-
Go to the top of the page
 
+Quote Post
Pieter
post 2.06.2008 - 19:23
Post #6


╭∩╮╭∩╮
*********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,943
Dołączył: 17.06.2004
Skąd: Czę-owa --> My-ów.
Team: http://twitter.com/ihooypl
Uploader
Ostrzeżenia:
(100%) XXXXX


Mam propozycje... Dodaj ReadProcessMemory i WriteProcessMemory ^^ Będziemy mogli tworzyć swoje czity do gier w GMie biggrin.gif


--------------------
Go to the top of the page
 
+Quote Post
Snake
post 2.06.2008 - 19:29
Post #7


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


WriteProcessMemory jest ( alias process_write_string/byte/short/long/double ) w nowej wersji którą mam na dysku ( i w moim uploaderze, tylko że nie ma opisu funkcji ). Zaraz dodam ReadProcessMemory tongue2.gif


--------------------
Go to the top of the page
 
+Quote Post
Marek.S
post 2.06.2008 - 19:33
Post #8


prostokonciki ! =D
***********

Wiek: 18 lat
Grupa: Redaktorzy
Postów: 3,100
Dołączył: 28.11.2006
Skąd: Gdańsk
Team: ni mam.
GG Uploader
Ostrzeżenia:
(0%) -----


ciekawie się zapowiada biggrin.gif
a pamiętasz o proces_exists? ;>


--------------------
Dla kumatego nic trudnego..

Moje prace:
ASS subs Converter v2.05.1 (konwerter napisów)
Pan Fikuśny (moja pierwsza gra)
Domek Projektor (tworzenie obrazków i generowanie kodu PASCAL ze znaków ASCII
SuperFrog2 (kontynuacja kultowej gry z amicy)
Go to the top of the page
 
+Quote Post
Snake
post 2.06.2008 - 19:34
Post #9


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


O, dobrze że przypomniałeś ;D


--------------------
Go to the top of the page
 
+Quote Post
Pieter
post 2.06.2008 - 20:36
Post #10


╭∩╮╭∩╮
*********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,943
Dołączył: 17.06.2004
Skąd: Czę-owa --> My-ów.
Team: http://twitter.com/ihooypl
Uploader
Ostrzeżenia:
(100%) XXXXX


Jak tylko dasz nową wersje zrobię jakiś przykład czita do na przykład Tibii albo innej gry ;] taki trainerek biggrin.gif na twoim dllu


--------------------
Go to the top of the page
 
+Quote Post
Snake
post 2.06.2008 - 21:18
Post #11


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


@Pieter: To akurat przetestujesz mi nowe funkcje smile.gif

"ReadProcessMemory" zrobiłem na szybko bo nie mam czasu, więc jeśli będą jakieś błędy to się nie zdziwię ( nie testowałem w GM-ie ) ;D

Nowe funkcje:

window_find - Szuka okna poprzez podana nazwe klasy i/lub okna i zwraca jego uchwyt.
window_find_ex - Szuka potomnego okna poprzez podana nazwę klasy i/lub nazwę okna w podanym oknie i zwraca jego uchwyt.
process_close_by_id - Zamyka proces poprzez podany ID.
process_exists - Sprawdza czy dany proces jest uruchomiony
process_id_current - Pobiera Process ID procesu, który został właśnie wyszukany przez funkcje process_find_first/next.
process_id_from_name - Szuka ID procesu (PID) poprzez nazwę.
process_id_from_window_handle - Szuka ID procesu (PID) poprzez uchwyt okna
process_read_byte / short / long / double - Odczytuje zmienna typu (...) z pamięci procesu.
process_read_string - Odczytuje stringa z pamięci procesu
process_write_byte / short / long / double - Zapisuje zmienna typu (...) do pamięci procesu.
process_write_string - Zapisuje stringa do pamięci procesu

Mam nadzieję że nic nie pominąłem/pomyliłem smile.gif

Download:
http://gmclan.org/up541_4_Xtend.html ( przykład nie pokazuje jak można użyć nowych funkcji )


--------------------
Go to the top of the page
 
+Quote Post
Pieter
post 3.06.2008 - 9:34
Post #12


╭∩╮╭∩╮
*********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,943
Dołączył: 17.06.2004
Skąd: Czę-owa --> My-ów.
Team: http://twitter.com/ihooypl
Uploader
Ostrzeżenia:
(100%) XXXXX


process_read_string nie zwraca string tylko real x_X popraw to jak najszybciej tongue2.gif
ups.. mój błąd biggrin.gif nie zobaczyłem 1 argumentu :S

[gml]/*
---- Xtend DLL by Snake ----

process_read_string( ID Procesu, Adres, ilosc znakow ) - Odczytuje zmienna typu string z
pamieci procesu.
argument0: (real) ID procesu.
argument1: (real) Adres, z ktorego zostanie odczytana wartosc
argument2: (real) ilosc znakow do odczytania

Zwraca: (string) odczytany z pamieci. "" ( pusty string ) jesli nie udalo sie odczytac.
*/

return external_call( global._xtend_processreadstring, argument0, argument1 );[/gml]
powinno wyglądać tak:
[gml]/*
---- Xtend DLL by Snake ----

process_read_string( ID Procesu, Adres, ilosc znakow ) - Odczytuje zmienna typu string z
pamieci procesu.
argument0: (real) ID procesu.
argument1: (real) Adres, z ktorego zostanie odczytana wartosc
argument2: (real) ilosc znakow do odczytania

Zwraca: (string) odczytany z pamieci. "" ( pusty string ) jesli nie udalo sie odczytac.
*/

return external_call( global._xtend_processreadstring, argument0, argument1, argument2 );[/gml]

może i tu był błąd... ale nadal zwraca tylko real ;/

Jak byś chciał poprawnie działającą funkcje odczytywania stringa z procesu to pisz na priv =P

EDIT:
Gorąca prośba do Ciebie Snake: Dodaj VirtualProtectEx do swojego dll'a. Potrzebuje go hardo emot11.gif byle szybko bo się rozkręcam ;d i zaraz cavebota do expienia w tibii napisze w gm lol


--------------------
Go to the top of the page
 
+Quote Post
Snake
post 3.06.2008 - 10:32
Post #13


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


Poprawiłem: http://gmclan.org/up541_4_Xtend13a.html
Właśnie też znalazłem błąd w tym skrypcie, i jeszcze w DLL-u był "Access Violation" =P

VirtualProtectEx ? Zobaczymy smile.gif

EDIT: Ta funkcja nie zwracała real tylko po prostu nic tongue2.gif


--------------------
Go to the top of the page
 
+Quote Post
Pieter
post 3.06.2008 - 10:33
Post #14


╭∩╮╭∩╮
*********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,943
Dołączył: 17.06.2004
Skąd: Czę-owa --> My-ów.
Team: http://twitter.com/ihooypl
Uploader
Ostrzeżenia:
(100%) XXXXX


ok ;] dodaj jeszcze VirtualProtectEx i będę uber happy ^^

Edit: na to samo wychodzi ;p bo gm nic zwraca jako real ^^


--------------------
Go to the top of the page
 
+Quote Post
Kofel
post 3.06.2008 - 10:53
Post #15


Typical noob
********

Wiek: 13 lat
Grupa: Użytkownicy
Postów: 1,051
Dołączył: 6.02.2007
Uploader
Ostrzeżenia:
(70%) XXXX-


Pieter, jak zrobisz przykład to wyjdzie wysyp nowych czitów i trainerów do Tibi. A może ktoś pokusi się o zrobienie bota do Almory? xD


--------------------
CYTAT(Bagno)
Kofel to pedał
Go to the top of the page
 
+Quote Post
Pieter
post 3.06.2008 - 10:59
Post #16


╭∩╮╭∩╮
*********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,943
Dołączył: 17.06.2004
Skąd: Czę-owa --> My-ów.
Team: http://twitter.com/ihooypl
Uploader
Ostrzeżenia:
(100%) XXXXX


Trzeba coś zadziałać tongue2.gif a czity w GM hmm... To tylko podnieta dla newbie którzy nie znają innych języków programowania tongue2.gif

SNAKE: potrzebuje żebyś do process_write_string dodał tak zwany null terminator... bo ta funkcja tylko nadpisuje pare liter i resztę zostawia. Żeby nadpisać wszystko muszę w GML pisać

GML
process_write_string(processID,adres,text);
process_write_byte(processID,adres+string_length(text),$00);


a twoje process_write_string powinno samo dodawać ten ostatni "bit" tongue2.gif


--------------------
Go to the top of the page
 
+Quote Post
Snake
post 3.06.2008 - 11:41
Post #17


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


A nie można
GML
process_write_string(processID,adres,text + chr( 0 ) );
? Bo nie każdy może chcieć zapisywać null-terminated stringi tongue2.gif
Zmień w process_write_string:
GML
return external_call( global._xtend_processwritestring, argument0, argument1, argument2 + chr( 0 ) );

tongue2.gif


--------------------
Go to the top of the page
 
+Quote Post
Pieter
post 3.06.2008 - 11:42
Post #18


╭∩╮╭∩╮
*********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,943
Dołączył: 17.06.2004
Skąd: Czę-owa --> My-ów.
Team: http://twitter.com/ihooypl
Uploader
Ostrzeżenia:
(100%) XXXXX


niestety chr(0) nie działa ;p testowałem... no nic ;P trzeba będzie po prostu zrobić nowy skrypt o nazwie process_write_stringNULL czy coś takiego tongue2.gif i on wywoła obie funkcje z dlla ^^


--------------------
Go to the top of the page
 
+Quote Post
Snake
post 3.06.2008 - 13:02
Post #19


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


No to mały update:
Nowe funkcje:
process_write_nstring - zapisuje stringi razem z nullem
process_protection (VirtualProtectEx) - Ustawia dostęp do podanego regionu pamięci wybranego procesu.
download:
http://gmclan.org/up541_4_Xtend14.html

EDIT: A tu "Nieoficjalne" example, pokazujące jak można użyć Xtenda ;D ( Publikowałem je wcześniej )
http://gmclan.org/up541_4_XtendExamples.html
Przykład "ASM" pokazuje jak można użyć funkcje zapisujące do pamięci, żeby zmodyfikować kod aplikacji z poziomu asemblera.
A przykład "close" pokazuje jak można zamknąć proces poprzez wyszukanie jego okna.


--------------------
Go to the top of the page
 
+Quote Post
Snake
post 21.08.2008 - 17:52
Post #20


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


Update:
Dodałem jedną funkcję - xtend_set_debug_privilege. Po wywołaniu jej Xtend ma prawo dostępu do każdego procesu.

Download (v1.5):
http://www.gmclan.org/up541_4_Xtend15.html


--------------------
Go to the top of the page
 
+Quote Post
Snake
post 2.08.2009 - 18:57
Post #21


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


Nowa wersja, oznaczona numerkiem 2 ! >:D
Wprawdzie teraz bibliotekę pisałem głównie z myślą o manipulowaniu innymi programami, jednak w bibliotece można nadal znaleźć parę innych przydatnych funkcji. Dla uzyskania większej wydajności zmieniłem sposób jakim manipulowało się procesami w poprzednich wersjach - teraz trzeba je otwierać (wtedy przy wywołaniu jakiejkolwiek funkcji process_* podany proces był otwierany i zamykany w bibliotece). Dzięki wykorzystaniu GMAPI listowanie procesów, kluczy z rejestru itd. również wygląda inaczej niż wtedy - teraz mogłem użyć znacznie wydajniejszej metody wyliczania - do podanej ds_listy dodawane są odpowiednie wartości, tak więc nie trzeba już pisać pętli z funkcjami *find_first i *find_next ;D W pliku gm6 zdefiniowanych jest wiele stałych z WinAPI przydatnych przy np. wysyłaniu komunikatów czy zmiany stylu okna. A, i nie trzeba już wywoływać funkcji "xtend_set_debug_privilege", uprawnienia są dodawane przy inicjalizacji.
Jako że Delphi ssie, Xtenda również przepisałem do C++, dzięki czemu DLL nieco mniej waży ;p
Opisy funkcji znajdziecie w skryptach (niestety, tym razem w j. angielskim).

Nowa lista funkcji:
  • xtend_init / xtend_free - Inicjalizacja / zwalnianie biblioteki
  • system_get_color - Pobiera kolor danego elementu schematu kolorów ustawionego w Windowsie
  • system_get_memory_total / system_get_memory_available / system_get_memory_usage- Zwraca ilość pamięci (całkowita, użyta, wolna)
  • system_get_cpucount - Zwraca ilość procesorów (lub rdzeni)
  • system_is_runasadmin - Sprawdza czy gra została uruchomiona jako administrator
  • system_is_x64 - Sprawdza czy OS jest 64-bitowy
  • system_get_cpuclock / system_get_cpuclock_ex - Zwraca częstotliwość cyklu zegarowego procka
  • system_get_cpuname - Zwraca nazwę procka
  • convert_single_inttohex / convert_single_hextoint - Konwertuje podaną liczbę na hex i odwrotnie
  • convert_batch_inttohex / convert_batch_hextoint - Konwertuje listę liczb na listę "hexów" i odwrotnie
  • render_control_button / render_control_checkbox - Renderuje windowsowego buttona / checkboxa do sprite'a
  • screen_capture - Przechwytuje podany obszar ekranu i dodaje go jako sprite
  • screen_get_pixel - Pobiera kolor danego piksela z ekranu
  • app_oneinstance_init / app_oneinstance_free - Zabezpieczenie przed uruchomieniem gry gdy ta jest już uruchomiona.
  • clipboard_has_bitmap / clipboard_get_bitmap - Przechwytywanie mapy bitowej ze schowka
  • show_messagebox - Message box
  • window_get_process - Pobiera ID procesu który utworzył podane okno
  • window_get_desktop - Pobiera uchwyt okna pulpitu
  • window_get_active - Pobiera uchwyt aktywnego okna
  • window_get_focused - Pobiera uchwyt okna na którym skupiony jest system (fokus)
  • window_get_parent - Pobiera uchwyt rodzica danego okna
  • window_get_top - Pobiera uchwyt okna które jest na wierzchu
  • window_get_first / window_get_last / window_get_next / window_get_previous - Pobiera uchwyt okna zależnego od kolejności Z danego okna
  • window_find / window_find_ex - Szuka uchwytu okna
  • window_atpoint - Pobiera uchwyt okna na podanej pozycji
  • window_set_focus - Skupia system na danym oknie (daje fokus)
  • window_set_parent - Zmienia rodzica danego okna
  • window_set_position_ex - Zmienia pozycje danego okna
  • window_set_size_ex - Zmienia rozmiar danego okna
  • window_get_x_ex / window_get_y_ex - Pobiera pozycje danego okna
  • window_get_width_ex / window_get_height_ex - Pobiera rozmiar danego okna
  • window_set_text - Zmienia tytuł danego okna
  • window_get_text - Zwraca tytuł danego okna
  • window_get_classname - Zwraca nazwę klasy danego okna
  • window_set_visible_ex - Zmienia widoczność danego okna
  • window_get_visible_ex - Sprawdza widoczność danego okna
  • window_set_enabled - Włącza/wyłącza dane okno
  • window_get_enabled - Sprawdza czy dane okna jest włączone
  • window_close - Zamyka podane okno
  • window_bringtotop - Wyciąga podane okno na wierzch
  • window_restore - Przywraca okno
  • window_maximize - Maksymalizuje okno
  • window_is_maximized - Sprawdza czy dane okno jest zmaksymalizowane
  • window_minimize - Minimalizuje podane okno
  • window_is_minimized - Sprawdza czy dane okno jest zminimalizowane
  • window_set_topmost - Ustawia właściwość "zawsze na wierzchu" dla danego okna
  • window_is_topmost - Sprawdza czy podane okno ma właściwość "zawsze na wierzchu"
  • window_exists - Sprawdza czy podany uchwyt okna jest prawidłowy
  • window_is_child - Sprawdza czy podane okno jest oknem potomnym danego okna
  • window_enumerate_all - Listuje wszystkie okna
  • window_enumerate_process - Listuje wszystkie okna utworzone przez podany proces
  • window_set_opacity / window_set_transparentcolor / window_removetransparency - Zmiana przezroczystości okna
  • window_set_style - Zmienia styl okna
  • window_set_exstyle - Zmienia styl rozszerzony okna
  • window_set_classstyle - Zmienia styl danej klasy okna
  • window_get_style - Pobiera maskę stylów danego okna
  • window_get_exstyle - Pobiera maskę stylów rozszerzonych danego okna
  • window_get_classstyle - Pobiera maskę stylów danej klasy okna
  • window_refresh - Odświeża dane okno
  • window_sendmessage / window_postmessage - Wysyła komunikat do danego okna (SendMessage/PostMessage z WinAPI)
  • window_screentowindow_x / window_screentowindow_y - Konwertuje pozycję ekranową na pozycję zależną do danego okna
  • window_windowtoscreen_x / window_windowtoscreen_y - Działanie odwrotne do powyższego
  • window_screentoclient_x / window_screentoclient_y - Konwertuje pozycję ekranową na pozycję zależną do obszaru klienta danego okna
  • window_clienttoscreen_x / window_clienttoscreen_y - Działanie odwrotne do powyższego
  • process_enumerate_processes - Listuje procesy
  • process_enumerate_pages - Listuje strony pamięci danego procesu
  • process_enumerate_modules - Listuje moduły załadowane przez dany proces
  • process_enumerate_heapblocks - Listuje bloki stert danego procesu
  • process_create - Uruchamia podana aplikacje (i zwraca uchwyt do utworzonego procesu)
  • process_open - Otwiera podany proces
  • process_close - Zamyka uchwyt procesu
  • process_suspend / process_resume - Wstrzymuje / wznawia proces
  • process_terminate - Zamyka proces
  • process_read_byte / process_read_ubyte / process_read_short / process_read_ushort / process_read_long / process_read_ulong / process_read_float / process_read_double - Odczytuje zmienną (wybranego typu) z pamięci danego procesu
  • process_read_string - Odczytuje stringa z pamięci danego procesu
  • process_read_array - Masowo odczytuje zmienne danego typu z pamięci danego procesu do ds_listy
  • process_write_byte / process_write_ubyte / process_write_short / process_write_ushort / process_write_long / process_write_ulong / process_write_float / process_write_double - Zapisuje zmienną (wybranego typu) do pamięci danego procesu
  • process_write_string - Odczytuje stringa do pamięci danego procesu
  • process_write_array - Masowo zapisuje zmienne danego typu do pamięci danego procesu z ds_listy
  • process_find_id - Szuka ID procesu o podanej nazwie
  • process_get_name - Zwraca nazwę procesu o podanym ID
  • process_get_path - Zwraca ścieżkę do aplikacji danego procesu
  • process_set_pageaccess - Zmienia flagi dostępu do danego regionu pamięci danego procesu
  • process_set_affinity - Zmienia maskę koligacji (affinity mask) danego procesu
  • process_get_affinity - Pobiera maskę koligacji (affinity mask) danego procesu
  • process_set_priority - Zmienia priorytet danego procesu
  • process_get_priority - Zwraca priorytet danego procesu
  • process_get_current - Zwraca pseudo-uchwyt który identyfikuje aktualny proces
  • process_get_currentid - Zwraca ID aktualnego procesu
  • process_cpuusage_init / process_cpuusage_get / process_cpuusage_free - Mierzy użycie procesora przez dany proces
  • process_get_memoryusage - Zwraca użycie pamięci przez dany proces
  • registry_read_integer / registry_read_integer_ext - Odczytuje wartość typu DWORD z rejestru
  • registry_read_multistring / registry_read_multistring_ext - Odczytuje wartość ciągu wielokrotnego z rejestru
  • registry_read_expandingstring / registry_read_expandingstring_ext - Odczytuje wartość ciągu rozwijalnego z rejestru
  • registry_write_integer / registry_write_integer_ext - Zapisuje wartość typu DWORD do rejestru
  • registry_write_multistring / registry_write_multistring_ext - Zapisuje wartość ciągu wielokrotnego do rejestru
  • registry_write_expandingstring / registry_write_expandingstring_ext - Zapisuje wartość ciągu rozwijalnego do rejestru
  • registry_delete_key / registry_delete_key_value - Kasuje klucz / wartość klucza z rejestru
  • registry_enumerate_subkeys - Listuje podklucze
  • registry_enumerate_values - Listuje wartości klucza


Bilioteka w wersji 2.1 i przykład:
http://www.gmclan.org/up541_4_Xtend21.html
Screeny z przykładu, ażeby was zachęcić do pobrania: 1 2 3 ;[


--------------------
Go to the top of the page
 
+Quote Post
PoxiPol
post 2.08.2009 - 19:38
Post #22


Chicken
*********

Wiek: 16 lat
Grupa: Użytkownicy
Postów: 1,538
Dołączył: 16.08.2007
Skąd: ja mam to wiedziec?
Team: PAS, LE
GG PoxiArtist Uploader
Ostrzeżenia:
(20%) X----


QUOTE
window_minimize - Minimalizuje podane okno

AWSUM : DDDDDDDD
QUOTE
screen_get_pixel - Pobiera kolor danego piksela z ekranu

AWSUMAWSUM : DDDDDDDD

Nie no super. Dzieki Snake : )


--------------------
Go to the top of the page
 
+Quote Post
Markar
post 13.08.2009 - 9:08
Post #23


Forum Veteran
*****

Wiek: 12 lat
Grupa: Użytkownicy
Postów: 421
Dołączył: 24.06.2009
Skąd: si wzi GM?
GG Uploader
Ostrzeżenia:
(0%) -----


Świetny DLL! Przydatne funkcje, możliwe że go użyję, ale może dodasz takie coś:
Wyświetlanie filmiku w wybranym polu w viewie, rozumiesz? Dodasz?


--------------------
C++ to potęga!
Go to the top of the page
 
+Quote Post
ΨΧΞ
post 13.08.2009 - 9:11
Post #24


Szpan Bot
************

Wiek: 20 lat
Grupa: Administratorzy
Postów: 4,359
Dołączył: 25.06.2006
Skąd: Z fabryki części używanych :)
Team: Native Studio
GG PsichiX Uploader


CYTAT
ale może dodasz takie coś:
Wyświetlanie filmiku w wybranym polu w viewie

hyhyhy xD

hmm, ciekawe czy nie będzie się to kłócić z ogólnymi założeniami funkcji biblioteki tongue2.gif


--------------------
Go to the top of the page
 
+Quote Post
eltix
post 9.01.2010 - 1:51
Post #25


Forum Veteran
*****

Wiek: 21 lat
Grupa: Użytkownicy
Postów: 364
Dołączył: 6.07.2007
Skąd: Koło
Uploader
Ostrzeżenia:
(20%) X----


sorry że odświeżam ale chciałbym się spytać, czy dla gm8 będzie tez wersja? bo niestety pod ósemką mi nie działa. bardzo przydatny dll


--------------------
for fun
Go to the top of the page
 
+Quote Post
Snake
post 9.01.2010 - 9:53
Post #26


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


Będzie, ale zaktualizuję to dopiero gdzieś za miesiąc, jak wydam nową wersję GMAPI.


--------------------
Go to the top of the page
 
+Quote Post
eltix
post 9.01.2010 - 10:50
Post #27


Forum Veteran
*****

Wiek: 21 lat
Grupa: Użytkownicy
Postów: 364
Dołączył: 6.07.2007
Skąd: Koło
Uploader
Ostrzeżenia:
(20%) X----


szkoda, bo by mi sie przydał teraz. ale jak trzeba czekać to trzeba. Odwalasz kawał dobrej roboty


--------------------
for fun
Go to the top of the page
 
+Quote Post
Snake
post 10.01.2010 - 7:44
Post #28


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


Mała poprawka: http://gmclan.org/up541_4_Xtend20_fixed.html - poprawiłem opisy niektórych funkcji (wprowadzały w błąd np. złą kolejnością argumentów :F) i informacje o wersji pliku DLL.


--------------------
Go to the top of the page
 
+Quote Post
Snake
post 31.01.2010 - 17:37
Post #29


Elite
********

Wiek: 20 lat
Grupa: Użytkownicy
Postów: 1,417
Dołączył: 16.12.2005
SnakeDeveloper Uploader
Ostrzeżenia:
(0%) -----


Aktualizacja - teraz DLL jest kompatybilny z GM8. Download: http://www.gmclan.org/up541_4_Xtend21.html


--------------------
Go to the top of the page
 
+Quote Post
eltix
post 31.01.2010 - 17:40
Post #30


Forum Veteran
*****

Wiek: 21 lat
Grupa: Użytkownicy
Postów: 364
Dołączył: 6.07.2007
Skąd: Koło
Uploader
Ostrzeżenia:
(20%) X----


xtend rox. teraz tylko czekać na updaty PsichiXa


--------------------
for fun
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 użytkownik(ów) przegląda ten temat (1 gości i 0 anonimowych użytkowników)
0 Użytkownicy:

 



RSS Wersja Lo-Fi Aktualny czas: 3.09.2010 - 18:53