tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
7563
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Golox Golox ist offline Mitglied
    Registriert seit
    Mar 2007
    Beiträge
    18
    Hallo,
    wir machen im Informatikunterricht momentan Verschlüsselung usw.
    Nun soll ich in VB ein Programm erstellen, mitdem es möglich ist einen Text mit der Cäsar-Methode zu verschlüsseln. (Bei der Cäser Methode wird jeder einzelne Buchstabe eines Textes um x Buchstaben verschoben. z.B. "Verschiebung" beträgt 4, der Text ist "hallo" und wird nach der Verschlüsselung zu "lepps".)
    In VB sieht dass dann folgendermaßen aus:
    Ich habe 3 Textboxen und einen Button. Eine, in der ich die "Verschiebung" eintrage, eine in die ich den zu verschlüsselnden Text eintrage und eine, in der der verschlüsselte Text nachdem man auf den Button geklickt hat angezeigt wird.
    Code ist dieser hier:



    Private Sub cmdverschlüsseln_Click()

    Dim text$
    text = txttext.text
    txtverschlüsselt.text = encode(text)
    txttext.text = decode(encode(text))

    End Sub

    Function encode(str As String)
    Dim str_crypt$
    Dim i%
    Dim verschiebung As Integer
    verschiebung = txtverschiebung.text
    For i = 1 To Len(str)
    str_crypt = str_crypt & Chr(Asc(Mid(str, i, 1)) + verschiebung)
    Next i

    encode = str_crypt
    End Function

    Function decode(str_crypt As String)
    Dim str$
    Dim i%
    Dim verschiebung
    verschiebung = txtverschiebung.text
    For i = 1 To Len(str_crypt)
    str = str & Chr(Asc(Mid(str_crypt, i, 1)) - verschiebung)
    Next i

    decode = str

    End Function


    Nun zum Problem. Wenn ich den Code und die Form im VB-Editor von Excel öffne und starte klappt alles. Nun will ich das ganze aber unter Visual Studios programmieren. Wenn ich jetzt genau die gleiche Form erstelle, diesen Code benutze und das Programm starte, kommt diese Meldung hier:
    "Die str_crypt Variable wird verwendet, bevor ihr ein Wert zugewiesen wird. Zur Laufzeit kann eine Nullverweisausnahme auftreten."

    Bitte um Hilfe...

    Mit freundlichen Grüßen Golox
     

  2. #2
    Avatar von Philipp9494
    Philipp9494 Philipp9494 ist offline Mitglied Brokat
    Registriert seit
    Apr 2006
    Ort
    Oberösterreich
    Beiträge
    251
    Hallo Golox

    Ich habe den Code 1:1 kopiert und bei mir klappt alles prima (Ich habe die Steuerelemente richtig bennent).

    Mir fällt zwar nicht ein was falsch sein könnte.

    Vl. ist es die Schuld des Compilers. Welchen verwendest du? Ich verwende VB 6.0

    Liebe Grüße

    Philipp9494
     

  3. #3
    cesupa cesupa ist offline Mitglied Brokat
    Registriert seit
    Sep 2004
    Beiträge
    329
    Also dem Fehler nach zu Urteilen gibt es hier ein Problem:

    Code :
    1
    2
    3
    
    For i = 1 To Len(str)
    str_crypt = str_crypt & Chr(Asc(Mid(str, i, 1)) + verschiebung)
    Next i

    str_crypt ist da ja noch nicht initialisiert und du willst es schon zuweisen. Versuch mal zuvor in str_crypt was reinzuschreiben, z.B.: str_crypt=""

    Gruß
    cesupa
     

  4. #4
    Avatar von DrSoong
    DrSoong DrSoong ist offline Iss was, Doc!
    tutorials.de Premium-User
    Registriert seit
    Jul 2003
    Ort
    Dem Zentrum meiner Welt
    Beiträge
    1.836
    Blog-Einträge
    85
    Im Normalfall ist es egal, ob du vorher was reinschreibst oder nicht, da sollte kein Fehler auftreten (auch bei mir hat es unter VB6 funktioniert). Kann es sein, dass du mit VB.NET arbeitest? Die .NET-Sprachen haben sich gegenüber den alten Sprachen doch etwas verändert, Fragen zu .NET stellst du am besten im .NET-Unterforum.


    Der Doc!
     
    A: Hilfe, ich hab zwei Dateien hinzugefügt und nun sind die anderen weg
    B: Die Scrollbar da rechts ist dir schon mal aufgefallen?

  5. #5
    Golox Golox ist offline Mitglied
    Registriert seit
    Mar 2007
    Beiträge
    18
    Danke für die Antworten =)
    Ich hab der Variable jetzt, wie cesupa vorgeschlagen hat, einfach nen leeren Wert zugewiesen (str_crypt = "") und es klappt =)
    Zu DrSoong: Ich arbeite nicht mit VB.Net aber trotzdem Danke.
     

  6. #6
    get_banned Tutorials.de Gastzugang
    Ich grabe jetzt mal dieses alte Thema aus, da ich genau das gleiche machen muss. Leider habe ich nicht viel Ahnung von Vb. Deshalb habe ich jetzt einfach diesen Code kopiert, die Steuerelemente richtig benannt und das angesprochene Problem durch das Zuweisen eines leeren Werts gelöst. Wenn ich aber das Programm jetzt ausprobieren will und eben in den Textboxen etwas eingebe und eben etwas verschlüsseln möchte passiert einfach garnichts. Mir ist klar das ich warscheinlich etwas ganz grundlegendes falsch mache =(. Hier mein Code

    Public Class Form1

    Private Sub cmdverschlüsseln_Click()

    Dim text$
    text = txttext.text
    txtverschlüsselt.text = encode(text)
    txttext.text = decode(encode(text))

    End Sub

    Function encode(ByVal str As String)
    Dim str_crypt$
    Dim i%
    Dim verschiebung As Integer
    verschiebung = txtverschiebung.text
    For i = 1 To Len(str)
    str_crypt = ""
    str_crypt = str_crypt & Chr(Asc(Mid(str, i, 1)) + verschiebung)
    Next i
    str_crypt = ""
    encode = str_crypt
    End Function


    Function decode(ByVal str_crypt As String)
    Dim str$
    Dim i%
    Dim verschiebung
    verschiebung = txtverschiebung.text
    For i = 1 To Len(str_crypt)
    str = ""
    str = str & Chr(Asc(Mid(str_crypt, i, 1)) - verschiebung)
    Next i
    str = ""
    decode = str

    End Function
    End Class

    Ich habe Vb 2008 Express Edition. Hat jmd vllt sogar ein Tutorial für eine Cäsar-Verschlüsselung? Das wäre natürlich noch viel besser...
     

  7. #7
    XanRaZoR XanRaZoR ist offline Mitglied Silber
    Registriert seit
    Apr 2007
    Beiträge
    94
    Zitat Zitat von get_banned Beitrag anzeigen
    Ich habe Vb 2008 Express Edition. Hat jmd vllt sogar ein Tutorial für eine Cäsar-Verschlüsselung? Das wäre natürlich noch viel besser...
    VB 2008 --> siehe Beitrag von DrSoong.
     

Ähnliche Themen

  1. Problem mit Cäsar Kodierung
    Von Marimi im Forum C/C++
    Antworten: 1
    Letzter Beitrag: 10.11.10, 20:46
  2. RSA-Verschlüsselung
    Von Azi im Forum Security (Viren, Trojaner, Spam)
    Antworten: 5
    Letzter Beitrag: 30.12.07, 13:05
  3. Cäsar
    Von ValhallasRaben im Forum .NET Windows Forms
    Antworten: 3
    Letzter Beitrag: 05.12.07, 09:19
  4. Cäsar Verschlüsselung
    Von Spranta im Forum Java
    Antworten: 2
    Letzter Beitrag: 16.03.07, 13:23
  5. Cäsar Chiffre
    Von Der O im Forum Visual Basic 6.0
    Antworten: 3
    Letzter Beitrag: 13.11.04, 18:51