Oletko koskaan miettinyt mitä on niiden tähdillä täytettyjen salasana kenttien sisällä. Tällä ohjelmalla saat ne näkyviin. Elikkä liikutat vain hiirtä salasana kentän kohdalle niin salasana ilmestyy formille. Tosin ohjelma näyttää myös jokaisen elementin nimen eli katso tarkkaan että osoitat juuri salasana kenttää. Tee formille timer(Timer1), TextBox(Text1)
'Salasanan paljastin / tekstin näyttäjä
'T: Solof
Private Declare Function GetCursorPos Lib "user32" (ByRef lpPoint As POINT) As Long
Private Declare Function WindowFromPoint Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function sendmessagebystring Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) As Long
Private Const WM_GETTEXT = &HD
Private Const WM_GETTEXTLENGTH = &HE
Private Type POINT
x As Long
y As Long
End Type
Dim CursorPosition As POINT
Private Sub Form_Load()
Timer1.Interval = 100 'asetetaan ajastin
Timer1.Enabled = True
Form1.ScaleMode = 3 'scalemode = pixel
Form1.Width = 6585: Form1.Height = 975 'reguloidaan pituudet kaikissa elementeissä
text1.Top = 8: text1.Left = 0
text1.Height = 22: text1.Width = 385
Form1.Caption = "Osoita hiirellä salasana kenttää"
End Sub
Private Sub Timer1_Timer()
Dim Pituus As Long, Sana As String, IKkuna As Long
GetCursorPos CursorPosition 'Otetaan kursorin paikka
IKkuna = WindowFromPoint(CursorPosition.x, CursorPosition.y) 'Haetaan hwnd kursorin paikasta
Pituus = SendMessage(IKkuna, WM_GETTEXTLENGTH, 0, 0) 'Haetaan Tekstin pituus elementistä johon ositetaan hiirellä
Sana = String(Pituus, 0) 'määritellään string muuttujan pituus muistiin
sendmessagebystring IKkuna, WM_GETTEXT, Pituus + 1, Sana 'otetaan tekstitys valitusta elementistä
text1.Text = Sana 'liitetään se textbox1:een
End SubJo viisi hienoa koodia peräkkäin :)
Miksi olet deklaroinut saman funktion (SendMessageA) kaksi kertaa eri nimillä? Miksi CursorPosition on globaali?
Ihan Ok vinkki jokatapauksessa.
Hyödyllinen :)
aika kone tuo solof...
Siis ottaako toi sala sanan mist tahansa ikkunast näytö?
Voiskoha joku pistää valmiin exen tuleen mulle ku ei oo vbeet?
Heh, kasku et vääntäny sellast minkä löytää esim. astalavistast et ettii toimivan salasanan mihin tahansa salasana boxiin ;-)
1337! Tätä pitää kokeilla ens kerran kun oon Wintoosassa!
Juu Siellä tosiaan on 2 kertaa sama funktio, ainoa ero funktioiden välillä on se että sendmessagebystring palautta lparm:in arvon merkkijonona. Jostain syystä toi koodi ei ottanu koulun koneilla tietoa kaikista boxeista. Saattaa olla että uusimmissa widowseissa on joku suojaus...
http://pp.kpnet.fi/blaze/temp/salasana.rar
Tuossa käännettynä Ollille ja miksei muillekin.
Eipä tosin toiminut mulla ainakaan niissä kohteissa, missä kokeilin :( Win2000)
Pitää tehdä sillai, että se pyörii näkymättömänä taustalla, ja tallentaa kaikki saamansa tiedot jonnekkin :)
Blaze mulla tou rar ei aukee ollenkaa siin vaan tulee yks tyhmä ikkuna ja sit se ei avaa sitä pakettii pitääks mun lataa jotain enneku voi käyttää tota ohjelmaa
Mitäs hyötyä tästäkin mahtaa olla?
Ei toi toimi XP:ssä. Ainakan nettiemailissa.
Ei toi mulla toimi myöskää XP Pro
Esim.Koitin hölmöä habbohotellia sen salasanan paljastaa mutta kappas vaan,ei kirjoita salasanaa.
Miksi?
ei toimi XP:ssä mullakaan... mutta kokeilen vielä 98 :lla.. :p
Kokeilin 98:ssa; ei toimi.
Aihe on jo aika vanha, joten et voi enää vastata siihen.