Pytanie dot. parametrów funkcji

0

Witajcie. [cya]
Czy ktoś z was wie, jak przechwycić parametry określonej funkcji
(z biblioteki dll) wywołanej przez określony program?

tzn..... np:.

Mamy jakiś program 'xxx.exe' i bibliotekę 'xxx.dll' a w niej
jakąś funkcję 'NFUNKCJA(parametry)'
Program wywołuje funkcję z jakimis tam parametrami.
Jak sprawdzić jakie parametry przekazuje ?

0

Tylko i wyłącznie z dokumentacji dll'a.

0

Potraktuj bibliotekę programem DeDe (dział download). Kod co prawda jest w assemblerze (nie wiem, jak ktoś mógł wymyślić tak durny język programowania), ale nagłówki funkcji powinny być napisane po ludzku.

0

Assembler głupi?? To zdisasembluj do Pascala :)

0

Potraktuj bibliotekę programem DeDe (dział download). Kod co prawda jest w assemblerze (nie wiem, jak ktoś mógł wymyślić tak durny język programowania), ale nagłówki funkcji powinny być napisane po ludzku.

A assembler wcale nie jest durny :-[

0

Może się źle wyraziłem. To owszem przydatny język, można np. w ATXie przejąć kontrolę nad rozłożeniem zasilania, przekierować 500v na monitor i BUUUM :), ale logiki to w nim mało: np. funkcja MOV. Najpierw się podaje cel, później źródło. Moim zdaniem to trochę głupie. Rozumiem, że tak to musi być dla procesora, ale czemu nie mógł tego ktoś zrobić, tak, żeby programista pisał normalnie i żeby po prostu kompilator zamieniał miejscami parametry. To przecież nie powinno być trudne, a dużo by dało. Hmmm... wpadłem na dobry pomysł... Można by zrobić język progrmowania bardzo podobny do assemblera, ale przystępniejszy dla programisty (np. odwrócone parametry MOV, bardziej zrozumiałe nazwy rejestrów itp.), a kompilator by tłumaczył na zwykły assembler i dopiero wtedy kompilował. Czyż ja nie jestem genialny? :):):):):):)

0

Taaaa, a chociaż by dla przykładu strncpy(,,) też najpierw jest cel, potem żródło, a to C++ [stuk], hehehe
Pozdrawiam Mart

0

Chyba że ktoś uznaje C++ też za "nieprzystępny dla programistów" [hurra]
Pozdroofka Mart

0

ale logiki to w nim mało: np. funkcja MOV. Najpierw się podaje cel, później źródło.

:-D A kto ci powiedział, że w każdym kompilatorze asma jest najpierw cel a potem źródło? To, że TASM, MASM i wiele innych (fakt, większość) ma to nie znaczy, że inne też tak mają. Słyszałem o jakimś pod linuksa, który ma odwróconą składnię.

(np. odwrócone parametry MOV, bardziej zrozumiałe nazwy rejestrów itp.)

A co ci jest nie zrozumiałego w rejestrach? To są bardzo proste skróty od ich angielskich, wiele mówiących nazw. Tak samo instrukcji. Jak dla mnie to więcej mówi, niż np. cout w C++ czy reset w Pascalu.

a kompilator by tłumaczył na zwykły assembler i dopiero wtedy kompilował.

Gdzie tu logika? Lepiej od razu tłumaczyć na kod maszynowy...

I od Assemblera się odczepić ;-) To najlepszy język na świecie (choć nie najwygodniejszy)

0

I od Assemblera się odczepić ;-) To najlepszy język na świecie (choć nie najwygodniejszy)

[browar] Amen! Za te święte słowa browar dla Dryobates'a. [browar]

P.S. A zamiast DeDe gorąco polecam Win32Dasm 8.93 (z którym z resztą DeDe potrafi współpracować)

0

:-/ Nie chodzi mi o parametry funkcji zaszyte w dll'u ani o asm'a - może i toporny ale czasem się przydaje. :-8

Mi chodzi tylko o to jak przechwycić in real-time z jakimi parametrami dany program (podczas swego działania) wywołał funkcję z dll'a.

0

ale logiki to w nim mało: np. funkcja MOV. Najpierw się podaje cel, później źródło

A Pascal to juz w ogole do d..y.

X:=5;

Najpierw cel (X), potem zrodlo (5). Beznadzieja i brak logiki. ;-) ;-) :-D :-D

0

Co prawda nigdy nie programowałem w ASM ale trochę się zgadzam z my_nick'iem... ASM powinien być trochę łatwiejszy, chodzi mi tutaj chodźby o nazwy. W Pascal'u pisze się Form1.Caption := 'yayaya'; a w ASM to będzie cią różnych wierszy zaczynających się od (głównie) trzyliterowych poleceń. Co prawda Dryobates też ma trochę racji, ASM ma dużo więcej możliwości niż Pascal, oraz w nim można programować prawie wszystko, ale niestety jest bardzo trudny do opanowania. Wiele osób se go odpuszcza właśnie za te procedury... :):):)

1 użytkowników online, w tym zalogowanych: 0, gości: 1