noop
 
 
  Anmeldungsdatum: 04.05.2005 Beiträge: 259
 
  | 
		
			
				 Verfasst am: 22.06.2005, 20:52    Titel: noobcodierungscode funzt net | 
				     | 
			 
			
				
  | 
			 
			
				Hallo
 
Ich hab mir, nur zum lernen, ein Codierungsprogramm geschrieben.
 
Im Programm gibt es das Subprogramm encodieren und decodieren.
 
 
1.Wenn ich eine Datei encodiere funzt dsa super.
 
2.Ich beende das Programm
 
3.Ich starte es neu und decodiere die codierte Datei
 
-----funzt alles
 
 
Wenn ich aber das Prog starte, dann encodiere und dann direkt decodiere funzt das nicht. Der ignorrt das decodieren einfach.
 
 
Hier der Code(die Lines und so könnt ihr eigentlich ignorren)
 
 	  | Code: | 	 		  
 
DECLARE SUB DECODE ()
 
DECLARE SUB ENCODE ()
 
DECLARE SUB MENUE ()
 
DECLARE SUB MUSIC ()
 
DECLARE SUB REALEND
 
DECLARE FUNCTION BRIGHTEND
 
DECLARE FUNCTION DARKEND
 
DECLARE FUNCTION WINDOWS
 
DIM SHARED X AS INTEGER, Y AS INTEGER, BUTTONS AS INTEGER
 
 
Declare Function mciSendString Lib "winmm.dll" _ 
 
  Alias "mciSendStringA" (ByVal lpszCommand As String, _ 
 
  ByVal lpszReturnString As String, _ 
 
  ByVal cchReturnLength As Long, _ 
 
  ByVal hwndCallback As Long) As Long 
 
Declare Function GetShortPathName Lib "kernel32" _ 
 
  Alias "GetShortPathNameA" (ByVal lpszLongPath As String, _ 
 
  ByVal lpszShortPath As String, _ 
 
  ByVal cchBuffer As Long) As Long 
 
 
Function WAVEPlay(sFile As String, sAlias As String) As Integer 
 
  Dim sBuffer As String
 
  Dim sf AS STRING
 
  sf = Space$(255) 
 
  sBuffer = Space$(255) 
 
  sf = sFile 
 
  lResult = GetShortPathName(sf, sBuffer, Len(sBuffer)) 
 
  sBuffer = RTRIM$(sBuffer) 
 
    If mciSendString("open " + sBuffer + " type WaveAudio alias " + sAlias, 0, 0, 0) = 0 Then 
 
      mciSendString "play " + sAlias + " from 0", 0, 0, 0 
 
  END IF
 
End Function
 
SCREEN 14,,0,1
 
resultat = WAVEPlay("ring.wav", "X")
 
CALL MENUE
 
 
 
FUNCTION WINDOWS
 
COLOR , 0
 
CLS
 
LINE (7, 30)-(315, 133), 11, BF
 
LINE (7, 134)-(315, 235), 1, BF
 
LINE (3, 239)-(4, 5), 1, BF
 
LINE (4, 4)-(4, 3), 1
 
LINE (5, 239)-(320, 238), 1, BF
 
LINE (6, 237)-(317, 236), 55, BF
 
LINE (5, 237)-(6, 30), 55, BF
 
LINE (5, 29)-(6, 3), 55, BF
 
PSET (5, 2), 55
 
LINE (8, 0)-(314, 0), 55
 
LINE (6, 1)-(7, 1), 55
 
LINE (6, 2)-(7, 2), 54
 
LINE (8, 1)-(314, 2), 54, BF
 
LINE (318, 237)-(319, 5), 1, BF
 
LINE (315, 28)-(7, 29), 1, BF
 
LINE (316, 28)-(317, 237), 55, BF
 
LINE (315, 2)-(316, 2), 54
 
LINE (315, 1)-(316, 1), 55
 
PSET (317, 2), 55
 
LINE (318, 4)-(318, 3), 1
 
LINE (7, 3)-(317, 27), 55, BF
 
 
COLOR 40, 55: LOCATE 2, 17: PRINT "Codix": COLOR 31, 55
 
