pape - polski prosty analizator PE dla reverserow inzynieri

0

Witam, wydaje mi sie ze jest to odpowiedni dzial.

Pisalem ponad miesiac narzedzie dla systemow win32 ktore jest zpewnoscia pomocne dla reverserow inzynieri odwrotnej.

Program o ktorym mowa to odpwoiednich zagranicznych programowa analizty PE wzbogacony o disasembler kodu.

Program pisany miesiac w czystym c winapi, posiada otwarty kod zrodlowy do ktorego kazdy moze sie dostac.

Dlaczego pisalem takie oprogramowanie?

Odpowiedz jest prosta, brakuje takich narzedzi, a program jest bardzo prosty w obsludze i w ciagu kilku sekund moze dostrczyc bardzo duzo informacji o programie .exe lub bibliotece .dll

Zapraszam do ogladania screenow z jego pracy:

Program po wlaczeniu:
user image

Program po analizie importow:
user image

Disasemblowana czesc sekcji kodu programu:
user image

Program podczas analizy naglowkow:
user image

A tutaj zapisany log w pliku tekstowym:
user image

Jest to bardzo prosty i malo wazacy program ktory bardzo ulatwia wczesna analize programow wykonywalnych win32.

Cechy programu:
-bardzo mala waga programu
-pisany w surowym c winapi
-otwarty kod zrodlowy
-analizuje naglowki plikow exe / dll
-analizuje sekcje struktury PE
-wykonuje hexdumpy danych binarnych
-wykonuje diasemblacje sekcji kodu
-analizuje importy w programie
-analizuje ciagi znakow zdefiniowane w programie
-zapisuje czysto sformatowany log txt z swojej pracy

Skompilowany program jak i zrodla mozna pobrac umnie na stronie:

Wersja skompilowana:
http://lowbyte.da.ru/software/pape/

Otwarty kod zrodlowy:
http://lowbyte.da.ru/sources/pape/

Jako ze jestem wolnym programista projektu raczej nie bede rozwijaj dalej go, ide na przekor innym aby pisac inne rozwiazania dla siebie / innych za free etc.

Do administracji: reklamuje wylacznie wlasny software o otwartym kodzie zrodlowym, serwis ktory hostuje dany projekt jest moja strona domowa.

Pozdrawiam cyber aka pl.

0

Na pierwszej stronie programu jak widać nawet na screenie jest literówka: "infomracje". Do tego literówka jest gdzieś jeszcze przy ładowaniu pliku, oraz np. "Glowna wesja podsystemu". Nie wspomnę, że polskich znaków nigdzie nie ma, a ludzie od UX za interfejs rzucili by ciebie na pożarcie aligatorom. Choć pewnie można powiedzieć, że programiści nie potrzebują ładnych narzędzi ;-)

Ale od strony merytorycznej ciekawe narzędzie - z uwagi, że nie zajmuję się inżynierią odwrotną i nie znam na strukturach plików wykonywalnych z pewnością nie mogę go docenić (lub zganić) - jednak przynajmniej kilka informacji jakie daje może mi się okazać przydatne.

0

W czym to coś jest lepsze od PEID, StudPE czy innych takich zabawek? Sorry, ale LordPE ma kupę przydatnej funkcjonalności, której to nie ma, znacznie czytelniejsze dumpy nagłówków robi itd. Poza tym polski interface? Polskich RE jest tylko kilkudziesięciu, wszyscy posłują się lepiej angielskim niż Ty polskim. Miejscami 'tłumaczenie' jest najzwyczajniej w świecie dupne. Poza tym "reverserów inżynierii odwrotnej"? Reverse engineering na nasze tłumaczy się jako inżynieria wsteczna, reverserzy reverse engineeringu...

Po prostu lepszych programów, z kupą rozszerzeń jest cała masa, nie lepiej się zaangażować w ich rozwój zamiast tworzyć namiastkę istniejącego softu?

0

Czego mi brakuje w obecnych to rozpoznawanie importów. Takie importy windowsowych dllek importują po ordzie. A głupi stud_pe wyświetla mi "going nowhere" zamiast próbować odczytać co jest pod tym ordem.

0

Chociaż ustaw czcionkę w tych tabach żeby po oczach nie waliło.... (tak wiem WinApi, ale zapewniam cię ze to nie jest trudne :P )

0

@... : Progam nie musi byc lepszy od innych. Wazne, ze programista ma wybor i sam moze okreslic co lubi; a jak jest za darmo - tym lepiej.

@cyber_pl: Brawa za wysilek i checi! [browar]

0

Widze ze bede musial sie obronic, ale coz oczekiwalem tez komentarzy sceptycznych odnosnie tego mini projektu.

... napisał(a)

W czym to coś jest lepsze od PEID, StudPE czy innych takich zabawek? Sorry, ale LordPE ma kupę przydatnej funkcjonalności, której to nie ma, znacznie czytelniejsze dumpy nagłówków robi itd. Poza tym polski interface? Polskich RE jest tylko kilkudziesięciu, wszyscy posłują się lepiej angielskim niż Ty polskim. Miejscami 'tłumaczenie' jest najzwyczajniej w świecie dupne. Poza tym "reverserów inżynierii odwrotnej"? Reverse engineering na nasze tłumaczy się jako inżynieria wsteczna, reverserzy reverse engineeringu...

Po prostu lepszych programów, z kupą rozszerzeń jest cała masa, nie lepiej się zaangażować w ich rozwój zamiast tworzyć namiastkę istniejącego softu?

