Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Programm macht Probleme beim Start aus Startmenü heraus (https://www.delphipraxis.net/64585-programm-macht-probleme-beim-start-aus-startmenue-heraus.html)

davar 5. Mär 2006 18:10


Programm macht Probleme beim Start aus Startmenü heraus
 
Hallo Leute,

nach wochenlangen abenden, nächten und..... na ihr wisst ja.. ich hab nun ein Programm fertig und habe mit dem Install Shield Express eine Installationsversion erstellt. Mein Problem: das Programm macht Probleme, wenn man es vom Startmenü aus aufruft.

Das merwkürdige an der Sache: ruft man das Programm über den Explorer auf, läuft es prima.

Also habe ich in die Eigenschaften der Verknüpfung reingeschaut, dort steht: "Ausführen in: C:\PROGRA~1\.....". Ändere ich nun den Inhalt auf "C:\PROGRAMME\....", dann läuft es auch ganz normal.

Also, was muss ich in diesem Fall tun?


MfG

davar

markusj 5. Mär 2006 18:35

Re: Programm macht Probleme beim Start aus Startmenü heraus
 
Das hat was mit DOS-Kompatiblen Dateinamen zu tun, aber wie man's abstellt weis ich nicht, ich nutze InnoSetup und das geht ohne Probs :)

mfG

Markus

davar 6. Mär 2006 07:28

Re: Programm macht Probleme beim Start aus Startmenü heraus
 
Zitat:

Zitat von markusj
Das hat was mit DOS-Kompatiblen Dateinamen zu tun, aber wie man's abstellt weis ich nicht, ich nutze InnoSetup und das geht ohne Probs :)

mfG

Markus


Also jetzt hab ich mich mal ne Weile mit InnoSetup beschäftigt, aber da scheint die Installation von BDE ein Problem zu sein.

Ich würd ja gern beim InstallShield bleiben, damit hatte ich bisher keine Probleme..

Edit:
inzwischen bin ich mir fast sicher, es liegt an den Queries. Kann es sein, dass TQuery nicht mit den DOS-Pfaden umgehen kann?

MfG

davar

davar 6. Mär 2006 15:08

Re: Programm macht Probleme beim Start aus Startmenü heraus
 
Also jetzt habe ich es mit InnoSetup gemacht, aber da habe ich auch Probleme.

Wenn ich das Programm über das Startmenü öffne, bekomme ich Fehlermeldungen, weil es die Dateien und Verzeichnisse nicht finden kann, die es beim ersten Start anlegt. Und wenn ich ein Desktopsymbol erstelle und von dort aus öffne, werden diese Dateien auf dem Desktop erstellt. Auch nicht unbedingt toll..

Flocke 6. Mär 2006 16:43

Re: Programm macht Probleme beim Start aus Startmenü heraus
 
Dann nimmt dein Programm wohl fälschlicherweise an, der aktuelle Pfad sei immer der Programmpfad. Wenn du als Dateinamen nur "bla.ini" angibst, dann kann die ja wer-weiß-wo liegen. Schon ein einfacher OpenDialog ändert das aktuelle Verzeichnis.

Möglichkeit 1: Ändere alle Stellen mit Dateinamen auf absolute Pfade (also z.B. ExtractFilePath(ParamStr(0)) benutzen)
Möglichkeit 2: Wechsle jeweils *VOR* dem Öffnen einer Datei in das Programmverzeichnis.

//NACHTRAG:

Da es bei dir hauptsächlich mit den Verknüpfungen nicht klappt - du musst "Ausführen in" (also das Verzeichnis) auf das Programmverzeichnis setzen. Wär' zwar nur 'ne Krücke, müsste aber erstmal gehen.

markusj 6. Mär 2006 17:30

Re: Programm macht Probleme beim Start aus Startmenü heraus
 
Sollte InnoSetup automatisch machen, oder?

mfG

Markus

davar 6. Mär 2006 18:18

Re: Programm macht Probleme beim Start aus Startmenü heraus
 
Zitat:

Zitat von markusj
Sollte InnoSetup automatisch machen, oder?

mfG

Markus

Sollte.. Tut es aber nicht..

Ich habe das Problem mit SetCurrentDir gelöst, das bei Programmstart aufgerufen wird.

Genauer gesagt:

Delphi-Quellcode:
SetCurrentDir(ExtractFilePath(Application.ExeName));
MfG

davar


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:49 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 by Thomas Breitkreuz