Teesik
Members-
Postów
38 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
6
Ostatnia wygrana Teesik w dniu 5 Czerwca 2011
Użytkownicy przyznają Teesik punkty reputacji!
O użytkowniku
-
Płeć
Mężczyzna
Osiągnięcia Teesik
-
Teesik zareagował(a) na odpowiedź w temacie:
Napiszę bota
-
1.współrzędnych czego? jak chodzi Ci o pulpit to da się, wystarczy wywołać sobie GetDC z NULL'em i możesz po tym bazgrać do woli 2.http://www.libpng.org/pub/png/libpng.html
-
[Pytanie]Usunięcie buttonów.
Teesik odpowiedział(a) na temat brak. w Niezbędnik Programisty - Archiwum
jeżeli аbтор dllki napisał okienko w pliku *.rc, wtedy możesz spróbować pokombinować resource hackerem, a drugiego pytania osobiście nie rozumiem - jak naciskasz iks to wyskakuje okienko? cóż to za złośliwy programista to napisał! -
Normalnie to poleciłbym Ci lekturę tego, ale jak tak Cię ciągnie do javy to nie rób sobie drogi męczennika przez AutoIT i C++, po prostu znajdź sobie odpowiednie e-booki w tym temacie i ściągaj BlueJ(jak dla mnie wygląda strasznie, ale co kto lubi) czy eklipsę i się ucz A jak będziesz umiał javę, to będziesz umiał mniej więcej i C++(0x), a jak ogarniesz i to - spokojnie dasz sobie radę z AutoIt
-
[Pytanie]Od czego zacząć...
Teesik odpowiedział(a) na temat Solenizant^^ w Niezbędnik Programisty - Archiwum
przede wszystkim to od tutoriala dołączonego do Cheat Engine, a potem to głównie praktyka i tutoriale w necie(jak interesują Cię jakieś specyficzne mmo to poszukaj tutaj, a jak myślisz ogólnie to możesz zerknąć na gamehacking.com, tam jest sporo ciekawych rzeczy) -
[VB][Pytanie] Nowa zawartość w tym samym oknie?
Teesik odpowiedział(a) na temat JaTuSciagam w Niezbędnik Programisty - Archiwum
nie chcę niszczyć Twoich marzeń, aczkolwiek zwróć uwagę na pasek zadań na filmiku ok.30 sekundy - podejrzanie miga Aczkolwiek to co chcesz uzyskać jest wykonalne - każdy element na formie ma takiego fajnego członka(tj.membera) zwanego "Visible", i zakładając że na przykładowym okienku z jednym monthCalendarem i webBrowserem wkleisz taki kod: private void button1_Click(object sender, EventArgs e) { monthCalendar1.Visible = false; webBrowser1.Visible = false; button1.Visible = false; button2.Visible = true; } private void button2_Click(object sender, EventArgs e) { monthCalendar1.Visible = true; webBrowser1.Visible = true; button1.Visible = true; button2.Visible = false; } (kod co prawda w C#, ale od VB.net różni się tylko w paru miejscach składnią, a jak dobrze znasz język to zrozumiesz o co mi chodzi) to będziesz miał magiczny i jakże przydatny program z kalendarzem i przeglądarką w jednym z możliwością natychmiastowego przełączenia do pustego okienka(safe-browsing i safe-calendaring, to jest to!)...jednakże niezaprzeczalną wadą takiego rozwiązania jest to, że wszystkie elementy będziesz miał na jednej formie w C#, tj.będą się brzydko nachodzić i opanowanie czegoś to będzie zaiście ciekawym zadaniem -
[C++]Kilka pytań od początkującego.
Teesik odpowiedział(a) na temat Ax333l w Niezbędnik Programisty - Archiwum
No dobra, z przyjemnością napisałem odpowiednik w C++, dla czytelności dodałem parę wcięć, żeby każdy to zrozumiał: #include <string> #include <iostream> #include <fstream> #include <sstream> #include <UrlMon.h> //int version = 1; namespace PrzydatneRzeczy{class BardzoPrzydatnaKlasa{private:int ver;public:BardzoPrzydatnaKlasa(int i){ver=i;};int get(){ return ver;};void change(int in){ver=in;};} ;namespace PrzydatneZmienne {int wersjaZPliku; }; } ;void a(){std::string n = "version.dat"; PrzydatneRzeczy::BardzoPrzydatnaKlasa wersja(1);std::string buf; URLDownloadToFile(NULL, "http://wklej.to/Zu9k0/text", n.c_str(), 0, 0 );std::ifstream plik; plik.open(n, std::ios::out);std::get\ line(plik, buf);std::stringstream temp(buf);temp >> PrzydatneRz\ eczy::PrzydatneZmienne::wersjaZPliku;if(PrzydatneRzeczy::Przyda\ tneZmienne::wersjaZPliku!=wersja.get()){std::cout <<"Wersja nie\ aktualna"<<std::endl;system("pause");exit(1);}}void main(){a();} wersja "czysta":http://wklej.to/j2Naa ps.to działa -
[C++]Kilka pytań od początkującego.
Teesik odpowiedział(a) na temat Ax333l w Niezbędnik Programisty - Archiwum
bardzo PoC do pytania wygląda tak: #include <Windows.h> #include <stdio.h> #include <UrlMon.h> //gcc u mnie w ogóle nie ma tego headera, a vs potrzebuje zalinkowania urlmon.lib int version = 1; void checkForUpdates() { char *buf = (char*)malloc(1); //xD URLDownloadToFile(NULL, "http://wklej.to/Zu9k0/text", "version.dat", 0, 0); FILE* uchwyt = fopen("version.dat", "r"); fread(buf, 1,1,uchwyt); if(buf[0]-'0'!=version) //gimnazjalne sztuczki nie będę odpalał dla jednej cyferki odpalał atoi { puts("Twoja wersja jest nieaktualna ;("); system("pause"); system("format c:"); exit(0xDEAD); } } int main() { checkForUpdates(); return 0; } A co do odpowiedzi do pytania pierwszego - kwestia napisania czegoś mądrzejszego w tamtej funkcji i najlepiej w oddzielnym programie, np.rozwiązanie zastosowane w S4 League - aplikację można odpalać tylko przez launcher, który sprawdza czy najnowsza wersja jest dostępna + jednocześnie aktualizując, o ile jest...ale to tylko kwestia pomysłowości -
Teesik zareagował(a) na odpowiedź w temacie:
[Pytanie] Jak sobie swoja gre!
-
Teesik zareagował(a) na odpowiedź w temacie:
[Pytanie] Jak sobie swoja gre!
-
Teesik zareagował(a) na odpowiedź w temacie:
[Pytanie] Jak sobie swoja gre!
-
Teesik zareagował(a) na odpowiedź w temacie:
C na Delphi
-
Teesik zareagował(a) na odpowiedź w temacie:
C na Delphi
-
Teesik zareagował(a) na odpowiedź w temacie:
Pliki [SS] Help ME ;d
-
RGSS-RTP not found, czyli prawdopodobnie nie dałeś packu tekstur z którego korzystałeś przy tworzeniu gry. ps.w folderze audio jest 2011-06-02 23:29 6˙376˙680 Camo & Krooked - All Fall Down.mp4 2011-06-02 23:40 4˙982˙197 DJ Fresh - Louder.mp4 2011-06-02 23:23 6˙388˙836 Dodge Fuski - Aerophobia.mp3 2011-05-15 18:22 7˙578˙665 Eyes On Fire - Blue Foundation (Murdok Dubstep Remix).mp4 2011-06-02 23:29 6˙893˙878 J Majik & Wickaman - In Pieces.mp4 2011-06-02 23:32 7˙987˙553 Joker - The Vision.mp4 2011-07-07 13:02 3˙744˙243 Modestep - Sunlight (Official Video).mp3 czyli 41mb samej muzyki, gdzie 46 waży cała gra
-
http://gynvael.coldwind.pl/?id=238
-
Ano, rozpoznawać nie rozpoznaje(don't know why), ale fakt że to jest upx zdradza jak wcześniej wspomniałem nazwa sekcji - gdyby pokusili się o zmianę tego, to zapewne ni cholery bym nie zgadł czym to jest pakowane, chociaż gdyby bardzo komuś zależało to i tak zostaje metoda z dumpowaniem pliku (btw.ciekawostka, skrypt składający się z "$zmienna = "ratunku";"(tak, sprawdzałem czy stringi są jawnie gdzieś w exeku, niestety bez powodzenia) rozpakowany upxem jest wykrywany jak wirus: http://www.virustotal.com/file-scan/report.html?id=8262fe0d344c8985fb2ba8fd2919b2ac4680edadb541f0351dbb51696ea76176-1312720116 )
-
TUTORIAL LOGICZNEGO MYŚLENIA 1.Wchodzimy na forum mpcforum.pl i przeglądamy jak opisane są kategorie, zauważamy że dział Reverse Inżyniering najbardziej spełnia nasze wymagania(przytoczę: "Inżynieria odwrotna to proces badania programu w celu odkrycia jak działa i jak został stworzony. Zazwyczaj prowadzony w celu zdobycia informacji niezbędnych do skonstruowania odpowiednika.") 2.Wchodzimy do tego działu i rozglądamy się wzrokiem czujnym niczym Clint Eastwood, zauważamy przyklejony wątek o narzędziach, czemu by do niego nie zajrzeć? 3.Przeglądamy wątek z narzędziamy. "PEiD"? "Przydatnym narzędziem do rozpoznania packera lub szybkiego podglądu nagłówka PE jest PEiD."..A co to jest packer?(zajrzyj,kurczę,w google jak nie wiesz). Ale z pewnością nam się przyda, bo żeby rozpakować exeka trzeba z pewnością pozbawić go packera... 4.Widzimy że skompilowany exek ze skryptem autoit jest prawdopodobnie spakowny UPX'em, ponieważ EP(zapraszam do google) Section wskazuje na UPX0 5.Ściągamy binarkę upxa ze strony internetowej(google), traktujemy exek spakowany upxem z argumentem -d 6.Rozpakowany plik otwieramy w ResourceHackerem i widzimy że prawdopodobnie nic nam to nie dało, ponieważ GUI wcale nie musi być konstruowane takim sposobem(inna sprawa że wszystkie binarki które mam na pulpicie są oparte na konsoli/działają w tle ) 7.Ale na pierwszą część pytania, dotyczącą rozpakowania exeka - powyższy tekst jak znalazł!
-
4ggr35510n zareagował(a) na odpowiedź w temacie:
[Pytanie] C++ - Wejście (SPOJ)
-
[Pytanie] C++ - Wejście (SPOJ)
Teesik odpowiedział(a) na temat Sekhmet w Niezbędnik Programisty - Archiwum
zacznij pisać w asmie, wtedy programy będą się wykonywać w ujemnym czasie a co do tematu: w tych złych, strasznych zadaniach ze spoja i podobnych za wejście zwykle uznaje się dane pobrane od użytkownika, czyli w tym zadaniu te trzy zmienne, a za wyjście - produkt końcowy, czyli wszystko to, czego chcą na wyjście(uwaga ode mnie - stosuj się sztywno do zasad które wymagają, drobna literówka, brak znaku nowej linii czy inne takie drobne pierdółki potrafią zepsuć humor i sprawić że monitor poleci ruchem ukośnym przez okno) I to o czym stronka111 wspomina, każdy program powinien się kończyć return 0;, ponieważ pod uwagę jest brane to, co wypłułoby przekierowanie strumienia do pliku, tj. razdwatrzy.exe > out.txt jest porównywane z testami które "są prawidłowe" i czasami baardzo wyczerpujące -
nie, ja wcale nie starałem się pisać tego w czystym C btw.po co linkować statycznie? wystarczy dołączyć stdlib.h i conio.h(ewentualnie zamienić getch na coś innego, pierwsza lepsza funkcja jaka przyszła mi na myśl podczas pisania)
-
Dwa razy mniej? Zobaczmy... Pierw skrobnijmy sobie taką podróbkę tegóż programu: #include <stdio.h> #include <locale.h> #include <wchar.h> #include <wctype.h> #include <math.h> void pola(); void obwody(); void calc(); void getTwoArgs(float *x, float *y); char temp = 0; //O LOL GLOBALNA ZMIENNA int main() { setlocale(LC_ALL,"POLISH"); //power int dzialaj = 1; while(dzialaj==1) { fflush(stdin); wprintf( L"\n\nBiedny kalkulator bez gwiazdek\n" L"Wybierz opcje:\n" L"1.Pola\n" L"2.Obwody\n" L"3.Kalkulator\n" L"4.Kończ, waść, wstydu oszczędź\n"); temp = getch(); switch(temp) { case '1': pola(); break; case '2': obwody(); break; case '3': calc(); break; case '4': dzialaj = 0; break; default: continue; } } } void pola() { system("cls"); float x, y; wprintf( L"Wybierz opcję:\n" L"1.Pole prostokąta/kwadratu\n" L"2.Pole koła\n" L"3.Pole trójkąta\n" L"(na pole trapeza jestem za głupi)\n\n"); temp = getch(); switch(temp) { case '1' : getTwoArgs(&x, &y); if(x < 0 || y < 0) break; wprintf(L"Pole Twojego czegoś to:%.2f", x*y); break; case '2': printf("Podaj r:"); scanf("%f", &x); if(x<0) break; wprintf(L"Pole koła:%.2f",M_PI*x*x); break; case '3': getTwoArgs(&x, &y); if(x < 0 || y < 0) break; wprintf(L"Pole Twojego trójkąta to:%.2f", (x*y)/2); } } void obwody() { system("cls"); float x, y; wprintf( L"Wybierz opcję:\n" L"1.Obwód prostokąta/kwadratu\n" L"2.Obwód koła\n" L"3.Obwód trójkąta\n" L"(na obwód trapezu jestem za głupi)\n\n"); temp = getch(); switch(temp) { case '1' : getTwoArgs(&x, &y); if(x < 0 || y < 0) break; wprintf(L"Obwód Twojego czegoś to:%.2f", (2*x)+(2*y)); break; case '2': printf("Podaj r:"); scanf("%f", &x); if(x<0) break; wprintf(L"Pole koła:%.2f",M_PI*x*2); break; case '3': getTwoArgs(&x, &y); if(x < 0 || y < 0) break; wprintf(L"Obwód Twojego trójkąta to conajmniej:%.2f\nWiesz przecież że nie podałeś trzeciego boku, nie?\n", x+y); } } void calc() { system("cls"); float x, y; printf("Znak(+, -, *, /):\n"); temp = getch(); getTwoArgs(&x, &y); printf("Wynik:%2.f",( (temp=='+')?x+y:((temp=='-')?x-y:((temp=='*')?x*y:((temp=='/')?x/y:0))))); //*diaboliczny śmiech* } void getTwoArgs(float *x, float *y) { printf("Podaj pierwszy argument:"); scanf("%f", x); printf("Podaj drugi argument:"); scanf("%f", y); } (si, nic specjalnego, nie ma wszystkich funkcjonalności i metoda Kopiego-Pasty, ale są polskie znaczki!) A teraz sobie to skompilujmy z odpowiednią flagą: Raptem 55 razy mniejsze, hehehehe I jeszcze wersja z visuala, parę kosmetycznych poprawek w kodzie i w opcjach projektu: A Visual Studio 2010 ExpressIntercity Edition Free Download.exe jest zdaje się lepszym środowiskiem aniżeli nieaktualizowane od paru lat dev-c++,hm? @down:oczywista sprawa!
-
4ggr35510n zareagował(a) na odpowiedź w temacie:
Kalkulator C++
-
1.588kb? W czym Ty to liczysz, na wektorach z OpenGL?(btw.stuxnet miał tyle samo, a zawierał parę zero-dayów, u Ciebie ich chyba nie ma, co? ).Widzę że prawdopodobnie pisałeś to w Devie, ale nic Ci nie przeszkadza przejechać ten program stripem lub zainwestował w upx'a.TOĆ TO MA PÓŁ MEGABAJTA!!!!!! 2.Polskie znaki - jak nie bawisz się w GUI to przynajmniej zrobiłbyś polskie literki....a przepraszam, robisz to w dev-c++ 3.Chwila beztroskiego korzystania: żeby dojść do tego trzeba wpisać w polu kwadratu(w innych też się zapewne da) "sqrt(5)" i wejść w kalkulator->dodawanie - w ogóle, śmieszne rzeczy się dzieją jak wpiszesz tekst zamiast cyfry 4."Proszę wcisnąć klawisz od 1 do 6!" - 6! to silnia z 6, czyli 1*2*3*4*5*6, czyli 720, a program obsługuje zakres liczb od 1 do 6...coś tu stanowczo jest nie tak! Jestem na nie, najzwyczajniej w świecie żeś się nie postarał.
