Jump to content
vladiii

Registrii in Visual Basic+Tips&Tricks

Recommended Posts

Cateva smecherii in Visual Basic

Salut! Desi sunt incepator si eu in Visual Basic, m-am gandit sa scriu acest mic tutorial. Chiar daca nu este cine stie ce de el, macar incerc sa fac ceva bun pentru RST, forum pe care majoritatea vin doar sa invete (si nici macar nu au perseverenta de a invata ceva ca lumea, doar Y!Messenger si Flood sa dea ? ). RST nu mai este ce a fost, nu vreau sa jignesc pe nimeni, dar asta este! Respect deosebit pentru Slick (gg man ;) ). Inca ceva, cum o zis si dizzy, cum ca tutorialul lui nu are rost, deoarece tot ce a scris el gasesti si pe internet, parerea mea, frate, orice tutorial este binevenit si consider ca oricine are ceva de invatat din el ? Sa trecem la treaba!

Despre Registrii

Ce sunt registrii? Registrii sunt fisiere in care se afla multe dintre setarile Windowsului si ale anumitor programe. Spre exemplu, daca dorim ca My Computer sa se afiseze pe desktop, un key din registrii ia valoare 0 (fals-adica sa nu afiseze pe desktop iconita) sau 1(true, adevarat- afiseaza pe desktop iconita).

Si in Visual Basic exista functii de modificare a registriilor si de scriere a unor noi keyuri. Pentru a scrie in registrii in Visual Basic este necesar un modul care trebuie adaugat la program. Un modul se adauga ca in exemplul urmator (exemplul este dat pentru Visual Basic 6.0 ): Project(Alt+p) - Add Module(Alt+m) – Existing si apoi selectati modulul care vreti sa fie adaugat ? Va recomand sa folositi urmatorul modul:


[url]ftp://cbmc.ro/samples/vb6/TBRegistry.bas[/url]

Modulul este facut de un prieten foarte bun. Ok, acum poate va intrebati cum scrieti in registrii ? Ca sa va faceti o idée despre cum sunt structurati registrii si cum “arata” ei, intrati in CMD si scrieti: regedit . Sa continuam.

Daca va uitati un pic in modulul adaugat (si aveti cat de cat habar de Visual Basic) o sa vedeti ca pentru registrii din HKEY_CLASSES_ROOT se foloseste “codul”: &H80000000 , pentru cei din HKEY_LOCAL_MACHINE se foloseste: &H80000002. In fine, va uitati pe acolo si deduceti :)

Acum sa vedem un exemplu concret:


RegWrite "SOFTWARE\Microsoft\Windows\CurrentVersion\Run\", "myapp", "c:\myapp.exe", &H80000002

Acest mic rand de cod, scrie la startup programul C:\myapp.exe cu numele myapp. El scrie in registrul cu adresa:


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\

Care este sintaxa de scriere in registrii? RegWrite “adresa registrului”, “altceva”, “altceva2”, &H8000000*. Sa consideram un alt cod care scrie in registrii un nou status la Y!Messenger (Atentie! Daca scrie in registrii noul status, asta nu inseamna ca messengerul va afisa dupa scriere acel status; pentru aceasta este nevoie de un cod mai complicat pe care nu il voi explica/prezenta in acest tutorial).


name = GetString(HKEY_CURRENT_USER, "Software\Yahoo\Pager", "Yahoo! user id")
Call SaveString(HKEY_CURRENT_USER, "Software\Yahoo\Pager\profiles\" + name + "\Custom Msgs", 1, status)

Codul acesta functioneaza doar daca aveti optiunea Remember ID&Password activate la messenger. Optiunea status (de la sfarsitului codului de mai sus) reprezinta statusul care doriti a fi scris in registrii (acesta poate fi introdus intr-un textbox sau definit inainte ca o variabila de tip string).

Acum sa analizam un pic functia RegRead. Sa consideram urmatorul exemplu:


MsgBox RegRead("SOFTWARE\Microsoft\Windows\CurrentVersion\Run\", "Cmaudio", &H80000002)

Acest cod afiseaza Data corespunzatoare key’ului Cmaudio din locatia de mai sus. Acum sa facem alt mic cod, care afiseaza URL pentru tutoriale specifice Y! Messenger:


MsgBox RegRead("Software\Yahoo\pager\YUrl", "Tutorials", &H80000001)

Acum sa vedem care a fost ultimul status pe care l-ati avut pe Y!Messenger. Folosim umatorul cod:


MsgBox RegRead("Software\Yahoo\pager\profiles\idultaudemess\Custom Msgs\", "1", &H80000001)

Pentru incepatori este foarte de ajuns !

Cateva Tips&Tricks

Am sa va prezint cateva secvente de cod (utile, zic eu), care poate o sa va ajute in viata de zi cu zi ?

1) Urmatorul cod face invizibil programul (sau formul, dupa caz) si el, desi ruleaza, nu este present pe desktop (doar in Task Manager si Processes):


NumeForm.Hide

2) Acest cod face invizibila aplicatia si in Task Manager (in curand o sa public un cod care o sa faca aplicatia invizibila si in Processes):


App.TaskVisible = False

3) Codul acesta multiplica aplicatia intr-o locatie specificata de dumneavoastra, in exemplu am ales C:\Windows, cu numele server.exe


FileCopy App.EXEName & ".exe", "C:\Windows\server.exe"

Cam atat pentru azi! Bafta!

Pentru varianta in format .doc, incercati sa o downloadati de aici:


[url]http://rapidshare.com/files/34413437/VB_tutorial.doc.html[/url]

Tutorialul este adresat incepatorilor, desi nu cred ca o sa il cieasca nimeni, astept pareri :)

Vladiii 2007

Link to comment
Share on other sites

multumesc mult vladiii... ai un "10" de la mine :P

faza cu "SOFTWARE\Microsoft\Windows\CurrentVersion\Run\" o stiam pt ca am facut un server de trojan ;)

faza cu statusul messengerului nu o stiam ;)

fazele de la Tips & Tricks cred ca le stiu mai multi de aici!

oricum ai facut un tutorial foarte bun si interesant pt incepatori ca mine :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...