Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Bild in bestimmten Ordner abspeichern lassen (https://www.delphipraxis.net/103172-bild-bestimmten-ordner-abspeichern-lassen.html)

Overclocker 11. Nov 2007 19:01


Bild in bestimmten Ordner abspeichern lassen
 
Hi,

da es ja nicht sinnvoll ist, eine große Anzahl an Bildern in den BLOB Feldern einer MYSQL Datenbank zu speichern, habe ich mich entschlossen dies in Form vom quellcode zu machen.
D. h. ich öffne ein Bild mit einem OpenDialog in ein TImage.
Dann möchte ich das gleiche Bild in dem Ordner speichern lassen, wo die Exe Datei ist (allerdings in dem Unterordner "Profil").

Beispiel: die Exe Datei liegt in dem Ordner ...\Delphiprogramm\

dann möchte ich das Bild hier abspeichern lassen ...\Delphiprogramm\Profil


Nur wie stell ich das an den Pfad allgemein zu setzen sodass die Bilder hier gespeichert werden?

image1.Picture.SaveToFile(name.Text+vorname.text+' .jpg');

so habe ich schon angefangen doch wo kann ich den pfad eingeben, sodass der mir den Namen und Vorname in den Dateinamen reinschreibt (die Felder name und vorname sind DB Felder).

Vielen dank für eure Hilfe

Mfg

DeddyH 11. Nov 2007 19:04

Re: Bild in bestimmten Ordner abspeichern lassen
 
Erstmal: mit ExtractFilePath(ParamStr(0)) bekommst Du den Pfad zum eigenen Programm. Allerdings bekommst Du unter Vista Schwierigkeiten, wenn Du hier (oder in Unterordnern) schreiben möchtest. Und Du hast Daten in der DB und weißt nicht, wie Du sie auslesen kannst, oder habe ich das falsch verstanden?

SirThornberry 11. Nov 2007 19:09

Re: Bild in bestimmten Ordner abspeichern lassen
 
nicht nur Unter Vista hat man da Probleme. Auch unter Windows XP (welches seit mindestens 2003 auf dem Markt ist) hat man da Probleme wenn der Nutzer, nicht so leichtsinnig ist und als Admin arbeitet, und sein System ordentlich eingerichtet hat.

Overclocker 11. Nov 2007 19:13

Re: Bild in bestimmten Ordner abspeichern lassen
 
das mit dem auslesen des eigenen pfads ist schon mal ne super hilfe.

nein,in der datenbank will ich nur den pfad des bilds speichern. das bild selber will ich einlesen (wo der user das auswählt) und später dann automatisch in dem programmordner abspeichern lassen, sodass ich in der datenbank einen passenden pfad reinschreiben lassn kann, um das bild später wieder in einem timage öffnen lassen zu können :)

SirThornberry 11. Nov 2007 20:21

Re: Bild in bestimmten Ordner abspeichern lassen
 
Zitat:

...und später dann automatisch in dem programmordner abspeichern lassen,...
und genau das geht nicht. Du kannst nur dinge im Programme-Ordner speichern wenn du Administratorrechte hast. Und jeder vernünftige User arbeitet NICHT als Administrator

Nuclear-Ping 11. Nov 2007 22:21

Re: Bild in bestimmten Ordner abspeichern lassen
 
Wo ist es nicht sinnvoll, Bilder in einer Datenbank als BLOB zu speichern, statt als einzelne Dateien? Belegt doch beides genauso Festplattenspeicher ... einzelne kleine Dateien teilweise sogar mehr (Stichwort: Blockgröße) als eine große. Auch mal ganz davon abgesehen, dass sich die Bilder in der Datenbank besser verwalten lassen. :gruebel:

Wenn du die Daten aus einer Datenbank im Internet holst, dann macht es Sinn diese zu cachen. Aber hier würde ich - wie auch überall schon empfohlen - diese lieber unter Anwendungsdaten\DeinProgramm ablegen. Den Pfad kriegst du per MSDN-Library durchsuchenSHGetSpecialFolderLocation.

Overclocker 15. Nov 2007 19:36

Re: Bild in bestimmten Ordner abspeichern lassen
 
zu der aussage,dass man das nur als admin kann..

wieso ist es nicht möglihc,die bilder in dem ordner abspeichern zu lassen, wo die EXE datei von meinem geschriebenen programm liegt?

beispiel:
wo die exe liegt

C:\Dokumente und Einstellungen\XY\Desktop\Delphi\mysql prog\projekt1.exe

und da sollen dann die bilder gespeichert werden

C:\Dokumente und Einstellungen\XY\Desktop\Delphi\mysql prog\Bilder\bild1.jpg


wieso geht das nicht wenn man normaler user istu nd kein admin?normale user können doch auch abspeichern,versteh den sinn nicht ganz sorry

thkerkmann 15. Nov 2007 19:46

Re: Bild in bestimmten Ordner abspeichern lassen
 
Zitat:

Zitat von Overclocker
beispiel:
wo die exe liegt

C:\Dokumente und Einstellungen\XY\Desktop\Delphi\mysql prog\projekt1.exe

DAS ist nicht der übliche Programme Ordner.
Wir gehen hier davon aus, dass du später dein Programm unter c:\programme\... installierst, und da kann nur der Admin reinschreiben.

Wenn es natürlich keine installierbare Anwendung werden soll, ist das egal.

Gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:02 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