Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Delphi darf auf C nichts erstellen (https://www.delphipraxis.net/132567-delphi-darf-auf-c-nichts-erstellen.html)

SyntaxXx 15. Apr 2009 08:41


Delphi darf auf C nichts erstellen
 
Hallo, und zwar bin ich gerade dabei, ei kleines Programm zu schriben.
Jetzt stoße ich af das Problem, das delphi keine Dateien bzw. .ini auf C: anlegen darf.

Jetzt wollte ich fragen, wie ich das nun ändern kann?

Ich denke mal die antwort ist leicht, aber meine Google treffer helfen mir nicht weiter.

Bernhard Geyer 15. Apr 2009 08:47

Re: Delphi darf auf C nichts erstellen
 
Glaskugel auspack: Du hast Vista und aktives UAC. Und dort darf nunmal kein normales Programm was direkt unter C:\ ablegegen.

fkerber 15. Apr 2009 08:47

Re: Delphi darf auf C nichts erstellen
 
Hi!

Das ist aber kein Delphi-Problem, sondern da scheint es ein Rechte-Problem bei dir zu geben.
Also es kann wohl kein Programm was auf C: erstellen...


Ciao, Frederic

SyntaxXx 15. Apr 2009 08:52

Re: Delphi darf auf C nichts erstellen
 
Kennt ihr denn eine schlaue möglichkeit um siche rzu gehen, das ein Pfad auch exestiert?
ich meine, es gibt ja durch aus leute, die nur eine Partition haben.
Und wie macht man das bei denen, den Daten auf die C estplatte erstellt werden?

ich könnte das zwar auf D erstellen, doch sobald jemand keine D Partition hat, wird ein Fehler auftauchen.

Wie mach eich das den jetzt am blödsten?

Luckie 15. Apr 2009 08:53

Re: Delphi darf auf C nichts erstellen
 
Warum willst du deine Ini-Datei im Root von C: ablegen? Damit niemand weiß zu welchem Programm sie gehört? Damit sich die Benutzer deies Programms ihr Einstellungen gegenseitig überschreiben?

Wie du das machst? In dem du wie alle anderen auch deine Konfigurationsdatei da erstellst, wo sie hinmgehört, ins Benutzerverzeichnis des Benutzers. Wie du den Pfad rausfindest und alles weitere solltest du über die suchfunktion des Forum finden können.

fkerber 15. Apr 2009 08:54

Re: Delphi darf auf C nichts erstellen
 
Hi!

Was genau willst du denn machen?

Ein Programm, das mir einfach auf C: was erstellt, würde bei mir sofort wieder von der Platte fliegen...


Ciao, Frederic

Jens Hartmann 15. Apr 2009 08:57

Re: Delphi darf auf C nichts erstellen
 
Adminrechte, nur das macht kein Sinn.

Zitat:

Zitat von SyntaxXx
ich könnte das zwar auf D erstellen, doch sobald jemand keine D Partition hat, wird ein Fehler auftauchen.

Aber was bitte hat das mit den Laufwerken zu tun.
Was willst Du den und wie speichern. Gib mal ein Paar Info´s

Ini.Dateien gehören ins Anwendungsverzeichnis oder so. Und ansonsten, solltest du dem User ja irgendwie die Möglichkeit geben einen Speicherort zu wählen.

Gruß Jens

SyntaxXx 15. Apr 2009 08:59

Re: Delphi darf auf C nichts erstellen
 
Nein^^

ich bin dabei ein Passwort saver zu machen.
Und die PWs sollen eben in einer .ini gespeichert werden.
Aber so wie ich das jetzt verstanden hab, dürfen nur keine dateien im Pfad C:\ erstellt werden.

C:\User würde also gehen?

Jens Hartmann 15. Apr 2009 09:02

Re: Delphi darf auf C nichts erstellen
 
Nein, Du musst diese in Datein ins Anwendungsverzeichnis speicher.

Wenn User Abhängig in USER und ansonsten in ALLUSERS.

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;

PS: Denk daran, das du eine INI-Datei ja lesen kannst. Und auch verschlüsseln ist nicht unbedingt sicher.

Gruß Jens

Angel4585 15. Apr 2009 09:02

Re: Delphi darf auf C nichts erstellen
 
Also soweit ich weis geht es unter C:\Program Files\ nicht, wies in anderen Ordnern aussieht weis ich jetzt nicht.
Erstell doch aus dem programm den Ordner und schau im Explorer was für Rechte der hat?


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:51 Uhr.
Seite 1 von 2  1 2      

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