Brauche Hilfe :(

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Brauche Hilfe :(

Beitrag von EugenE »

Wenn ich mein Programm Kompiliere und anschließend Debugge kommen diese 2 Fehler

[img]http://imup.eugen-bolz.de/ssoe7W5_.jpg[/img]
[img]http://imup.eugen-bolz.de/st4z6s7_.jpg[/img]

und wenn ich das Programm dann starte
wird beim ersten Starten garnichts angezeigt dann schließe ich es per Taskmanager
starte es neu und erhalte diese fehlermeldungen
[img]http://imup.eugen-bolz.de/ss4Tqce_.jpg[/img]
[img]http://imup.eugen-bolz.de/sNB2p65_.jpg[/img]

Der Code will ich ungerne veröffentlichen da ich daran mehrere stunden saß :(

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Auha, Du alter Geheimniskrämer... :lol:

Das ist ein nicht initialisierter Pointer oder Objekt, das da auf nil steht. Setz mal da wo, Objekte oder Pointer verwendet werden nen Breakpoint und guck ob da einer auf nil steht und dann doch aufgerufen wird.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

sry aber was sind pointer oder objekte :D , habe erst vor 2 wochen angefangen zu programmieren^^

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Wenn du den Code nicht zeigst, wird dir wohl keiner helfen können,
Deine Screenshots sagen ja nur, dass irgendwo eine Zugriffsverletzung aufgetreten ist.
Mehr kann man nicht erkennen.

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Nun zeig mal ein bißchen Mut und rück raus den Spaghetticode. Wir lachen auch nicht... :lol:
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Benutz einfach den Debugger und finds selber raus. Du bist n scherzkeks gehst ja auch nich inne autowerkstatt und sagst "Hier is kaputt aber nich die moterhaube aufmachen habe gerade 3 Stunden geputzt und das gibt hässliche Fingerabdrücke"
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

editiert
Zuletzt geändert von EugenE am Do 28. Dez 2006, 14:42, insgesamt 1-mal geändert.

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Du scheinst mir ein rechter Schelm,

ich hätte mal den download im Verdacht. Setz mal bei dem Http-Aufruf nen Breakpoint (einfach links im Grauen nen Mausklick, dann kommt da ein rotes Fragezeichen). Und dann geh ab da mit F7 im Einzelschritt durch. Dann haste schnell raus, an welcher Stelle das passiert.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Code: Alles auswählen

if txt.Count < 7 then
   begin { Die Datei enthält weniger als 3 Zeilen , dh der Server von LayerAds spinnt wieder xD }
         txt.Free;
         ini.Free;
         Form1.download;
   end else begin
         txt.SaveToFile(Form1.path+'xml/'+xml+'.xml');
         txt.Free;
         ini.Free;
   end;


Das wird ganz schnell mal zu ner endlosschleife bei der dann ganz schnell n stack overflow zusatnde kommt villeicht ist das auch scho dein problem
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Das wird ganz schnell mal zu ner endlosschleife

bzw. Rekursion. Das ist bestimmt mal schlecht.

Auch hässlich (hat aber wahrscheinlich nichts mit deinem Problem zu tun):

procedure TForm1.download;
...
begin
...
Form1.download;


Innerhalb einer Methode einer Klasse auf eine Instanz seiner selbst zugreifen, wenn "download" oder "self.download" reichen würde.

Was eher mit deinem Problem zu tun hat:

Du löst alles Mögliche, auch Formularzugriffe bereits im FormCreate eventhandler aus.
Probier mal das Zeug nach OnShow zu verschieben.

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

also der fehler kommt sofort beim

Code: Alles auswählen

HttpGetText('http://layer-ads.de/api/'+xml+'.xml', txt);


was heißt das jez? ich kann nichts downloaden oder wie?

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Lol,

guck mal in die Variable xml bei +xml+ und erzähl mal was da drinsteht. Einfach beim Debug Mauszeiger drauf bevor du weitermarschierst.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

xml = d6df92031eec5f7d7bfb2eaeb6b3a6a9

was auch richtig ist , dann führt er den befehl httpgettext aus und dann schmiert der ab^^

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Jupp, da gibt es 3 Möglichkeiten:

1. Verzeichnis falsch
2. Keine Zugriffsberechtigung
3 Referenz nicht vorhanden (file fehlt)

Normal greifen die über nen Zugriff auf ne mysql-Database auf die Dinger zu. Das heißt der File-Name kommt aus der DB und liegt da nicht unter dem Namen so rum.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Nö, das glaube ich nicht. Synapse's HttpGetText löst keine Zugriffsverletzung aus bei 404.

Aber Eugen, HttpGetText gibt einen Boolean Wert zurück ob's geklappt hat.
Was sagt denn der so?

Antworten