LOCATE 2, 2: PRINT MID$(DATE$, 4, 2) + "." + LEFT$(DATE$, 2) + "." + RIGHT$(DATE$, 4)
 
COLOR 1, 11: LOCATE 10, 17: PRINT "Decode"
 
COLOR 31, 1: LOCATE 22, 17: PRINT "Encode"
 
END FUNCTION
 
 
SUB MENUE
 
WINDOWS
 
BRIGHTEND
 
COLOR 31, 55
 
DO
 
GETMOUSE X, Y,, BUTTONS
 
IF BUTTONS AND 1 THEN
 
    SELECT CASE X
 
        CASE 294 TO 312: SELECT CASE Y: CASE 7 TO 25: IF NONIT = 0 THEN DARKEND: CALL REALEND: END SELECT
 
    CASE ELSE
 
        NONIT = 1
 
    END SELECT
 
    SELECT CASE Y
 
        CASE 7 TO 25: SELECT CASE X: CASE 294 TO 312: IF NONIT = 0 THEN DARKEND: CALL REALEND: END SELECT
 
        CASE 30 TO 133: SELECT CASE X: CASE 7 TO 315: CALL DECODE: END SELECT
 
        CASE 134 TO 235: SELECT CASE X: CASE 7 TO 315: CALL ENCODE: END SELECT
 
    CASE ELSE
 
        NONIT = 1
 
    END SELECT
 
ELSE
 
    NONIT = 0
 
END IF
 
LOCATE 2, 28: PRINT TIME$
 
W$ = INKEY$
 
SELECT CASE W$
 
    CASE "D", "d": CALL DECODE
 
    CASE "E", "e": CALL ENCODE
 
    CASE CHR$(27): END
 
END SELECT
 
LOOP UNTIL INKEY$ = CHR$(27)
 
END
 
END SUB
 
 
SUB DECODE
 
CLS
 
PRINT " Decode"
 
INPUT " Quelldatei: "; File$
 
INPUT " Ausgabedatei: "; Path$
 
PRINT " Einen Moment bitte..."
 
KILL PATH$
 
FS = FREEFILE
 
OPEN File$ FOR INPUT AS #FS
 
DO UNTIL EOF(FS)
 
LINE INPUT #FS, TEXT$
 
IF E = 1 THEN ET$ = ""
 
IF TEXT$ = CHR$(20) THEN
 
    OPEN PATH$ FOR APPEND AS #4
 
    PRINT #4, ET$
 
    CLOSE #4
 
    E = 1
 
ELSE
 
E = 0
 
ACODE = VAL(TEXT$)
 
BS$ = CHR$(ACODE)
 
ET$ = ET$ + BS$
 
END IF
 
IF INKEY$ = CHR$(27) THEN END
 
LOOP
 
IF INKEY$ = CHR$(27) THEN END
 
CLOSE #FS
 
call menue
 
END SUB
 
 
SUB ENCODE
 
CLS
 
PRINT " Encode"
 
INPUT " Quelldatei: "; File$
 
INPUT " Ausgabedatei: "; Path$
 
PRINT " Einen Moment bitte..."
 
KILL PATH$
 
OPEN Path$ FOR OUTPUT AS #3
 
CLOSE #3
 
OPEN File$ FOR INPUT AS #1
 
DO UNTIL EOF(1)
 
LINE INPUT #1, TEXT$
 
FOR D = 1 TO LEN(TEXT$)
 
BS$ = MID$(TEXT$, D, 1)
 
BSA = ASC(BS$)
 
OPEN Path$ FOR APPEND AS #2
 
PRINT #2, BSA
 
NEXT D
 
OPEN Path$ FOR APPEND AS #2
 
PRINT #2, CHR$(20)
 
IF INKEY$ = CHR$(27) THEN END
 
LOOP
 
CLOSE #2
 
CLOSE #3
 
IF INKEY$ = CHR$(27) THEN END
 
call menue
 
END SUB
 
 
 
SUB REALEND
 
DO
 
IF INKEY$ = CHR$(27) THEN END
 
GETMOUSE X, Y,,BUTTONS
 
IF BUTTONS AND 1 THEN
 
    SELECT CASE X
 
        CASE 294 TO 312: SELECT CASE Y: CASE 7 TO 25: END SELECT
 
    CASE ELSE
 
        CALL MENUE
 
    END SELECT
 
ELSE
 
    SELECT CASE X
 
        CASE 294 TO 312: SELECT CASE Y: CASE 7 TO 25: END: END SELECT
 
    END SELECT
 
    CALL MENUE
 
END IF
 
IF INKEY$ = CHR$(27) THEN END
 
LOOP UNTIL INKEY$ = CHR$(27)
 
END
 
END SUB
 
 
FUNCTION BRIGHTEND
 
LINE (293, 6)-(313, 26), 15, BF
 
LINE (294, 7)-(312, 25), 297, BF
 
LINE (298, 12)-(307, 21), 15
 
LINE (299, 11)-(308, 20), 15
 
LINE (298, 20)-(307, 11), 15
 
LINE (299, 21)-(308, 12), 15
 
LINE (299, 12)-(307, 20), 15
 
LINE (299, 20)-(307, 12), 15
 
PSET (298, 11), 86 
 
PSET (298, 21), 86 
 
PSET (308, 21), 86 
 
PSET (308, 11), 86 
 
PSET (294, 7), 84 
 
PSET (294, 25), 84 
 
PSET (312, 25), 84 
 
PSET (312, 7), 84 
 
LINE (295, 25)-(311, 25), 368 
 
LINE (312, 24)-(312, 8), 368 
 
LINE (295, 24)-(311, 24), 4 
 
LINE (311, 24)-(311, 8), 4 
 
LINE (295, 7)-(311, 7), 4 
 
LINE (294, 8)-(294, 24), 4 
 
PSET (293, 6), 55 
 
PSET (293, 26), 55 
 
PSET (313, 6), 55 
 
PSET (313, 26), 55 
 
PSET (294, 6), 54 
 
PSET (293, 7), 54 
 
PSET (312, 26), 54 
 
PSET (313, 25), 54 
 
PSET (312, 6), 54 
 
PSET (313, 7), 54 
 
PSET (294, 26), 54 
 
PSET (293, 25), 54 
 
END FUNCTION
 
 
 
FUNCTION DARKEND
 
LINE (293, 6)-(313, 26), 15, BF
 
LINE (294, 7)-(312, 25), 4, BF
 
LINE (298, 12)-(307, 21), 86
 
LINE (299, 11)-(308, 20), 86
 
LINE (298, 20)-(307, 11), 86
 
LINE (299, 21)-(308, 12), 86
 
LINE (299, 12)-(307, 20), 86
 
LINE (299, 20)-(307, 12), 86
 
PSET (298, 11), 88 
 
PSET (298, 21), 88 
 
PSET (308, 21), 88 
 
PSET (308, 11), 88 
 
PSET (294, 7), 84 
 
PSET (294, 25), 84 
 
PSET (312, 25), 84 
 
PSET (312, 7), 84 
 
LINE (295, 25)-(311, 25), 368 
 
LINE (312, 24)-(312, 8), 368 
 
LINE (295, 24)-(311, 24), 4 
 
LINE (311, 24)-(311, 8), 4 
 
LINE (295, 7)-(311, 7), 4 
 
LINE (294, 8)-(294, 24), 4 
 
PSET (293, 6), 55 
 
PSET (293, 26), 55 
 
PSET (313, 6), 55 
 
PSET (313, 26), 55 
 
PSET (294, 6), 54 
 
PSET (293, 7), 54 
 
PSET (312, 26), 54 
 
PSET (313, 25), 54 
 
PSET (312, 6), 54 
 
PSET (313, 7), 54 
 
PSET (294, 26), 54
 
PSET (293, 25), 54
 
END FUNCTION
 
 | 	  
 
 
Jetzt nicht loslachen und sagen: Meine Fresse hast du dir ne Arbeit mit LINE UND PSET gemacht.
 
 
/Code funzt jetzt.
  Zuletzt bearbeitet von noop am 25.06.2005, 17:37, insgesamt einmal bearbeitet | 
			 
		  |