Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Sofortiges Beenden des Prgrammes (https://www.delphipraxis.net/136894-sofortiges-beenden-des-prgrammes.html)

gangs-taas 9. Jul 2009 17:48


Sofortiges Beenden des Prgrammes
 
Hey,
ich hab mal eine frage ^^
ich hab ein Prgramm geschrieben doch wenn ich es ausführen/testen möchte funktioniert es nicht.
Es macht den anschein als würde Delphi das Prgramm sofort nach dem Starten wieder beenden aber ich versteh nicht wieso
Ich hoffe ihr könnt mir bei dieser Frage helfen
und
Nein ich will nicths böses mit dem code machen *entäuscht darüber sein, dass ich das hier schreiben muss*
hier ist mein code:

(ja die dinge sind nicht sinnvoll benannt aber ich brauche das nicht. ich hoffe ihr steigt da trotzdem durch ^^)

Delphi-Quellcode:
const Woche28='C:\Users\MeinName\Desktop\Kalender\28.txt';

procedure TForm1.Button2Click(Sender: TObject);
begin
  Zwischenspeicher := Memo1.text+ #10#13 + Memo2.Text +  Memo3.text+ #10#13 + Memo4.Text + Memo5.text+ #10#13 + Memo6.Text + Memo7.text+ #10#13 + Memo8.Text ;
  Zwischenspeicher.SaveToFile(Woche28);
//seit dem ich den Quelltext dieses Buttons geschreibne habe, startet das programm ncith mehr, doch selbst wenn ich den Teil //jetzt ausklammer bringt das das Programm erstauinlicher weise auch nicht wieder zum laufen
end;

procedure TForm1.FormCreate(Sender: TObject);
Var
KWoche : integer;
begin
  KWoche := WeekOfTheYear(Now);
  KalWo.Caption:= IntToStr(KWoche)+ '. Kalenderwoche';
  Zwischenspeicher := TStringList.Create;
  if(KWoche = 28) Then begin
    if FileExists(Woche28) then Begin
      Zwischenspeicher.LoadFromFile(Woche28);
      Memo1.Text := Zwischenspeicher[4];
    End
  else ShowMessage('Die Datei '+Woche28+' wurde nicht gefunden!');
  end;
end;

rollstuhlfahrer 9. Jul 2009 17:55

Re: Sofortiges Beenden des Prgrammes
 
HI,

ich tipp ganz einfach mal, dass Delphi dein Programm gar nicht erst startet. Das liegt wohl an einem bösen Syntaxfehler, den Delphi dir auch anzeigt. Allerdings unterhalb des Editors.

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
  Zwischenspeicher := Memo1.text+ #10#13 + Memo2.Text +  Memo3.text+ #10#13 + Memo4.Text + Memo5.text+ #10#13 + Memo6.Text + Memo7.text+ #10#13 + Memo8.Text ; //HIER string
  Zwischenspeicher.SaveToFile(Woche28); // TStringlist?
end;
"Zwischenspeicher" ist doch ne TStringList oder? :glaskugel: Wenn du die dann als einfachen String benutzt, sollte das nicht möglich sein. Außerdem müsste dann die angesprochene Zeile nach dem Ausführen rot sein.

Bernhard

gangs-taas 9. Jul 2009 18:01

Re: Sofortiges Beenden des Prgrammes
 
ja du hast recht das ist ne Tstring list ...

okay ich muss zugeben ich dachte ne Tstring list wäre einfach eine Sammlung von Strings deswegen dachte ich ich kann die da 'reintun'


öhm wie würdest du das denn denn machen ?
ich habe mehere Memofelder und möchte deren inhalt in die Textdatei speichern....


Und nein Delphi Zeigt keinen Fehler an GAR keinen...


ich hab noch eine frage. Wieso startet das programm selbst dann denn nicht wenn ich den gesammten quelltext des buttons lösche ?!
wenn da der fehler ist müsste es nach dem löschen doch funktionieren odeR ?!

rollstuhlfahrer 9. Jul 2009 18:08

Re: Sofortiges Beenden des Prgrammes
 
Zitat:

Zitat von gangs-taas
Und nein Delphi Zeigt keinen Fehler an GAR keinen...

glaub ich net. Punkt.

Das andere geht über Zwischenspeicher.SetText(); oder Zwischenspeicer.text := ...;

Bernhard

jaenicke 9. Jul 2009 18:16

Re: Sofortiges Beenden des Prgrammes
 
Wie wäre es dann, wenn du einmal den Debugger benutzt? Wenn du einen Haltepunkt in FormCreate setzt, dann sollte das Programm dort auch ankommen.

Wenn nicht, starte das Programm mit F8, dann landest du im Projektquelltext und du kannst dort schrittweise durchgehen. Was passiert dann?

gangs-taas 9. Jul 2009 18:22

Re: Sofortiges Beenden des Prgrammes
 
hey,
komisch er hat jetzt doch den fehler angezigt.
hab das jetzt so gemacht :

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
  Zwischenspeicher.Text := Memo1.text+ #13#10 + Memo2.Text +  Memo3.text+ #13#10 + Memo4.Text +#13#10 + Memo5.text+ #13#10+ Memo6.Text + #13#10 +  Memo7.text+ #13#10 + Memo8.Text ;
  Zwischenspeicher.SaveToFile(Woche28);

er startet das programm aber trotzdem nicht und erreicht auch meine Breakpoints im Form1 nicht ....

jaenicke 9. Jul 2009 18:33

Re: Sofortiges Beenden des Prgrammes
 
Zitat:

Zitat von gangs-taas
komisch er hat jetzt doch den fehler angezigt.

Was war denn das für ein Fehler, hast du den behoben?

Was passiert, wenn du im Menü Projekt auf "... erzeugen" klickst? Steht dann wirklich da 0 Fehler?

Zitat:

Zitat von gangs-taas
er startet das programm aber trotzdem nicht und erreicht auch meine Breakpoints im Form1 nicht ....

Häng am besten einmal das Projekt ganz an, also .dpr, .pas und .dfm gepackt als .zip...

gangs-taas 9. Jul 2009 18:47

Re: Sofortiges Beenden des Prgrammes
 
:oops: :oops: ich hab grad gemkert da da irgendwie ganz schön viel falsch gelaufen ist...
jedenfalls gibs in dem 'speicherordner' keine unit datei und nichts ...
komisch... naja ich mach das jetzt noch einmal neu
den größten teil des quelltextes kann ich ja noch einmal benutzen ^^

gangs-taas 9. Jul 2009 18:51

Re: Sofortiges Beenden des Prgrammes
 
so jetzt gehts ^^
danke für eure hilfe.

ich werde aber sicherlich noch mehr fragen/Probleme haben ^^

also braucht ihr keine angst zu haben ^^

gangs-taas 9. Jul 2009 19:00

Re: Sofortiges Beenden des Prgrammes
 
hey,
ich bin beim nächsten problem angelangt ^^
ich habe das hier geschreiben
aber ich kriege eine nfehler den ich nicth versteh


Delphi-Quellcode:
procedure InDieMemoFelderSchreiben;
begin
  Zwischenspeicher.LoadFromFile(Woche28);
  Memo1.Text := Zwischenspeicher[4]; // hier bkeomme ich die fehlermeldung 'undefinierter bezeichner 'memo1.text'
                                        das versteh ich nicht weil ich hab doch ein memo1 und nen text hat das auch (oder ?)
                                     // außerdem kommt die fehelrmeldung '(' erwartet aber ':=' erhalten
                                        die versteh ich auch nicht :(
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:05 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz