-
Posts
18725 -
Joined
-
Last visited
-
Days Won
706
Everything posted by Nytro
-
Call API Function Credits to Cobein Declare Sub RtlMoveMemory Lib "kernel32" (dest As Any, src As Any, ByVal L As Long) Declare Function CallWindowProcA Lib "user32" (ByVal addr As Long, ByVal p1 As Long, ByVal p2 As Long, ByVal p3 As Long, ByVal p4 As Long) As Long Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long Declare Function LoadLibraryA Lib "kernel32" (ByVal lpLibFileName As String) As Long Function CallApiByName(ByVal sLib As String, ByVal sMod As String, ParamArray Params()) As Long On Error Resume Next Dim lPtr As Long Dim bvASM(&HEC00& - 1) As Byte Dim I As Long Dim lMod As Long lMod = GetProcAddress(LoadLibraryA(sLib), sMod) If lMod = 0 Then Exit Function lPtr = VarPtr(bvASM(0)) RtlMoveMemory ByVal lPtr, &H59595958, &H4: lPtr = lPtr + 4 RtlMoveMemory ByVal lPtr, &H5059, &H2: lPtr = lPtr + 2 For I = UBound(Params) To 0 Step -1 RtlMoveMemory ByVal lPtr, &H68, &H1: lPtr = lPtr + 1 RtlMoveMemory ByVal lPtr, CLng(Params(I)), &H4: lPtr = lPtr + 4 Next RtlMoveMemory ByVal lPtr, &HE8, &H1: lPtr = lPtr + 1 RtlMoveMemory ByVal lPtr, lMod - lPtr - 4, &H4: lPtr = lPtr + 4 RtlMoveMemory ByVal lPtr, &HC3, &H1: lPtr = lPtr + 1 CallApiByName = CallWindowProcA(VarPtr(bvASM(0)), 0, 0, 0, 0) End Function Example: lRet = CallApiByName("urlmon", "URLDownloadToFileW", 0, StrPtr("http://server.com/test.exe"), StrPtr("C:\test.exe"), 0, 0) lRet = CopyFile("C:\test.exe", "c:\test2.exe", False) Function CopyFile(src As String, dest As String, Optional FailIfDestExists As Boolean) As Boolean Dim lRet As Long lRet = CallApiByName("kernel32", "CopyFileW", StrPtr(src), StrPtr(dest), VarPtr(FailIfDestExists)) CopyFile = (lRet > 0) End Function msgbox GetSysDir Function GetSysDir() As String On Error Resume Next Dim Location(512) As Byte Call CallApiByName("kernel32", "GetSystemDirectoryW", VarPtr(Location(0)), 512) GetSysDir = Left$(Location, InStr(Location, Chr$(0)) - 1) End Function Call CallApiByName("kernel32", "Sleep", 1000) Call CallApiByName("shell32", "ShellExecuteW", 0, 0, StrPtr("C:\file.exe"), 0, 0, 0)
-
http://rstcenter.com/forum/search.php?do=finduser&u=18609 PS: Fara offtopic si "l0l"-uri.
-
Windows 7 va permite downgrade la Windows XP de Catalin Calciu | 9 aprilie 2009 O decizie foarte interesanta a venit din partea celor de la Microsoft, o decizie care va bucura multa lume, si va surprinde la fel de multi oameni. La putin timp inaintea lansarii oficiale a lui Windows 7 ei tocmai au anuntat ca vor permite downgrade-ul nu numai pana la Windows Vista, ci chiar si pana la Windows XP. Decizia este destul de ciudata pentru ca in acelasi timp cu Windows Vista, cei de la Microsoft, au declarat in nenumarate randuri ca intentioneaza sa opreasca orice support pentru XP, lansat tocmai in anul 2001. Un purtator de cuvant al Microsoft a declarat in acelasi timp ca vanzarile de XP vor fi intrerupte in anul 2010.
-
Microsoft concureaza direct cu Google de Catalin Calciu | 24 martie 2009 Daca pana acum ne obisnuisem ca cei de la Google sa scoata tot felul de solutii care sa concureze produsele de la Microsoft iata ca a venit momentul in care acestia din urma atenteaza la suprematia celor de la Goole, in acest caz in ceea ce priveste serviciul lor de harti. Microsoft vor lansa GeoSynth ce va face exact acelasi lucru ca si Google Street View, adica poze HD plasate de utilizatori vor fi conectate cu date geografice pentru a da posibilitatea explorarii a cat mai multor locuri. De asemenea GeoSynth va fi cel mai probabil interconectat cu Virtual Earth, si va suporta Silverlightin cursul acestei veri. O alta declaratie interesanta a celor de la Microsoft spune ca hartile se vor incarca de noua ori mai repede in Internet Explorer 8 si de cinci ori mai repde in Google Chrome, decat solutiile prezente in acest moment.
-
Vista – cota de piata 30% de Ionut Mares | 24 martie 2009 Microsoft Windows Vista este disponibil pe piata de mai bine de doi ani si cu toate acestea, cota de piata este doar de 30%. In continuare, Windows XP ramane lider atat in randul produselor Microsoft cat si in comparatie cu alte sisteme de operare disponibile publicului. Chiar si asa, Windows XP a inceput sa piarda teren iar cota actuala de piata se situeaza putin peste 57%. Potrivit StatCounter Information, Vista este cel mai popular sistem de operare in randul celor care-si schimba computere cu unele noi precum si in randul celor care utilizeaza doar in activitati specifice timpului liber. De asemenea, StatCounter a precizat ca Windows XP a pierdut cotat de piata mult prea rapid iar Vista a castigat cateva procente. In ceea ce priveste piata Americana, s-a remarcat si un trend crescator al utilizatorilor care au trecut la de XP direct la Max OS X in detrimentul Vista. Astfel, cota de piata a sistemelor Apple a crescut de la 6.6% la 8.3% in perioada Ianuarie – Martie 2009. Ionut.Mares@hit.ro
-
Filme complete gratuit pe Youtube de Ionut Mares | 10 aprilie 2009 Sony a confirmat in acesta saptamana zvonurile potrivit carora poarta discutii cu reprezentatii Youtube in vederea postarii online a unor filme de lung metraj. Daca negocierile vor avea succes, Sony Pictures va deveni primul mare producator de filme de pe piata americana care va oferi in premiera gratuit titluri celebre de filme in varianta full. Acestea vor avea evident si calupuri publicitare pentru a acoperi eventualele costuri. Daca din partea celor de la Sony avem confirmarea negocierilor, reprezentatii Youtube au refuzat sa dea detalii. In prezent, Sony Pictures are postate peste 60 de filme complete pe site-ul Crackle.com. Un alt mare gigan din industira cinematrografica, MGM este deja prezent pe Youtube dar cu clipuri sau scene limitate ca timp. Probabil, aceasta este singura varianta prin care producatorii nord americani vor reusi sa tempereze pirateria. In loc sa lase utilizatorii sa downloadeze copii ilegale, mai bine le ofera gratuit iar banii si vor incasa din publicitatea prezentata in timpul filmelor.
-
Microsoft: 97% din mail-uri sunt spam de Bianca Dinu | 9 aprilie 2009 Un numar realmente imens din totalul de e-mailuri trimise la nivel mondial reprezinta reclame si anunturi spam pentru diferite produse dintre care predomina cele farmaceutice si medicamentoase. Potrivit unui raport realizat de Microsoft ce priveste securitatea pe internet, 97% din toate e-mailurile trimise in intreaga lume contin atasamente virusate, ce pot dauna sistemului utilizatorului, cele mai multe fiind transmise prin fisierele Office sau PDF. De asemenea, raportul a aratat ca rata globala a masinilor infectate fata de cele nevirusate prin spam este de 8,6 la 1.000 de computere. Tarile cu cea mai mare rata de infectare prin e-mail sunt Rusia si Brazilia, urmate indeaproape de Turcia, Serbia si Muntenegru, tipurile de spam si malware fiind diferite de la o tara la alta. In Romania, raportul dintre computerele infectate si cele neinfectate este de aproximativ cinci computere din 1000. Raportul Microsoft arata situatia e-mailurilor prin care se trimite spam si malware pentru cea de-a doua jumatete a anului 2008 si ofera date despre procentul de calculatoare infectate cu programe malitioase in toate tarile si regiunile lumii. De asemenea, prin acest raport, Microsoft subliniaza inca o data importanta actualizarii programelor si a sistemelorde operare, pentru a fi mai putin vulnerabile in ceea ce priveste infectarea cu programe malitioase.
-
Firefox pierde 18 milioane de utilizatori anual de Alex Hanea | 9 aprilie 2009 Mozilla a descoperit recent ca, zilnic, 50.000 de oameni nu instaleaza Firefox din cauza unor probleme pe parcursul instalarii, desi au descarcat fara probleme pachetul de software. Cele 50.000 de renuntari de instalare a Firefox se tradus in 18 milioane anual, ceea ce inseamna destul de mult. A imbunatati modalitatea de instalare astfel incat sa satisfaca si sa convinga 3000 de utilizatori din cei 50.000 se traduce, in mai putine cifre, intr-un procent de 0,2% din piata, deloc neglijabil. Astfel, Mozilla a investit putin timp si atentie pentru a analiza aceasta problema si, in urma unui sondaj, a identificat cateva probleme. 42% dintre cei care au raspuns la intrebari au afirmat ca au renuntat la instalarea Firefox din cauza unei instalari anterioare, neinchise, in timp ce 41% au sustinut ca nu aveau drepturile necesare pentru instalare. 7% au fost prea confuzi din cauza upgrade-ului. Raspunsurile i-au determinat pe cei de la Mozilla sa lucreze la o modalitate mai simpla de instalare decat cea de pana acum. Mozilla sufera cu atat mai mult cu cat rivalii sai au modalitati mai simple si mai rapide de instalare. Concluzia sondajului si cea rezultata dupa analiza situatiei este ca procesul de instalare conteaza, fiind masurat, mai exact in cateva milioane de utilizatori pierduti sau castigati.
-
2009 mai amenintator din cauza atacurilor pe Internet de Vlad Matei | 9 aprilie 2009 Romania gazduieste la ora actuala cateva mii de hackeri care provoaca pagube materiale de milioane de dolari in fiecare luna. Furtul de baze de date (date personale, carti de credit) precum si atacuri virulente de phishing sunt principalele activitati a multora dintre hackerii zilelor noastre. "In octombrie am estimat ca activitatea de phishingul va creste de cel putin 10 ori. In 2009, si productia de malware se va mentine pe o curba ascendenta, exploatand aceleasi functionalitati Web prin intermediul troienilor, dar si via amenintarilor de tip spyware si rootkit. Cu siguranta, multe dintre amenintarile existente vor suferi mutatii semnificative si upgrade-uri, mai ales in ceea ce priveste mecanismele de camuflare sau automatizarea procesului de distribuire", a declarat Alexandru Cosoi, Senior Researcher, BitDefender. Atacurile anului 2009 se vor concentra de asemenea si pe exploatarea vulnerabilitatilor, o atentie deosebita fiind acordata ratei crescute de dezvoltare si de extindere a site-urilor Web 2.0. Din cauza crizei financiare, multi oamenii specializati in industria IT vor fi disponibilizati si vor cauta metode alternative de venit, putandu-se indrepta cu usurinta catre actiuni ilicite de tipul malware si phishing. Companiile vor investi mai putin in securitate din aceleasi considerente. Astfel, combinatia acestor doi factori nu face dect sa sporeasca numarul atacurilor de phishing si in special, a phishingului targhetat, datorita informatiilor publice despre utilizatori care se pot gasi cu usurinta acum pe retelele sociale. "Companiile care activeaza in mediul online vor trebui sa acorde in acest an un plus de atentie aplicatiilor web si site-urilor pe care le dezvolta. Infractorii vor incerca sa speculeze orice vulnerabilitate prezenta in aplicatiile web pentru a intra in posesia informatiilor referitoare la utilizatori (nume, conturi, parole, adrese de email) pentru a le folosi ulterior la activitati de tip phishing sau spam. Auditarea periodica a website-urilor si aplicatiilor web va fi esentiala pentru companiile din mediul online", au concluzionat cei de la F5, organizatorii conferintei de securitate Web 2.0. Sursa: BitDefender
-
copiluatomik, ban! Pentru mai multe.
-
Ban! Ca sa nu imi fac nervi pe viitor.
-
Mda, nenea de pe OTV parea extrem de credibil. De asemenea, Chiorete din "Trasniti din NATO" cu cutremurele sale in direct si in reluare pare foarte credibil. Un cutremur nu se prea poate preveni cu mai mult de 5-10 minute.
-
Nu vad nici un keylogger, are decat cateva functii minore.
-
Ce dragut, o sa imi ia decat 2 ore pana verifica toate porturile. Totusi, stie si el sa se opreasca la 65535?
-
noidee: Da, ai dreptate, ar fi recomandat ca memoria sa fie eliberata. De exemplu, in VB6, mai folosesc CSocketMaster pentru a asculta pe un port. Si daca nu inchid socketul, la urmatoarea rulare a programului, nu mai pot asculta pe acel port. Nu folosesc clase pentrun ca nu prea ma pricep.
-
Am auzit ca sunt multe cazuri de acel gen. Si am auzit si ca cetatenia romana o obtin destul de usor. In fine, nu am destule informatii, eu comentez din auzite, deci mai bine ma abtin.
-
Sunt pentru clasa a XI-a, profil mate-info, eu am 4 ore de info pe saptamana. noidee: Da, dar nu cred ca e necesar. Adica, practic, sincer, mi se pare o prostie. Resursele sunt dezalocate automat, iar programul isi incheie executia mai rapid, fara alte instructiuni. Ma mai jucam pe la scoala cu: double p; while(p = new double) { } Dar la fel, cand se umplea memoria se "busea", cum imi place mie sa zic, dar memoria era eliberata.
-
Nu se merita sa discuti despre comunistii aia. PS: Nimeni nu ar ce face cu posturile, poate pe rromania ala se primeste admin la un numar de posturi, aici nu primesti nici _|_.
-
No comment. Sunt de parere ca varsta la care parintii ar putea sa le cumpere un calculator odraslelor este la minim 16 ani.
-
Sunt cam jegosi moldovenii, jumatate din ei si-au luat cetatenie romana pentru ca am intrat in UE, ca sa nu le mai trebuiasca vize. Oricum, o fi Romania cu o fi, dar ei sunt si mai jos. Sa se duca in Rusia, din partea mea, Rep. Moldova e o parte din Rusia nu din Romania. _|_ Rep. Moldova.
-
Pai am functia sterge nod. In rest, toate functiile creaza un nod ( pointer ) asta e scopul lor. Daca ii sterg nu mai am nici o lista.
-
Pai da, dar nu orice programel simplu, astea sunt cam toate functiile care se pot face cu liste liniare dublu inlantuite. Bine, teoretic, adica sunt cele mai importante.
-
Ce am facut la scoala pe la ora... : /************************** (c) Popescu Ionut 2009 **************************/ #include<iostream.h> struct Nod { int inf; Nod * leg1, * leg2; } * prim1, * ultim1; int i, n, x, tip, y; // Functia adauga un nod in fata primului void adaugare_inainte(int x, Nod *& prim) { Nod * p; p = new Nod; p -> inf = x; p -> leg1 = NULL; p -> leg2 = prim; prim = p; } // Functia adauga un nod dupa ultimul void adaugare_dupa(int x, Nod *& ultim) { Nod * p; p = new Nod; p -> inf = x; p -> leg1 = ultim; p -> leg2 = NULL; ultim = p; } // Functia afiseaza lista de la inceput void afisare_inceput(Nod * prim) { Nod * p; p = new Nod; p = prim; cout<<"Afisare de la inceput\n------------------------------------\n"; while(p) { cout<<p -> inf<<" ( "<<p -> leg2<<" )"<<"\n"; p = p -> leg2; } cout<<"------------------------------------\n"; } // Functia afiseaza lista de la sfarsit void afisare_sfarsit(Nod * ultim) { Nod * p; p = new Nod; p = ultim; cout<<"Afisare de la sfarsit\n------------------------------------\n"; while(p) { cout<<p -> inf<<" ( "<<p -> leg1<<" )"<<"\n"; p = p -> leg1; } cout<<"------------------------------------\n"; } // Functia introduce un nod de valoare x, dupa nodul cu valoarea y void inserare_dupa(int x, int y, Nod * prim) { Nod * p, * q; p = new Nod; q = new Nod; p -> inf = x; q = prim; while(q -> inf != y && q != NULL) { q = q -> leg2; } p -> leg1 = q; p -> leg2 = q -> leg2; } // Functia introduce un nod de valoare x, inainte de nodul cu valoarea y void inserare_inainte(int x, int y, Nod * prim) { Nod * p, * q; p = new Nod; q = new Nod; p -> inf = x; q = prim; while(q -> inf != y && q != NULL) { q = q -> leg2; } p -> leg1 = q -> leg1; p -> leg2 = q; } // Main-ul int main() { prim1 = new Nod; ultim1 = new Nod; cout<<"Noduri : "; cin>>n; cout<<"\nSelectati tipul de adaugare: \n1) Dupa ultimul element\n2) Inaintea primului element\n\nTip : "; cin>>tip; cout<<"\n------------------------------------\n"; cout<<"Nod 1 : "; cin>>x; prim1 -> inf = x; prim1 -> leg1 = NULL; prim1 -> leg2 = NULL; ultim1 = prim1; for(i = 2; i <= n; i++) { cout<<"Nod "<<i<<" : "; cin>>x; if(tip == 2) adaugare_inainte(x, prim1); else adaugare_dupa(x, ultim1); } cout<<"\n------------------------------------\n\n"; cout<<"Selectati tipul de afisare: \n1) De la inceput\n2) De la sfarsit\n\nTip : "; cin>>tip; if(tip == 2) afisare_sfarsit(ultim1); else afisare_inceput(prim1); // Introducem un nod dupa o valoare cout<<"\n------------------------------------\n"; cout<<"Introduce un nod dupa valoarea : "; cin>>y; cout<<"Valoare de introdus : "; cin>>x; inserare_dupa(x, y, prim1); afisare_inceput(prim1); // Introducem un nod inainte de o valoare cout<<"\n------------------------------------\n"; cout<<"Introduce un nod inainte valoarea : "; cin>>y; cout<<"Valoare de introdus : "; cin>>x; inserare_dupa(x, y, prim1); afisare_inceput(prim1); return(0); } Pastebin: http://pastebin.com/f5f6c720b Alta versiune ( nu mai stiu, cred ca e mai noua ) #include<iostream.h> struct Nod { int inf; Nod * legs, * legd; } * prim, * ultim; int i, n, x, y; void adaugare_inainte(int x) { Nod * p; p = new Nod; p -> inf = x; p -> legs = NULL; p -> legd = prim; prim -> legs = p; prim = p; } void adaugare_dupa(int x) { Nod * p; p = new Nod; p -> inf = x; p -> legd = NULL; p -> legs = ultim; ultim -> legd = p; ultim = p; } void inserare_dupa(int x, int y) { Nod * p, * q; p = new Nod; p -> inf = x; q = prim; while(q -> inf != y && q -> legd) { q = q -> legd; } p -> legd = q -> legd; q -> legd = p; p -> legs = q; } void inserare_inainte(int x, int y) { Nod * p, * q; p = new Nod; p -> inf = x; q = prim; while(q -> inf != y && q -> legd) { q = q -> legd; } p -> legd = q; p -> legs = q -> legs; q -> legs -> legd = p; q -> legs = p; } void stergere_nod(int x) { Nod * p; p = prim; int g = 1; while(p) { if(p -> inf == x) { p -> legs -> legd = p -> legd; p -> legd -> legs = p -> legs; delete(p); g = 0; break; } p = p -> legd; } if(g) cout<<"Nodul nu a fost gasit\n\n"; } void afisare_inceput() { Nod * p; p = prim; cout<<"Afisare de la inceput : \n"; cout<<"\n-------------------------------\n"; while(p) { cout<<p -> inf<<" ( "<<p -> legs<<" ) ( "<<p -> legd<<" ) \n"; p = p -> legd; } cout<<"\n-------------------------------\n"; } void afisare_sfarsit() { Nod * p; p = ultim; cout<<"Afisare de la sfarsit : \n"; cout<<"\n-------------------------------\n"; while(p) { cout<<p -> inf<<" ( "<<p -> legs<<" ) ( "<<p -> legd<<" ) \n"; p = p -> legs; } cout<<"\n-------------------------------\n"; } void meniu() { int optiune; cout<<"Alege o optiune : \n\n"; cout<<"1) Adaugare nod la inceput\n"; cout<<"2) Adaugare nod la sfarsit\n"; cout<<"3) Inserare nod dupa o valoare\n"; cout<<"4) Inserare nod inainte de o valoare\n"; cout<<"5) Stergere nod\n"; cout<<"6) Afisare de la inceput\n"; cout<<"7) Afisare de la sfarsit\n"; cout<<"8) Iesire\n"; cout<<"Optiunea selectata : "; cin>>optiune; cout<<"\n-------------------------------\n"; switch(optiune) { case 1: cout<<"Valoare de introdus ( inainte ) : "; cin>>x; adaugare_inainte(x); cout<<"\n-------------------------------\n"; break; case 2: cout<<"Valoare de introdus ( dupa ) : "; cin>>x; adaugare_dupa(x); cout<<"\n-------------------------------\n"; break; case 3: cout<<"Valoare de inserat ( dupa ) : "; cin>>x; cout<<"Valoarea dupa care sa se introduca : "; cin>>y; inserare_dupa(x, y); cout<<"\n-------------------------------\n"; break; case 4: cout<<"Valoare de inserat ( inainte ) : "; cin>>x; cout<<"Valoarea inainte de care sa se introduca : "; cin>>y; inserare_inainte(x, y); cout<<"\n-------------------------------\n"; break; case 5: cout<<"Stergere nod de valoare : "; cin>>x; stergere_nod(x); cout<<"\n-------------------------------\n"; break; case 6: afisare_inceput(); break; case 7: afisare_sfarsit(); break; case 8: exit(0); break; default: cout<<"Optiunea selectata nu exista\n\n"; cout<<"\n-------------------------------\n"; } meniu(); } int main() { prim = new Nod; cout<<"Valoarea primului nod :"; cin>>x; // Crearea primului nod care e si ultimul prim -> inf = x; prim -> legs = NULL; prim -> legd = NULL; ultim = prim; meniu(); return(0); } Pastebin: http://pastebin.com/d14e11198 Nu am stat sa comentez fiecare linie de cod.
-
[VB6] Source Code Pack Size: 156 MB Archived: 101 MB Screenshot: Download: http://www.netdrive.ws/162362.html Password: www.rstcenter.com Mirror: http://www.sendspace.com/file/e0je7d Password: RST Please delete any executable.
-
Hehe, binisor dupa atata timp: http://scanner.novirusthanks.org/index.php?session=29370249719686967658892363916460543366671 Nod32 v4, update la zi nu il gaseste. Testul a fost facut pe un server de Poison Ivy