danfredr Skrevet 16. januar 2004 Del Skrevet 16. januar 2004 Hei. Hvordan lager man slik at når jeg skriver F.eks "Dan" i text1 så skal den krypteres som A betyr 001 B betyr 002 osv... så kommer den kryptert ut av text2 ? Hvordan gjør man dette? kan noen gi meg en eksempel på dette ? Lenke til kommentar
Jonas Skrevet 16. januar 2004 Del Skrevet 16. januar 2004 (endret) Sleng in tre tekstbokser og sett multiline til true på alle sammen. Edit: og seff sleng inn en knapp Private Sub Command1_Click() Text3.Text = Text1.Text Text2.Text = Replace(Text1.Text, "a", "001 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "b", "002 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "c", "003 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "d", "004 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "e", "005 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "f", "006 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "g", "007 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "h", "008 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "i", "009 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "j", "010 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "k", "011 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "l", "012 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "m", "013 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "n", "014 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "o", "015 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "p", "016 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "q", "017 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "r", "018 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "s", "019 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "t", "020 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "u", "021 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "v", "022 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "w", "023 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "x", "024 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "y", "025 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "z", "026 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "æ", "027 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "ø", "028 ", 1, , vbTextCompare) Text1.Text = Text2.Text Text2.Text = Replace(Text1.Text, "å", "029 ", 1, , vbTextCompare) Text1.Text = Text3.Text End Sub Private Sub Form_Load() Text3.Visible = False Text1.Text = "Din melding" Text2.Text = "Dinkrypterte melding" 'tekst3 er bare et buffer sånn at den orginale medlinga du skriver inn kan kommer tilbake End Sub Du skjønner koden? Den replacer a med 001 legger den tilbake og gjør det samme igjen med b. Sett inn fler tegn hvis du vil. Endret 16. januar 2004 av jonas22282460 Lenke til kommentar
aadnk Skrevet 17. januar 2004 Del Skrevet 17. januar 2004 Litt mye kode, kanskje? Ville heller ha gjort det slik: Const Lenght = 3 Public Function EncryptText(ByVal Text As String) As String Dim Buff$, Tell&, Tmp& Buff = Space(Len(Text) * Lenght) For Tell = 1 To Len(Text) Tmp = Asc(Mid(Text, Tell, 1)) Mid(Buff, IIf(Tell = 1, 1, (Tell - 1) * Lenght + 1), Lenght) = FillNumber(Tmp, Lenght) Next EncryptText = Trim(Buff) End Function Public Function FillNumber(ByVal Value As Long, ByVal NumDigt As Long) FillNumber = String(NumDigt - Len(CStr(Value)), "0") & Value End Function Etter du har skrevet dette inn kan du bruke denne koden: Text2.Text = EncryptText(Text1.Text) Denne koden gjør alt om til tall. A blir imidlertid ikke 001, men jeg vil si dette er mye bedre da man også kan ta med tall, spesial tegn osv. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå