AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

SaveDialog --> Debugger Exception

Ein Thema von Störtebeker · begonnen am 26. Aug 2007 · letzter Beitrag vom 26. Aug 2007
Antwort Antwort
Benutzerbild von Störtebeker
Störtebeker

Registriert seit: 9. Jul 2007
398 Beiträge
 
#1

SaveDialog --> Debugger Exception

  Alt 26. Aug 2007, 14:38
Hallo,

ich habe ein kleines Problem mit meinem Programm:

Ich habe mir zufällig die Vista CaptionButton runtergeladen (Inactive + Active) und verwende für den Wechsel folgendes von der TImage Komponente:

OnMouseDown:

Delphi-Quellcode:
begin
Image1.Picture.LoadFromFile('close-hover.png');
end;
und OnMouseUp:

Delphi-Quellcode:
begin
Image1.Picture.LoadFromFile('close.png');
end;
und OnClick:

Delphi-Quellcode:
begin
Form1.close;
end;
funzt auch alles. Nur wenn ich jetzt einen SaveDialog in mein Programm einfüge und dem entsprechenden Item im Mainmenü folgendes zuweise:

Delphi-Quellcode:
procedure TForm5.HTMLDokumentspeichern1Click(Sender: TObject);
var Dateiname: string;
begin
if SaveDialog1. Execute then
begin
    if ExtractFileExt(SaveDialog1.FileName) = 'then
      case SaveDialog1.FilterIndex of
        1: DateiName := ChangeFileExt(SaveDialog1.FileName,'.html');
        2: DateiName := ChangeFileExt(SaveDialog1.FileName,'.htm');
      end
    else
      Dateiname := SaveDialog1.FileName;
    SynEdit1.Lines.SaveToFile(Dateiname);
  end;
end;
und ich speichere und anschließend das Programm beenden möchte, kommt Delphi mit:

Zitat:
Debugger Exception Notification

Project Project1.exe raised exception class EFOpenError with message 'Cannot open file close.png'.
Process stopped. Please Step or Run to continue.
Die File ist allerdings im Projektordner drinne. Und ohne SaveDialog funzt es auch.

!!Please Help!!

mfG
Störtebeker
"And he piled upon the whale´s white hump - a sum of all the rage and hate felt by his whole race.
If his chest had been a cannon, he would have shot his heart upon it."
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: SaveDialog --> Debugger Exception

  Alt 26. Aug 2007, 14:43
Der SaveDialog ändern den aktuellen Arbeitspfad.
Da du nie davon ausgehen solltest das der User beim Start deines Programmes, den Arbeitspfad auf den Pfad deines Programmes setzt, solltest du generell absolute Pfadangaben verwenden.

Ist dein aktuelles Arbeitsverzeichnis zum Beispiel "c:\Windows" würde versucht werden die Bilder in diesem Ordner zu finden. Und das Arbeitsverzeichnis ist NICHT das gleiche wie das Verzeichnis wo die Anwendung liegt.

besser:
ExtractFilePath(Application.ExeName) + 'dateiname';
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Störtebeker
Störtebeker

Registriert seit: 9. Jul 2007
398 Beiträge
 
#3

Re: SaveDialog --> Debugger Exception

  Alt 26. Aug 2007, 14:47
Muss ich jetzt

if ExtractFileExt(SaveDialog1.FileName) = 'then durch

ExtractFilePath(Application.ExeName) + 'dateiname'; austauschen?

Sry. hatte bisher nie das Problem.
"And he piled upon the whale´s white hump - a sum of all the rage and hate felt by his whole race.
If his chest had been a cannon, he would have shot his heart upon it."
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: SaveDialog --> Debugger Exception

  Alt 26. Aug 2007, 14:49
bisher hast du es so:
FileName := 'close-hover.png'; und daraus solltest du folgendes machen:
FileName := ExtractFilePath(Application.ExeName) + 'close-hover.png';
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Störtebeker
Störtebeker

Registriert seit: 9. Jul 2007
398 Beiträge
 
#5

Re: SaveDialog --> Debugger Exception

  Alt 26. Aug 2007, 14:58
Nochmal Sry. Irgendwie stehe ich gerade auf dem Schlauch:

meinst du so:
Delphi-Quellcode:
begin
Image1.Picture.LoadFromFile.ExtractFilePath(Application.ExeName) + 'close-hover.png';
end;
"And he piled upon the whale´s white hump - a sum of all the rage and hate felt by his whole race.
If his chest had been a cannon, he would have shot his heart upon it."
  Mit Zitat antworten Zitat
Benutzerbild von Störtebeker
Störtebeker

Registriert seit: 9. Jul 2007
398 Beiträge
 
#6

Re: SaveDialog --> Debugger Exception

  Alt 26. Aug 2007, 15:09
Es GEHT --> mit:

Delphi-Quellcode:
begin
Image1.Picture.loadfromfile(ExtractFilePath(Application.ExeName) + 'close-hover.png');
end;
Verbessere mich bitte, falls ich doch faslch liege.

Dank dir.
"And he piled upon the whale´s white hump - a sum of all the rage and hate felt by his whole race.
If his chest had been a cannon, he would have shot his heart upon it."
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#7

Re: SaveDialog --> Debugger Exception

  Alt 26. Aug 2007, 17:06
du liegst nicht falsch.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

Re: SaveDialog --> Debugger Exception

  Alt 26. Aug 2007, 17:21
Zitat von SirThornberry:
Der SaveDialog ändern den aktuellen Arbeitspfad.
Tausendmal gepredigt und immer noch wird es ignoriert: "Das Arbeitsverzeichnis muss nicht zwingend das Programmverzeichnis sein!"
Michael
Ein Teil meines Codes würde euch verunsichern.
  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 23:48 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