Program byl pisany z angielskim interfejsem lecz po zastanowieniu sie postanowilem go spolszczyc gdyz program takowy jest kierowany dla polskich uzytkownikow, nie oczekuje zeby obcokrajowcy w ogole sie o nim dowiedzieli etc. Z tego powodu wystapilo kilka literowek podczas spolszczania oraz problem z polskimi znakami gdyz interface byl budowany na zasadzie asciiz stringow a nie ciagow ansi etc (trzeba by przepisac sporo kodu aby takowa funkcjonalnosc dodac).

Poco masa innych programow jak jeden moze poczesci zebrac funkcjonalnosc innych, w dodatku kod zrodlowy od zawsze byl otwarty, chcecie sie dowiedziec jak pracuje, jak buduje dynamiczny interfejs win32 dla siebie, jak analizuje naglowki oraz wykonuje hexdumpy badz disasemblacje kodu, zajrzyjcie do kodu zrodlowego!!!

Ja nikogo nie zmusza do korzystania z niego lecz stwarzam nasza polska alternatywe, zainteresowalem sie takowa tematyka w jeden miesiac (niecaly) napisalem pracujacy program, wszystko dla przyszlych reverserow kodu.

Wiem jak tlumaczy sie RE, sam zajmuje sie ta tematyka od kilku lat.

Co badz dziekuje za wszystkie komentarze i mam nadzieje ze miesiac mojej pracy bedzie userom tego softy pomocny.

Pozdrawiam.

0

Program byl pisany z angielskim interfejsem lecz po zastanowieniu sie postanowilem go spolszczyc gdyz program takowy jest kierowany dla polskich uzytkownikow, nie oczekuje zeby obcokrajowcy w ogole sie o nim dowiedzieli etc.

'Tłumaczenie' jest bezsensowne (sporo pojęć całkowicie bez pojęcia 'przetlumaczyłeś') a poziom Twojego angielskiego widać w źródłach pięknie... Jakieś 'stumby', 'perasingi' (to nie literówka, powtarza się w różnych miejscach... czy chciałeś napisać 'parsing'?).

Z tego powodu wystapilo kilka literowek podczas spolszczania oraz problem z polskimi znakami gdyz interface byl budowany na zasadzie asciiz stringow a nie ciagow ansi etc (trzeba by przepisac sporo kodu aby takowa funkcjonalnosc dodac).

O czym Ty do nas pieprzysz w te słowa? ANSI to właśnie ASCIIZ, przynajmniej w kontekście interakcji z Windowsem :|

Poco masa innych programow jak jeden moze poczesci zebrac funkcjonalnosc innych, w dodatku kod zrodlowy od zawsze byl otwarty, chcecie sie dowiedziec jak pracuje, jak buduje dynamiczny interfejs win32 dla siebie, jak analizuje naglowki oraz wykonuje hexdumpy badz disasemblacje kodu, zajrzyjcie do kodu zrodlowego!!!

Po to, że Twój program nie ma nawet 10% funkcjonalności wymienionych? Nie da się go używać bez ciągłego podpierania PEiD i Lordem... Nie zauważyłem nawet takiej podstawy jak wyświetlanie eksportów, pewnie ślepy jestem. Kod źródłowy? Ze źródeł można się dowiedzieć jak się tego NIE robi. Poza tym ten program nic nie analizuje! Po prostu na pałę wyświetla sobie strukturki, co zresztą nienajlepiej mu idzie. Analizę to chociażby PEiD robi.

a nikogo nie zmusza do korzystania z niego lecz stwarzam nasza polska alternatywe, zainteresowalem sie takowa tematyka w jeden miesiac (niecaly) napisalem pracujacy program, wszystko dla przyszlych reverserow kodu.

Wiem jak tlumaczy sie RE, sam zajmuje sie ta tematyka od kilku lat.

Nie kłam, proszę. Nie zajmujesz się tą tematyką od kilku lat - ze źródeł widać, że jesteś z pisaniem takich rzeczy całkowicie nieobyty. Kilka lat temu może o RE słyszałeś, ale... ale może fajny argument?

/10/"Greets: V3rtyX, Gynvael Coldwind, Polaczek17 \n"

O pierwszym tylko google słyszało, trzeci jest tutaj 'znany', prawie nic nie umie. Nas jednak interesuje środkowy, Pan Gyn. Dziwnym trafem Gyn w celu zdobycia jeszcze większego uznania produkuje od jakiegoś czasu videotutoriale o RE, a raczej o podstawach wprowadzających do RE. Napisałeś to w miesiąc... Videotutoriale na których ewidentnie się opierasz powstały bodaj dwa miesiące temu, wszystko czego Gyn nie pokazał ładnie spierniczyłeś. Zresztą przewidywaliśmy, że po paru filmach trochę dzieci-Gyna się napłodzi i zaczną tłuc toole, tutoriale itd.

Słuchaj, czy to wstyd napisać, że dopiero się podstaw uczysz? Nie lepiej napisać szczerze, bo możesz faktycznie trafić na kogoś, kto ma pojęcie i nie uwierzy na słowo? Zjawiasz się i twierdzisz, że brakuje narzędzi i Twój ubogi program jest na to lekarstwem (a narzędzi jest w nadmiarze, większość RE zna tylko niewielką część)... Gdybyś w tym siedział kilka lat to poszedłbyś z tym tam, gdzie siedzą dawni crackerzy, pozostałości po polskich RE, Ty jednak przyszedłeś na 4p, gdzie raczej na pewno ani jeden już nie zagląda.

Szczerze powiedziawszy to na jak początkującego to jest nieźle, z czasem się wyrobisz jeżeli o programowanie chodzi. W kwestii RE zaś - pewnie jak 99% zainteresowanych rzucisz to kiedy tylko fascynacja minie.

No, to tyle, więcej grzechów nie pamiętam. Baw się dalej.

0

Deus, czy mógłbyś nie mieszać z błotem każdego, kto ma mniejszą wiedzę niż Ty? My wiemy, że jesteś maestro, ale daj innym szansę. Koleś machnął kawał dobrego programu. Nie jest to może rywal dla LordPE, ale też nie jest to kolejny edytor tekstu z playerem mp3 i funkcją liczenia obwodu koła.
Każdy kiedyś zaczyna, tu widać całkiem niezły start... takich ludzi trzeba pokrzepiać [brać przykład tu ze Szczawika], a nie gnoić...

Więcej szacunku.

0

'Tłumaczenie' jest bezsensowne (sporo pojęć całkowicie bez pojęcia 'przetlumaczyłeś') a poziom Twojego angielskiego widać w źródłach pięknie... Jakieś 'stumby', 'perasingi' (to nie literówka, powtarza się w różnych miejscach... czy chciałeś napisać 'parsing'?).

Jakbys znal sie na specyfikacji PE to bys wiedzial ze istnieje takie cos jak DOS STUMB!!! poza tym najpierw pisalem w en a pozniej tlumaczylem to przyzwoicie na polski aby bylo to jasne opisane dla kazdego usera.

Ta informacja tylko sam sie ponizasz, manfestujesz swoj brak kompetencji do tej rozmowy.

O czym Ty do nas pieprzysz w te słowa? ANSI to właśnie ASCIIZ, przynajmniej w kontekście interakcji z Windowsem :|

Kolejny brak Twojej kompetencji, ciagi asciiz to ciagi o podstawie jednobajtowej z bajtem terminujacym ciag (bajtem zerowym) zas ciagi ansi to ciagi o podstawie dwu bajtowej (zazwyczaj), aby znodyfikowac kod zrodlowy w ktorym wykonuje sie takowe wywolanie:

funkcja(char *) trzeba przepisac jej definicje (defincije funckji) na funkcja(void *), funkcja(unsigned short *) albo funkcja(w_char *)

takze to robi bardzo duza roznice, jednakze twoja odpwiedz swiadczy o tym ze o programowaniu na znakach 16 bitowych nie masz pojecia.

Po to, że Twój program nie ma nawet 10% funkcjonalności wymienionych? Nie da się go używać bez ciągłego podpierania PEiD i Lordem... Nie zauważyłem nawet takiej podstawy jak wyświetlanie eksportów, pewnie ślepy jestem. Kod źródłowy? Ze źródeł można się dowiedzieć jak się tego NIE robi. Poza tym ten program nic nie analizuje! Po prostu na pałę wyświetla sobie strukturki, co zresztą nienajlepiej mu idzie. Analizę to chociażby PEiD robi.

Moj prgoram jest wolnym oprogramowaniem posiadajacym pelna funkcjonalnosc o ktorej wczesniej mowilem, wykonuje to co powinien i robi wiekszosc co robia inne programy, nie analizuje 'strukturki' tylko analizuje podstawe binarna programu a wlasciwie jego schemat PE, nie tworzylem zadnych struktur tylko opisywalem analize wedlug specyfikacji PE z msdn.

O pierwszym tylko google słyszało, trzeci jest tutaj 'znany', prawie nic nie umie. Nas jednak interesuje środkowy, Pan Gyn. Dziwnym trafem Gyn w celu zdobycia jeszcze większego uznania produkuje od jakiegoś czasu videotutoriale o RE, a raczej o podstawach wprowadzających do RE. Napisałeś to w miesiąc... Videotutoriale na których ewidentnie się opierasz powstały bodaj dwa miesiące temu, wszystko czego Gyn nie pokazał ładnie spierniczyłeś. Zresztą przewidywaliśmy, że po paru filmach trochę dzieci-Gyna się napłodzi i zaczną tłuc toole, tutoriale itd.

Ja nie pozdrawiam tylko osob ktore ta tematyka sie interesuja tylko te osoby ktore pomagaly mi przy jego tworzeniu, nawet jesli twierdzisz ze nie maja zadnej wiedzy te osoby sa mi bliskie i podczas pisania postanowilem ich pozdrowic.

Pan g. o ktrym mowa pomagal mi przy budowaniu interfejsu w serwisie http://nullcode.pl i dziekuje mu ze szczerego serca za przekazanie jego koncepcji.

Słuchaj, czy to wstyd napisać, że dopiero się podstaw uczysz? Nie lepiej napisać szczerze, bo możesz faktycznie trafić na kogoś, kto ma pojęcie i nie uwierzy na słowo? Zjawiasz się i twierdzisz, że brakuje narzędzi i Twój ubogi program jest na to lekarstwem (a narzędzi jest w nadmiarze, większość RE zna tylko niewielką część)... Gdybyś w tym siedział kilka lat to poszedłbyś z tym tam, gdzie siedzą dawni crackerzy, pozostałości po polskich RE, Ty jednak przyszedłeś na 4p, gdzie raczej na pewno ani jeden już nie zagląda.

Szczerze powiedziawszy to na jak początkującego to jest nieźle, z czasem się wyrobisz jeżeli o programowanie chodzi. W kwestii RE zaś - pewnie jak 99% zainteresowanych rzucisz to kiedy tylko fascynacja minie.

Znam wiecej o RE niz Ty, zajmuje sie ta tematyka dluzej niz Ty (sugeruje to tym ze nie wiesz jaka roznica jest ciag asciiz czy tez asni) brak Ci kompetencji zey oceniac moja wiedze, sam sie niczym nie popisales i sadze ze nie jestes wart zadnej romowy ze mna, chcesz mnie uwazac za dziecko viedoratow o RE prosz ebardzo ale ja crackowalem soft kiedy toturiali nie bylo, byly za to zagraniczne ziny crackerskie opisujace proste metody na reversacje surowego softu win16 - dos.

Do userow czytajacych te temat: user opisujacy program nie ma zadnej kompetencji ani wiedzy do tego, prosze sie nim nie sugerowac a jego argumenty sa pobiezne i nie oparte na faktach, wiedzy.

Ciekaw jestem czy sam by zdolal napisac podobny program od zera w c / winapi nazujac na prostych wywolaniach do winapi (ciakwa jestem czy by sie wyrobil w niecaly miesiac).

0

Kolejny brak Twojej kompetencji, ciagi asciiz to ciagi o podstawie jednobajtowej z bajtem terminujacym ciag (bajtem zerowym) zas ciagi ansi to ciagi o podstawie dwu bajtowej (zazwyczaj), aby znodyfikowac kod zrodlowy w ktorym wykonuje sie takowe wywolanie:

funkcja(char *) trzeba przepisac jej definicje (defincije funckji) na funkcja(void *), funkcja(unsigned short *) albo funkcja(w_char *)

Nie pomyliłeś ansi z unicode? :>

0
cyber_pl napisał(a)

Do userow czytajacych te temat: user opisujacy program nie ma zadnej kompetencji ani wiedzy do tego, prosze sie nim nie sugerowac a jego argumenty sa pobiezne i nie oparte na faktach, wiedzy.

Ciekaw jestem czy sam by zdolal napisac podobny program od zera w c / winapi nazujac na prostych wywolaniach do winapi (ciakwa jestem czy by sie wyrobil w niecaly miesiac).
Fakt, że zostałeś sprowokowany, ale Twoja riposta nie ma żadnych podstaw. Kierujesz słowa do użytkowników czytających ten wątek twierdząc, że "..." nie ma żadnej kompetencji i wiedzy, ale tego nie wiesz. Dałeś się podpuścić i emocje Tobą targnęły.

Możesz mi wierzyć lub nie, ... zna się na rzeczy lepiej, niż połowa naszych użytkowników razem wzięta - ot, tylko zbyt na serio odbiera otaczający świat i przez to niepotrzebne wojenki się tworzą.

Apeluję o wyluzowanie obu stron.

PS
i tak jak napisał 0x666, pomyliłeś unicode z ansi...

0
cyber_pl napisał(a)

Jakbys znal sie na specyfikacji PE to bys wiedzial ze istnieje takie cos jak DOS STUMB!!! poza tym najpierw pisalem w en a pozniej tlumaczylem to przyzwoicie na polski aby bylo to jasne opisane dla kazdego usera.

Ta informacja tylko sam sie ponizasz, manfestujesz swoj brak kompetencji do tej rozmowy.

Istnieje DOS STUB (zresztą nie tylko DOS-owy), tak, STUB, nie STUMB! Pisałem o miernym języku nie o strukturze PE...

Kolejny brak Twojej kompetencji, ciagi asciiz to ciagi o podstawie jednobajtowej z bajtem terminujacym ciag (bajtem zerowym) zas ciagi ansi to ciagi o podstawie dwu bajtowej (zazwyczaj), aby znodyfikowac kod zrodlowy w ktorym wykonuje sie takowe wywolanie:

funkcja(char *) trzeba przepisac jej definicje (defincije funckji) na funkcja(void *), funkcja(unsigned short *) albo funkcja(w_char *)

takze to robi bardzo duza roznice, jednakze twoja odpwiedz swiadczy o tym ze o programowaniu na znakach 16 bitowych nie masz pojecia.

ANSI == ASCIIZ - jednobajtowe, WIDECHAR == unicode.

http://msdn.microsoft.com/en-us/library/ms709439%28VS.85%29.aspx

Unicode is a method of software character encoding that treats all characters as having a fixed width of two bytes. This method is used as an alternative to Microsoft® Windows® ANSI character encoding, which because it represents characters in one byte, is limited to 256 characters.

nie analizuje 'strukturki' tylko analizuje podstawe binarna programu a wlasciwie jego schemat PE

Analizuje w podobnym stopniu co 'cat' pliki tekstowe.

nie tworzylem zadnych struktur tylko opisywalem analize wedlug specyfikacji PE z msdn.

Nie? COFF? SECTION? Przecież to wszystko jest w standardowo dostępnych nagłówkach NTAPI. Tak samo inne struktury, których nie używasz/ręcznie definiujesz w sposób średnio zgodny ze specyfikacją PE COFF-a.

Znam wiecej o RE niz Ty, zajmuje sie ta tematyka dluzej niz Ty (sugeruje to tym ze nie wiesz jaka roznica jest ciag asciiz czy tez asni) brak Ci kompetencji zey oceniac moja wiedze, sam sie niczym nie popisales i sadze ze nie jestes wart zadnej romowy ze mna, chcesz mnie uwazac za dziecko viedoratow o RE prosz ebardzo ale ja crackowalem soft kiedy toturiali nie bylo, byly za to zagraniczne ziny crackerskie opisujace proste metody na reversacje surowego softu win16 - dos.

Do userow czytajacych te temat: user opisujacy program nie ma zadnej kompetencji ani wiedzy do tego, prosze sie nim nie sugerowac a jego argumenty sa pobiezne i nie oparte na faktach, wiedzy.

Widzisz, kłótnią nt. stringów udowodniłeś coś zupełnie odwrotnego. BTW - w czasach dosowych zinów to ja tutoriale pisałem, ale to znaczenia nie ma.

Ciekaw jestem czy sam by zdolal napisac podobny program od zera w c / winapi nazujac na prostych wywolaniach do winapi (ciakwa jestem czy by sie wyrobil w niecaly miesiac).

Nie chwaląc się - pisałem taki dla firmy, dump wszystkich katalogów (u Ciebie tylko importy) itd, tydzień.

Widzisz, ja Ciebie oceniam mając Twoje wypowiedzi i Twój kod, Ty zaś próbujesz oceniać mnie bez niczego - to niebezpieczna gra.

0
... napisał(a)

Widzisz, ja Ciebie oceniam mając Twoje wypowiedzi i Twój kod, Ty zaś próbujesz oceniać mnie bez niczego - to niebezpieczna gra.

Bardzo mi przykro z tego powodu, lecz to ja zostalem zaatakowany (przez usera o nieznanym nicku) i chcialem dodac ze siedze w tym dosc dlugo na tyle zeby wiedziec na jakiej zasadzie to wszystko sie kreci (crackowalem juz rozny soft i z poziomu asemblera znam rowniez proste wywolania koprocesora dla zwyklego pentium 686, znam sie na tym w wystarczajacy stopniu aby znac sie na reversowaniu do jezyka c wywolan asemberowych winapi) no wiec trudno ocenic moja wiedze, sadze ze user "..." powyzej nie powinien tego robic.

Rzeczywiscie wykonalem kilka bledow np ansi (jedno bajtowe znaki kodowane przez tzw strony kodowe) myslalem oczywiscie o wide stringach kodowanych zazwyczaj 2 bajtowo lub na przemian w zaleznosci jaki znak (unsigned short to wlasciwie 2 bajty, jak wskaznik to kazdy element przekazany w ciagu).

Aby w tym projekcie zaimplementowac zwykle 2 bajtowe ciagi trzeba i tak przepisywac sporo kodu, ba srodowisko devcpp niepoprawnie interpretuje takowy zapis: L"wide char string"; wiec poszlem troszke na latwizne ale tylko z tego powodu ze interfejs oraz opis byl ustalony jako opis angielski.

To jeszcze nie oznacza ze napisany przeze mnie kod zrodlowy nie ma swojej wartosci, nie znam uzytkownika ktory nawet nie zechcial podac swojego prawdziwego loginu, o mnie mozecie smialo przeczytac z mojej strony domowej ( http://lowbyte.da.ru ).

Prosze sie ustawic w moim polozeniu, wybralem te forum tylko dla rozreklamowania, opublikowania projektu ktory zaja mi 1 miesiac i zapewne i tak niezle wyszedl, sadze ze zeby napisac taki program i tak trzeba miec jakies pojecie, katalogowanie mnie do poczatkujacych czy tez nowincjuszy jest bledna akcja, poniekad uraza mnie i osoby z ktorymi sie kontaktuje w tej dziedzinie.

Dlaczego w ogole zostalem zaatakowy taka wypowiedzia? nie podoba sie Wam program - nie korzystajcie z niego, ba ja i tak z tego nic nie mam, inne konkurencyjne oprogramowanie nie zostalo w zaden sposob otwarte tutaj macie wglada do kodu zrodlowego! Wszystko co napisalem do tej pory zostalo przeze mnie otwarte i opublikowane, ze nie mam na koncie wiekszych publicznych projektow nie skresla mnie jako programiste czy tez reversera czyjegos softu.

No wiec w podsumowaniu, jestem osoba ktora wie co pisze i o czym rozmawia, rozumiem ze mnie nieznacie ale posiadam wystarczajaca wiedze aby i z wami sie kontaktowac, rozmawiac o danym temacie. Jesli chodzi o angielski to zawsze bylem slaby z pisaniem, zas z czytaniem oraz rozmowa nie grzesze.

Skoro machasz taki soft w 2 tygodnie gdzie twoje otwarte oprogramowanie, kod zrodlowy (riposta dla usera ...)? dlaczego to ja pisze taki soft a nie taka osobistosc jak user "..."? ludzie gdzie tu logika.

Wiec jestem cyber aka pl i witam userow nawet tych ktorzy mysla ze nic nie umiem.

0
cyber_pl napisał(a)

katalogowanie mnie do poczatkujacych czy tez nowincjuszy jest bledna akcja

Po tych słowach:

ba srodowisko devcpp niepoprawnie interpretuje takowy zapis: L"wide char string"; wiec poszlem troszke na latwizne

Każdy zakwalifikuje Cię do nowicjuszy. (A na dodatek masochistów.) Nikt poważny tego archaicznego dziadostwa nie używa w żadnym celu.

0

@up:

sugerujesz ze srodowisko devcpp jest archaiczne ? rozmowa tutaj o pisaniu orprogramowania w jezyku c winapi, kazdy kompilator jest dobry a trzeba zauwazyc ze srodowiska typu RAD IDE nie wchodza w gre dla mnie, brzydze sie takimi srodowiskami a w visual studio express nie chcialem pisac gdyz kod z tego srodowiska / procesu kompilacji jest zdecydowanie niezgodny z moimi oczekiwaniami.

nikt nie powinien mnie katalogowac po tym fakcie, pisze co chce i w czym chce to moj wybor srodowisko te jest dobre jak kazde inne, chcecie pisac na wyzszym poziomie prosze smialo korzystajcie z RAD borlanda.

ciekaw jestem jakie miny byscie zrobili jakbym kod napisal w win32asm ktory tez dobrze znam, ten jezyk tez mozna uznac za archaiczny a jego programistow nowincjuszami ? szkoda czasu na takie twierdzenie kod zostal juz napisany.

jesli nie podoba wam sie on szkoda, wedlug mnie jest w nim przelane sporo wiedzy ktorej zaden nowincjusz nie posiada.

0

Teza somekinda o devcpp jest z d**y wyjęta, to tak jakby powiedzieć że ie używają tylko amatorzy.

A program Cybera nie miał być przecież profesjonalnym, skomplikowanym narzędziem (jak IDA), tylko raczej osobistym projektem szkoleniowym z C, winapi i budowy PE, mam rację? Wyszło mu to i ma prawo być z tego zadowolonym.

A mnie ciekawi co odpowiada za deassemblację, skąd wziąłeś kod? Czy sam napisałeś od podstaw?

0
cyber_pl napisał(a)

sugerujesz ze srodowisko devcpp jest archaiczne ? rozmowa tutaj o pisaniu orprogramowania w jezyku c winapi, kazdy kompilator jest dobry a trzeba zauwazyc ze srodowiska typu RAD IDE nie wchodza w gre dla mnie, brzydze sie takimi srodowiskami a w visual studio express nie chcialem pisac gdyz kod z tego srodowiska / procesu kompilacji jest zdecydowanie niezgodny z moimi oczekiwaniami.

y? nie wiem jakiego mingwa uzywasz ale jak ten z domyslnej instalki devcpp to on chyba jest tak z pare lat w plecy z tego co pamietam ;)?

