AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Was ist das für ein Compiler-Hinweis, ist das wichtig?
Thema durchsuchen
Ansicht
Themen-Optionen

Was ist das für ein Compiler-Hinweis, ist das wichtig?

Ein Thema von Tim.exe · begonnen am 9. Mai 2003 · letzter Beitrag vom 9. Mai 2003
Antwort Antwort
Tim.exe

Registriert seit: 29. Apr 2003
186 Beiträge
 
#1

Was ist das für ein Compiler-Hinweis, ist das wichtig?

  Alt 9. Mai 2003, 11:51
Hallo,

bei folgendem code bekomme ich einen nicht ganz klaren 'Compiler Hinweis':

code:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Nachricht: integer;
begin
        Try
        Memo1.Lines.SaveToFile('Status\Status' + ' ' +Datum.Caption+' Uhr.txt');
        Except
        Nachricht := MessageDlg('Fehler bei speichern von "Status", Verzeichnis existiert nicht mehr.'
        +#13#10+#13#10 + 'Neustart des Programms erstellt neues Verzeichnis.',mtInformation,[mbOK],0);
        end;
end;
Compiler Hinweis:
"Auf 'Nachricht' zugewiesener Wert wird niemals benutzt"

##################################
Ich habe es aber getestet, es funktioniert tadellos.
!!! Sigs stinken !!!
  Mit Zitat antworten Zitat
Benutzerbild von wo0zy
wo0zy

Registriert seit: 14. Apr 2003
Ort: 127.0.0.1
80 Beiträge
 
Delphi 7 Enterprise
 
#2
  Alt 9. Mai 2003, 11:57
das sagt dir einfach nur das du nachricht nie irgendwo benutzt, auser bei der wertzuweisung. is nur eine hilfe um dein programm zu optimieren, denn nachricht kannste ja auch weglassen

//Edit haste schonmal die exception provoziert? denn dann sollte ja eigentlich nix passieren, weil die nachricht ja nich ausgegeben wird. nachricht brauchst du eigentlich absolut nicht wi ich das sehen.

und können messagedialogs wirklich einer einer variablen des typs integer gespeichert werden?
It's not a bug it's a feature!
  Mit Zitat antworten Zitat
Tom

Registriert seit: 7. Jan 2003
318 Beiträge
 
RAD-Studio 2009 Pro
 
#3
  Alt 9. Mai 2003, 11:58
Du benutzt Nachricht nicht. Genau dieses sagt Dir der Compiler. Falls Dich der Rückgabewert nicht interessiert schreibe MessagDlg(...); Der Rückgabewert ist hier ja völlig uninteressant, da der Anwender sowieso nur bestätigen soll/muss.

Am Rande: Wieso benutzt Du relative Pfade? Hast Du hieraus nichts gelernt?
  Mit Zitat antworten Zitat
Tim.exe

Registriert seit: 29. Apr 2003
186 Beiträge
 
#4
  Alt 9. Mai 2003, 12:04
Ja, ich kann Nachricht zwar weglassen aber die Exception funktioniert einwandfrei.

Über OnCreate wird ein Verzeichnis namens "Status" erstellt. Wenn das Programm läuft, ich das Verzeichnis lösche und dann auf Button1 clicke kommt der MsgDlg. Lösche ich das Verzeichnis nicht, wird das Memo gespeichert...

*just wondering*

/edit:
Relative Pfade nutze ich weil insgesamt 5 Verzeichnisse erstellt werden, und in diesen 5 Verzeichnisse sollen genau 7 Datein gespeichert werden, wobei jede Datei in ein festes Verzeichnis soll.
!!! Sigs stinken !!!
  Mit Zitat antworten Zitat
Tom

Registriert seit: 7. Jan 2003
318 Beiträge
 
RAD-Studio 2009 Pro
 
#5
  Alt 9. Mai 2003, 12:08
Zitat von Tim.exe:
Lösche ich das Verzeichnis nicht, wird das Memo gespeichert...
Dann frage doch vor dem Speichern ab, ob das Verzeichnis existiert.

Hast Du eigentlich meine Anmerkung "Am Rande: ..." gelesen?
  Mit Zitat antworten Zitat
Tom

Registriert seit: 7. Jan 2003
318 Beiträge
 
RAD-Studio 2009 Pro
 
#6
  Alt 9. Mai 2003, 12:15
Ich habe gerade mal Deine Fehlermeldung gelesen:
1) Wieso erstellst Du nicht einfach das Verzeichnis, wenn es nicht existiert?
2) Wieso löscht Du das überhaupt?

Zitat von Tim.exe:
Relative Pfade nutze ich weil insgesamt 5 Verzeichnisse erstellt werden, und in diesen 5 Verzeichnisse sollen genau 7 Datein gespeichert werden, wobei jede Datei in ein festes Verzeichnis soll.
Und das Programm wird genau die gleichen Fehler produzieren, die schon bei Deinem letzten Problem aufgetreten sind. Die dort benutzte Problemlösung läßt sich doch ohne weiteres auf die o.g. Prozedur anwenden.
  Mit Zitat antworten Zitat
Benutzerbild von wo0zy
wo0zy

Registriert seit: 14. Apr 2003
Ort: 127.0.0.1
80 Beiträge
 
Delphi 7 Enterprise
 
#7
  Alt 9. Mai 2003, 13:34
Dann versuche doch mal einen fehler zu provozieren, da kann die fehlermeldung doch gar nicht erscheinen, nur nachricht wird gesetzt, aber nie in der procedure abgefragt....verstehst du wie ichs meine?
It's not a bug it's a feature!
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#8
  Alt 9. Mai 2003, 13:37
Hallo,

mach doch vor dem letzten end; doch mal ne Message mit der Nachricht.
ShowMessage(IntToStr(Nachricht)); Grüsse, Daniel
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:20 Uhr.
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