AGB  ·  Datenschutz  ·  Impressum  







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

Delphi darf auf C nichts erstellen

Ein Thema von SyntaxXx · begonnen am 15. Apr 2009 · letzter Beitrag vom 15. Apr 2009
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Luckie
Luckie

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

Re: Delphi darf auf C nichts erstellen

  Alt 15. Apr 2009, 09:04
Zitat von SyntaxXx:
C:\User würde also gehen?
Wenn dann C:\User\<Benutzername>\Anwnedungsdaten\<DeinProgra mmname>\Ini-Datei

Aber bitte nicht hardcoden. Auf meinem System gibt es diesen Pfad nämlich nicht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#12

Re: Delphi darf auf C nichts erstellen

  Alt 15. Apr 2009, 09:04
Hi!

Anwendungsverzeichnis ist vllt. ein etwas missverständliches Wort, aber ich denke du meinst das richtige.
Also nicht unter C:\Programme\etc

Ich empfehle die Lektüre des folgenden Artikels:
http://www.michael-puff.de/Artikel/HOMEDIR.shtml



Ciao, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Delphi darf auf C nichts erstellen

  Alt 15. Apr 2009, 09:09
Zitat von Jens Hartmann:
Schau die mal folgende Funktion an, damit kannst Du diesen Pfad ermitteln und anschließend nutzen.

Delphi-Quellcode:
{Speicherpfad ermitteln um Speicherziel der User Einstellungen festzulegen}
function GetSpecialFolder (aFolder: Integer): String;
var
  pIdL: PItemIDList;
  Path: Array [0..Max_Path] of Char;
  Allocator: IMalloc;
begin
  // ItemIdList für den Ordner holen
  SHGetSpecialFolderLocation (0, aFolder, pIdL);

  // ItemIdList in String umwandeln lassen
  SHGetPathFromIDList (pIDL, Path);

  // Speicher wieder freigeben
  if Succeeded (SHGetMalloc (Allocator)) then
    begin
      Allocator.Free (pIdL);
      {$IFDEF VER100}
      Allocator.Release;
      {$ENDIF}
    end;
  Speicherort := Path;
  Result := Path;
end;
Wenn du ihm jetzt noch sagst mit welcher CSIDL er die Funktion aufrufen muss.

Den Pfad für die benutzerspezifischen Anwendungsdaten bekommt man mit der CSIDL CSIDL_APPDATA. In dem Verzeichnis legt man ein Unterverzeichnis an, das so heißt wie das Programm und dort hinein kommt die Ini-Datei.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#14

Re: Delphi darf auf C nichts erstellen

  Alt 15. Apr 2009, 09:13
Ich kann Die auch noch folgendes Empfehlen...

Anwendungsdaten

oder...

Ich hatte auch mal so ein Problem

[EDIT] Sorry, so wird es aufgerufen

  GetSpecialFolder(CSIDL_COMMON_APPDATA); Gruß Jens
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 18:27 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