0
babylonsystem napisał(a)

A mnie ciekawi co odpowiada za deassemblację, skąd wziąłeś kod? Czy sam napisałeś od podstaw?

Program mial byc prostym programem, nie cudem na zbawienie ani tez wynikiem wypocin z videoartow.

Wybralem ten engine ktory szybko radzi sobie z disasemblacja kodu:

http://beatrix2004.free.fr/BeaEngine/index1.php

cepa napisał(a)

y? nie wiem jakiego mingwa uzywasz ale jak ten z domyslnej instalki devcpp to on chyba jest tak z pare lat w plecy z tego co pamietam ;)?

Mingw radzil sobie dobrze z kompilacja c i winapi, nie wiem o co ci chodzi, zreszta im starszy kompilator w tym wypadku tym bardziej kompatybilny kod dla systemu win32. Ja nie pisza w tym sourcesie zaawansowane klasy jezyka cpp ktore bylo implementowane w najnowszym rozporzadzeniu iso (wykorzystujace nowe cechy jezyka) a kod w starym dobrym jezyku jakim jest c. Bez urazy ale kazdy kompilator Mingw poradzi sobie z kompilacja takiego kodu.

Widze ze mam tutaj miejsce do popisu, musze zasluzyc na wasze uznanie a raczej ta klotnia nie wypadlem najlepiej [;

0
cyber_pl napisał(a)

sugerujesz ze srodowisko devcpp jest archaiczne ?

Nie sugeruję, stwierdzam fakt.

kazdy kompilator jest dobry

Każda kobieta jest piękna. Każdy programista C to profesjonalista.

srodowisko te jest dobre jak kazde inne, chcecie pisac na wyzszym poziomie prosze smialo korzystajcie z RAD borlanda.

[rotfl]
Środowisko gorsze niż każde inne. I nikt Ci nie każe używać Borlanda. Ty chyba faktycznie mało wiesz, skoro takie wnioski wyciągasz.

Dev-Cpp jest używany tylko przez studentów bez własnej świadomości, którym profesór na zajęciach kazał go używać oraz samouków, którzy wyczytali o nim w jakimś kursie sprzed 8 lat.

0
somekind napisał(a)
cyber_pl napisał(a)

sugerujesz ze srodowisko devcpp jest archaiczne ?

Nie sugeruję, stwierdzam fakt.

Dev-Cpp jest używany tylko przez studentów bez własnej świadomości, którym profesór na zajęciach kazał go używać oraz samouków, którzy wyczytali o nim w jakimś kursie sprzed 8 lat.

te fakty sa nieznaczace jesli <ort>w ogóle </ort>sie do czegos odnosza, skoro piszesz w RAD miej swiadomsoc ze na nizszym poziomie niepotrzebnie dokladasz setki tysiecy instrukcji ktore bardzo opozniaja prace kazdego programu (udowodnione juz dawno i nie tylko przeze mnie, to jest zrszta logiczne VLC to katastrofa), kod wynikowy z kompilacji w mingw jest czystym kodem (moze slabo zoptymalizowanym) ale duzo szybszym i bezpieczniejeszym niz wymysly RAD, poza tym niepodoba mi sie klikanie na inspektory objektow w celu ustalenia w nich paramterow pracy (wole sam ustalac objekty i zmienne w nich na ustalenie konkretnych stanow pracy), ba korzystanie z gotowych kompomentow oraz kontrolek jest dla mnie swiadomym ponizaniem sie.

masz racje ze studentami ale i tak nie zamienil bym dobry kompialtor na kompilator komercyjny majacy tylko na celu ulatwienie pisania oprogramowania, przykro mi ale takim kodem trudno jest sie podzielic a dobrze napisany kod w c / cpp z bibliotekami gui typu crossedplatform jest duzo bardziej efektywniejszym projektem niz program napisany w borland cpp builder , c# .net badz delphi.

inni zapewne powiedza ze czas tworzenia oprogramowania = $$$ ja na to kicham jak na razie nikt mi nie placi za to, uwazam tez ze majac alternatywe mialem sluszny wybor wybrac devcpp nie przez to ze ktos mi polecach tylko dlatego ze uznalem ze kompialator z tego sorodwiska bedzie sprzyjacacy do zbudowania projektu ktory sobie zaprojektowalem.

zapewne jak bede zmuszony szybko "odjebac" projekt (jak kolega ...) to tez bym na form nalozyl 4 kontrolki i szybko wpisal 4 wlasciwosci kontrolki w inspektorze objektow, czas tworzenia programu zmala by do max 5 dni, ale ze cyber nie poscil sie na taka latwizne budowanie tego interfejsu zajelo mi 3 dni, synchronizowanie okien ze soba kolejne 2 dni reszta to implementacja PE, disasemblacja i dbanie o sterty pamieci w programie.

co do IDE edytora devcpp tez mam urazy ale co komu szkodzi edytowac sources w innym edytorze ...

jesli myslicie ze RAD jest lepszy o standardowego kompilowania sourcesu to sie mylicie, nie raz reversowalem kod wynikowy z delphi, bcb i sadze ze to szambo wsrod kodow wynikowych, wszystko bez ladu i skladu, ciagle nastepuja skoki przez co rejestr eip jest ciagle nadpisywany roznymi offsetami, jesli zmienia sie offset procesor musi oproznic kolejne rozkazow zchacowana na nowa, zadne potoki nie pomoga przy optymalizacji wykonywania takiego scierwiastego kodu [;

http://lowbyte.da.ru/index.php?pages=articles&id=246

zapewne zignorujecie moje fakty gdzy uwazacie ze nie mam autorytetu was przekonywac, z czasem moze sami do tego dojdziecie ale czasy robia sie zle, platformy net wirtualne maszyny laduajce swoj wlasny kod binarny, to wedlug mnei zla przyszlosc dla userow.

pozdrowka, btw nie czytalem zadnego kursu gdzie autor opisywal devcpp, jestem samoukiem i to utalentowanym [;

0

miałem się nie odzywać ale jednak.

Po pierwsze jeśli to międzymordzie składałeś 5 dni to pogratulować spożytkowanego czasu ... Chociaż sam napisałeś, że na $ Ci nie zależy więc czy będziesz międzymordzie powoływał do życia 5 dni czy godzinę to nie ma dla Ciebie różnicy. Inna sprawa że to międzymordzie strasznie mi się nie podoba
a) nie można powiększyć okienka!! Co w dobie 21'' monitorów i rozdzielczości rzędu 1600x1200 i większych, zmuszać usera aby się gapił w okienko 650x390 to porażka
b) otwórz plik jest z deczka nieintuicyjne
c) nie działa kółko myszy do przewijania
Ale to tylko i wyłącznie moja subiektywna ocena. Wartości merytorycznej samego programu nie ocenię bo nie mam ku temu odpowiedniej wiedzy.

Odniosę się jeszcze do Twojej tezy, że "...ze RAD jest lepszy o standardowego kompilowania sourcesu to sie mylicie...". To teraz pokaż mi 10 UŻYTKOWNIKÓW jakiegokolwiek softu, który w ogóle wie co to jest kod wynikowy. Soft ma po pierwsze działać tak jak na to wskazuje jego opis, po drugie przez to właśnie działanie ma pomóc userowi w jego pracy i po trzecie ma nie odstraszać międzymordziem. Mimo iż jestem min. programistą i wiem jak pracochłonne jest zaprojektowanie dobrego UI to mimo to (albo może przede wszystkim) jeśli po pierwszych 5-10 minutach klikania w nowym programie zaskakuje mnie on coraz to nowymi wymysłami autora odnośnie działania UI to jest skreślony.

ba korzystanie z gotowych kompomentow oraz kontrolek jest dla mnie swiadomym ponizaniem sie
a dla mnie wymyślanie koła po raz kolejny to czysty idiotyzm - możemy tak do rana

I na koniec taka uwaga - niektórzy wolą szybko zrobić ładne* i funkcjonalne UI szybko i bez stresu a zaoszczędzony czas przeznaczyć na "bebechy" programu...

    • kwestia gustu OFC
0

Perełka :D

Oprócz Ciebie nikt tu wspominał o Borlandach, VLC (cokolwiek to jest), RADach.
Nie wiem, czy wiesz, że MinGW istnieje poza Dev-Cpp i można go używać w dowolnym IDE, linii poleceń, itd. Jeśli używasz badziewnego IDE, dlatego, bo jest w nim MinGW, to faktycznie jesteś utalentowanym samoukiem :D

Fajny filozof z Ciebie, marnujesz się w tej branży :)

0
somekind napisał(a)

Perełka :D

Oprócz Ciebie nikt tu wspominał o Borlandach, VLC (cokolwiek to jest), RADach.
Nie wiem, czy wiesz, że MinGW istnieje poza Dev-Cpp i można go używać w dowolnym IDE, linii poleceń, itd. Jeśli używasz badziewnego IDE, dlatego, bo jest w nim MinGW, to faktycznie jesteś utalentowanym samoukiem :D

Fajny filozof z Ciebie, marnujesz się w tej branży :)

Widac jaki macie poziom tego forum (autor tego cytatu mysli ze user nie zna oczywistych rzeczy a jak wymienia istotne fakty to jest wysmiewany), porazka programisci piszacy tylko w net framework c# borland delphi bcb i kladacy obiekty na formie przyszlego programu (zero szacunku dla programistow piszacych srodowiska), inni za to potrafia tylko i wylacznie krytykowac (pan "..." co jak mi sie zdaje gowno potrafi, popisuje sie przy zwyklych userach), malo jest osob z ktorymi mozna podtrzymac temat.

Prosze administracje o wyczyszczenie tematu ze zbednych tresci maja one nijaki wklad do tematu watku.

0
cyber_pl napisał(a)

niepotrzebnie dokladasz setki tysiecy instrukcji ktore bardzo opozniaja prace kazdego programu (udowodnione juz dawno i nie tylko przeze mnie, to jest zrszta logiczne VLC to katastrofa), kod wynikowy z kompilacji w mingw jest czystym kodem (moze slabo zoptymalizowanym) ale duzo szybszym
Nieprawda. Wątpię żeby dało się w ogóle stwierdzić różnicę w szybkości działania programu w takim MFC - ba, kod z visuala 2008 byłby zapewne szybszy.
Kod Borlanda jest kiepski, nie kod z RAD jest kiepski. Borland po prostu kiepsko optymalizuje.
Pytanie - kogo to obchodzi? Nawet pisząc na 486, nie zauważyłbyś różnicy w normalnych zastosowaniach - gui to malutka część programu.
Niech (zgodnie z Twoją fałszywą (!) tezą) kliknięcie guzika w ręcznym kodzie to 1000 instrukcji, a w radzie 10000 (do czasu całkowitego oddania kontroli funkcjom systemowym).
Na procesorze ~2ghz (nie tyle zegar, co średnio tyle instrukcji na sekundę) czas wykonywania krótszego kodu to 500ns, a na dłuższym - 5000ns. Mówiąc inaczej - kilka dni roboty uwolniłyby aż 0.000225% mocy procesora :)
To po pierwsze. A po drugie? Twój kod jest wolniejszy.
Najszybsze jest wykorzystanie zasobów (czyli - graficznego ustawiania okien, dzięki edytorowi zasobów) i ładowanie okien stamtąd. Wymaga to mniejszej liczby wywołań od ręcznego tworzenia.
Zasoby były używane nawet w windowsie 1.0. Na 286. Gdyby były wolne, nikt by ich wtedy nie używał.

i bezpieczniejeszym niz wymysly RAD,

Nieprawda. Kod rad (masz chyba na myśli vcl) był wielokrotnie analizowany, łatany, poprawiany, był też testowany na setkach tysięcy komputerów. Twój natomiast praktycznie w ogóle.

0

jak wykonujesz setki obliczen / watkow oraz operacji na mapach bitowych to program zwalnia strasznie a ronica jest widoczna na 100% golym okiem, odpowiednik takiego kodu pisany w c poradzil by sobie duzo szybciej i wydajniej.

testowales kiedys w ogóle szybkosci pracy przy zbudowaniu dynamicznym interfejsu czy wylozonym z zasobow programu jako schemat dialogu? piepszych glupoty. podczas tego trzeba dodatkowo wladowac schemat z zasobow, ustalic jego miesce rozmiar, po czym funkcja analizuje schemat znak po znaku budujac okno / kontrolki etc.

duzo wiecej operacji niz moglbys sobie porownac z dynamicznym budowaniem takich okien.

przynajmniej z Toba (#up:) mozna porozmiawiac o tym temacie, programista powyzej (pan s.) najwidoczniej uznal moja wiedze za niewystarczajaca informuujc mnie o lini polecen konpilatora ...

0

jak nic rośnie nam następny mr olszewski

BTW nie wiem jak inne ale Opera 10 ma wbudowane sprawdzanie pisowni - jak się w szkole nie uważało to może wypadało by przeglądarkę zmienić...

0

literowki sie zdarzaja, ale co to ma do mojego wyksztalcenia ? nie badzcie smieszni przeciez.

btw:

User-Agent: Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3

widze ze wszyscy tutaj znawcy i geniusze, prosze o kasacje calego tematu i tak wystarczajaco zamieszania zrobilem [;

//edit: chciaz prosil bym jednak o zostawienie, zawsze to jakas rekompensata za wyklad wlozony do prowadzenia dyskusji (reklama programu rowniez, co badz zainteresowala sie nim kupa userow juz, thx btw za pomoc !!!).

0

porazka programisci piszacy tylko w net framework c# borland delphi bcb i kladacy obiekty na formie przyszlego programu

Porażką są programiści, którzy rozwiązują po raz n-ty problemy rozwiązane 20 lat temu, używający przedpotopowych narzędzi, i chwalący się tym na forum. Sam fakt, że żeby dodać obsługę polskich literek, musisz zmieniać pół programu, to jeden wielki WTF.
A, i zacznij przyzwyczajać się do myśli, że programowanie wysokopoziomowe jest równie trudne jak niskopoziomowe (o ile nie trudniejsze) i szczycenie się nieznajomością tego pierwszego (w tym nieumiejętnością rozkładania komponentów na formach) to wielki wstyd.

// Dopisane:
Niedbale sformułowane posty świadczą o braku szacunku dla czytających.

0
cyber_pl napisał(a)

jak wykonujesz setki obliczen / watkow oraz operacji na mapach bitowych to program zwalnia strasznie a ronica jest widoczna na 100% golym okiem, odpowiednik takiego kodu pisany w c poradzil by sobie duzo szybciej i wydajniej.

testowales kiedys w ogóle szybkosci pracy przy zbudowaniu dynamicznym interfejsu czy wylozonym z zasobow programu jako schemat dialogu? piepszych glupoty. podczas tego trzeba dodatkowo wladowac schemat z zasobow, ustalic jego miesce rozmiar, po czym funkcja analizuje schemat znak po znaku budujac okno / kontrolki etc.

A porównaj. Nie będzie obserwowalnej różnicy.
A nawet jeśli - co z tego - ta operacja wykonywana jest tylko raz...

odpowiednik takiego kodu pisany w c poradzil by sobie duzo szybciej i wydajniej.

Dlaczego C, a nie C++? Wiesz, że kod w C++ jest zazwyczaj szybszy? Głównie dzięki szablonom i funkcjom wirtualnym.

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