AGB  ·  Datenschutz  ·  Impressum  







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

SaveDialog.Execute führt zu Delphi-Absturz

Ein Thema von TheMiller · begonnen am 27. Apr 2012 · letzter Beitrag vom 2. Mai 2012
Antwort Antwort
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#1

SaveDialog.Execute führt zu Delphi-Absturz

  Alt 27. Apr 2012, 17:24
Hallo,

hab mal wieder ein seltsames Problem. Ich rufe den SaveDialog über Execute auf, dieser erscheint und führt alles korrekt aus. Danach beende ich das Programm und beim Beenden verschwindet das ausgeführte Programm und Delphi "wartet auf Rückmeldung" in einer Endlosschleife. Mir bleibt nur übrig, es zu killen.

Der Dialog wird in einer ganz kleinen Prozedur aufgrufen (kein Thread). Kommentiere ich alles aus dieser Prozedur aus, schließt sich das Programm normal und Delphi "überlebt".

Kommentiere ich alles aus, außer das SaveDialog.Execute, tritt das o.g. Verhalten auf.

Es liegt aber irgendwie an der Exe bzw. dem Projekt. Wenn ich den gleichen, simplen Code in einem neuen Projekt aufrufe, dann klappt alles.

Delphi-Quellcode:
  if (SaveDialog1.Execute) then
  begin
    MessageDLG('ok', mtInformation, [mbOK], 0);
  end;
Könnt ihr mir helfen? Was könnte das nun wieder sein?

Danke im Voraus
  Mit Zitat antworten Zitat
haui95

Registriert seit: 1. Feb 2012
Ort: Niedersachsen
29 Beiträge
 
Delphi 7 Personal
 
#2

AW: SaveDialog.Execute führt zu Delphi-Absturz

  Alt 27. Apr 2012, 17:34
Guten Tag,
was genau möchtest du mit dem SaveDialog bewirken ?
Es ist ja eigentlich sinnfrei diesen SaveDialog auszuführen, nur um eine Information in einem Fenster anzuzeigen.
Vielleicht könntest du ein bisschen mehr von deinem Quelltext posten.

Mit freundlichem Gruß
Hauke
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#3

AW: SaveDialog.Execute führt zu Delphi-Absturz

  Alt 27. Apr 2012, 17:40
Hi,

ehm ja - eigentlich wollte ich mit dem SaveDialog schon eine Datei speichern. Nur zu Test-/Debugzwecken habe ich jegliche Code-Zeilen entfernt / auskommentiert, sodass nur diese zwei Zeilen übrig geblieben sind.

Ich wollte damit verdeutlichen, dass es nicht an meinem Code liegt (da dieser ja auskommentiert ist) und der Fehler auch dann auftritt, wenn nur die Methode "SaveDialog1.Execute" aufgerufen wird.

Dies ist aber nur in diesem Projekt so.

Ich starte die Exe, gehe auf exportieren und dann kommt auch gleich die SaveDialog-Zeile. Mehr mache ich nicht.

Was passiert wenn das Programm außerhalb der IDE ausgeführt wird?

Falls nur innerhalb der IDE würde ich auf den Virenscanner tippen? Evtl. Avira installiert?
Ehm wow: Außerhalb der IDE funktioniert es. Jetzt bin ich erstaunt. Avira ist installiert, hatte aber nie Probleme in der Hinsicht.

EDIT: Mit ausgeschaltetem Avira (Echtzeitscan deaktivieren) tritt das gleiche - falsche - Verhalten auf.

Danke

Geändert von TheMiller (27. Apr 2012 um 17:43 Uhr)
  Mit Zitat antworten Zitat
haui95

Registriert seit: 1. Feb 2012
Ort: Niedersachsen
29 Beiträge
 
Delphi 7 Personal
 
#4

AW: SaveDialog.Execute führt zu Delphi-Absturz

  Alt 27. Apr 2012, 18:02
Hmm…
ich habe bei mir jetzt auch den gleichen Quelltext eingefügt und auf einen Button gelegt, doch komischerweise läuft mein Delphi Programm beim Beenden nicht in den Wald, obwohl sich lediglich dieses Fenster zum Speichern öffnet und noch nicht einmal ein Message Dialog angezeigt wird. Hast du schon einmal versucht Delphi neu zu starten oder ein anderen Quelltext mit dem SaveDialog zu belegen. Probier mal diesen hier:

Delphi-Quellcode:
if SaveDialog1.Execute then
  ShowMessage('Datei: ' + SaveDialog1.FileName)
else ShowMessage('Speichervorgang abgebrochen');

MfG
Hauke

Geändert von haui95 (27. Apr 2012 um 18:06 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#5

AW: SaveDialog.Execute führt zu Delphi-Absturz

  Alt 27. Apr 2012, 18:29
Hi,

hab wieder alles auskommentiert und deinen Code eingefügt. Gleiches Verhalten. Ich habe zusätzlich auch mal alles auf den Events onCloseQuery und onClose auskommentiert. Auch das half nicht.

Das Compiler-Fenster schreibt beim Beenden des Programms - an der Stelle an der der Fehler auftritt:

Zitat von Compiler:
Modul entladen: MSVCR80.DLL. Prozess xxxxxxxxx.exe (2284)
An dieser Stelle hängt's immer.
  Mit Zitat antworten Zitat
haui95

Registriert seit: 1. Feb 2012
Ort: Niedersachsen
29 Beiträge
 
Delphi 7 Personal
 
#6

AW: SaveDialog.Execute führt zu Delphi-Absturz

  Alt 27. Apr 2012, 18:44
Hmm…
die msvcr80.dll Datei gehört zur C Runtime Library. Ich weiß jetzt nicht, ob Delphi die Runtimes von Microsoft braucht, um bestimmte Programme ausführen zu können ? Hast du in den uses in deinem Quelltext vielleicht irgendwelche Bibliotheken, die auf die C Runtime verweisen deklariert. Schau einmal nach, ob du dort irgendetwas findest. Vielleicht auch einmal bei deinen installierten Programmen und Updates nachschauen, ob du vielleicht keine Runtimes installiert hast. Aber ich gehe nicht davon aus, dass es daran liegt.
Wie gesagt starte Delphi noch einmal neu, und probiere es noch einmal. Vielleicht auch einmal Delphi mit Administratorrechten starten, sofern du Vista oder Windows 7 hast.

MfG
Hauke
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: SaveDialog.Execute führt zu Delphi-Absturz

  Alt 27. Apr 2012, 17:37
Was passiert wenn das Programm außerhalb der IDE ausgeführt wird?

Falls nur innerhalb der IDE würde ich auf den Virenscanner tippen? Evtl. Avira installiert?
Windows Vista - Eine neue Erfahrung in Fehlern.
  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 09:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz