Setup-programm, wo ist der Fehler????
-
Hallo
Es hat wohl keiner Lust deinen ellenlangen Code durchzusehen und auszuprobieren.
"funktioniert nicht" ist auch keine ausreichende Fehlerbeschreibung.
Du solltest den Debugger und zusätzliche Log-ausgaben benutzen, um den Verlauf deines Programms sowie die markanten Variablen zu prüfen. Hast du dann das Problem näher eingekreist und hier beschrieben, wird sicher auch jemand helfen können.bis bald
akari
-
Bin mir nicht sicher, aber musst du bei den Pfaden nicht das '\' als "\" schrieben???
-
schreibst du für linux oder windows ? weil \ einfach so geht sicherlich schief unter windows, da musst du \\ für schreiben
-
1. natürlich habe ich zuerst probiert den Fehler selbst zu finden!
-> aber ich habe nichts gefunden, DA das Programm im TESTordner ordnungsgemäß funktioniert!!!!! Nur wenn ich es dann "wirklich" druchführe bricht das programm einfach ab(nachdem ich den Zielordner angegeben habe, also die Abfrage am Anfang funktioniert). Ich habe es schon mehrfach ausprobiert (auf Schreibfehler etc. hin) aber es geht immer noch nichts!!2. Ich konnte das Problem nicht näher einkreisen, was sollte ich dann machen. Ich hab halt den ganzen Code reingestellt.
Sry wenn der Code zu lang ist, wenn jemand Vorschläge zum verkürzen hat bin ich dafür offen!3. ok ich werde es mit \\ schreiben... aber warum funktioniert es dann im Testordner???

Und muss ich dann für jedes "/" ein "\" bei der Pfadangabe schreiben?4. Ich arbeite unter Windows
thx schon mal!
-
Hallo
Benutzt doch mal den Debugger zum Einkreisen des Fehlers.
chrische
-
unter windows sind die pfadangaben mit backslash (\) zu machen sonst funktioniert es nicht!
sach doch mal bitte wie genau die pfadangaben für deinen testordner sind ?!btw. mach dir paar breakpoints um rauszufinden an welchen stellen er vorbei kommt und wo er rausfliegt, präzisier dann nochmal deine codeangabe
-
@ chrische5 der Debugger findet nichts, weil das Programm ja schleißlich theoretisch im Testordner funktioniert!
@ Ceos
link wird zusammengesetzt aus den Angaben des Benutzers und es werden 3 oder 4 Unterordner drangehängt (mit "\a\b\c\") , das ganze speichert dann ein String.Beim meinem Testordner hab ich einfach einen Ordner erstellt in C:\Test\a\b\c\ (weiß nicht mehr genau wie er hieß... aber halt genauso wie es im Original sein sollte) und hab dann C:\Test\ als Benutzer eingegeben. Das Programm sollte eigentlich dann noch a\b\c\ dranhängen und den String als Pfad nehmen.
Das hat auch geklappt alles in die Ordner kopiert... alles OK.hab nichts geändert und dann im Originalordner (der halt statt C:\Test\ einfach C:\...\ also die entsprechenden Ordner, je nach Benutzer unterschiedlich)getestet und es ist nicht passiert!
bin Anfänger: wie mach ich breakpoints? einfach mit auskommentieren und durchprobieren?
ich probier das ganze dann jetzt erstmal mit "\"...
(bin aber dieses Wochenende nicht da also dauert n weng bis ich es (wieder) getestet hab)thx
-
</Exit> schrieb:
@ chrische5 der Debugger findet nichts, weil das Programm ja schleißlich theoretisch im Testordner funktioniert!
bin Anfänger: wie mach ich breakpoints? einfach mit auskommentieren und durchprobieren?
Der Debugger ist ein Hilfsprogramm, wo du deinem Programm mal bei der Arbeit über die Schulter sehen kannst (und Schritt für Schritt mitverfolgen, was es wie macht). Dort kannst du Breakpoints setzen, um dem Debugger zu sagen, an welchen Stellen er das Programm anhalten soll.
Wenn du keinen Debugger hast, hilft es mitunter auch, zwischendurch auf die Konsole auszugeben, wo du gerade bist - und ob die einzelnen Aktionen erfolgreich waren.
Beim meinem Testordner hab ich einfach einen Ordner erstellt in C:\Test\a\b\c\ (weiß nicht mehr genau wie er hieß... aber halt genauso wie es im Original sein sollte) und hab dann C:\Test\ als Benutzer eingegeben. Das Programm sollte eigentlich dann noch a\b\c\ dranhängen und den String als Pfad nehmen.
Das hat auch geklappt alles in die Ordner kopiert... alles OK.hab nichts geändert und dann im Originalordner (der halt statt C:\Test\ einfach C:\...\ also die entsprechenden Ordner, je nach Benutzer unterschiedlich)getestet und es ist nicht passiert!
Was heißt "nichts passiert"? Hast du überhaupt die Kontrollausgaben erhalten?
-
also ich hab's mit der Fehleranalyse versucht (benutze Dev-C++) aber da kann man nur die Variablen überwachen und das bringt nicht viel (zumindest hier)...
gibts irgendwo (empfehlenswerte) Debugger (for free :D)
ich werds mit der Konsole probieren, aber kann ich auch das Programm mit einem Befehl anhalten?(bzw. mit welchem Code?) Weil mein DOS-Fenster blinkt (nach der Ordnerabfrage) nur einmal kurz auf und dann ist es weg!
Zu den Kontrollausgaben:
Also in meine .txt Datei, wo eigentlich drinstehen sollte was passiert ist, war leer... (komplett leer!)die sonstigen Ausgaben sehe ich nicht weil das Programm nur kurz aufblinkt.
(obwohl eigentlich welche da sein müssten, habs ja im Code drin)thx
ich werds mal weiterprobieren
-
Hallo
Hol dir doch VS Express da haste einen ordentlichen debugger.
chrische
-
thx für den debugger...
hab’s jetzt nochmal compiliert (nachdem ich die \ ausgebessert hab und einige kleine Änderungen, die nichts ausmachen dürften!!!) und dabei treten massenweise Fehler auf wo ich ABSOLUT keine seh!!!
Fehler (mit Zeile):
(Z.13) unknown escape sequence ‘\T’
(Z.13) ‚\040’(Z.25) missing terminating ‘’ character
(Z.25) unknown escape sequence ‘\C’
(Z.25) unknown escape sequence ‘\M’
(Z.25) unknown escape sequence ‘\I’(Z.38) syntax error before ‚=’ token
(Z.26) missing terminating ‘’ character
(Z.26) unknown escape sequence ‘\S’
(Z.26) unknown escape sequence ‘\M’
(Z.26) unknown escape sequence ‘\I’
(Z.26) missing terminating ‘’ character
(Z.26) unknown escape sequence ‘\T’
(Z.26) unknown escape sequence ‘\C’
(Z.26) unknown escape sequence ‘\M’(Z.18) missing terminating ‘’ character
(Z.18) unknown escape sequence ‘\s’(Z.47) syntax error before ‚<’ token
(Z.49) ‚tabelle’ undeclared (first use this function)
ich hab keine Ahnung was das alles heißen soll... da sind keine Fehler

Zeilen sind ja im Codetext enthalten (is vielleicht manchmal um eine Zeile verschoben)…
schon mal danke für die Hilfe
