AGB  ·  Datenschutz  ·  Impressum  







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

Problem mit Umgebungsvariable

Ein Thema von Ondeth · begonnen am 16. Sep 2013 · letzter Beitrag vom 16. Sep 2013
Antwort Antwort
Ondeth

Registriert seit: 7. Mär 2013
22 Beiträge
 
Delphi XE3 Starter
 
#1

Problem mit Umgebungsvariable

  Alt 16. Sep 2013, 11:41
Delphi-Version: XE2
Hallo Leute,
ich bin (mal wieder) etwas ratlos...

Wenn ich diesen Codeschnipsel :
Code:
showmessage(getenvironmentvariable('HOMEPATH')+'\Desktop\');
ausführen will, wird mir im Fenster zwar der Pfad , aber ohne die Laufwerksbezeichnung angezeigt :
Code:
\Users\Ondeth\Desktop\
So verhält es sich (logischerweise) auch bei ShellExecute - der Desktop bzw Programme darin werden nicht mehr geöffnet bzw gestartet, da die Laufwerksbezeichnung fehlt...

Die Umgebungsvariable HOMEDRIVE funktioniert in diesem Programm plötzlich gar nicht mehr.

Hat jemand eine Idee, woran es hängen könnte? - Unfähigkeit meinerseits oder von Delphi ?

Wäre für "Denkanstöße" dankbar
Max
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
10.995 Beiträge
 
Delphi 12 Athens
 
#2

AW: Problem mit Umgebungsvariable

  Alt 16. Sep 2013, 11:51
Bei mir hat HOMEPATH auch kein Laufwerk - aber schon im Environment nicht. Daher kann Delphi da auch nicht mehr rausholen.

Warum verwendest du nicht TPath.GetHomePath aus IOUtils oder wenigstens GetHomePath aus SysUtils?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Ondeth

Registriert seit: 7. Mär 2013
22 Beiträge
 
Delphi XE3 Starter
 
#3

AW: Problem mit Umgebungsvariable

  Alt 16. Sep 2013, 12:12
TPath.GetHomePath bringt mir aber doch eigentlich nichts , wenn ein Teil meiner Programmdateien noch auf dem Desktop liegen .... Oder doch?

Jetzt bin ich verwirrt
Max
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
10.995 Beiträge
 
Delphi 12 Athens
 
#4

AW: Problem mit Umgebungsvariable

  Alt 16. Sep 2013, 12:28
[DELPHI]Jetzt bin ich verwirrt
Sorry, das mit dem Desktop hatte ich nicht richtig wahrgenommen.

In dem Fall kann man aber selbst Hand anlegen:

Delphi-Quellcode:
uses
  Winapi.SHFolder, Winapi.ShlObj;

function GetDesktopPath: string;
var
  LStr: array[0 .. MAX_PATH] of Char;
begin
  SetLastError(ERROR_SUCCESS);

  if SHGetFolderPath(0, CSIDL_DESKTOPDIRECTORY, 0, 0, @LStr) = S_OK then
    Result := LStr;
end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Ondeth

Registriert seit: 7. Mär 2013
22 Beiträge
 
Delphi XE3 Starter
 
#5

AW: Problem mit Umgebungsvariable

  Alt 16. Sep 2013, 12:33
Kein Problem

Jetzt, wenn man's so sieht, ist es eigentlich klar

Danke
Max
  Mit Zitat antworten Zitat
hathor
(Gast)

n/a Beiträge
 
#6

AW: Problem mit Umgebungsvariable

  Alt 16. Sep 2013, 13:38
Oder so:

Delphi-Quellcode:
VAR hd, hp : STRING;
BEGIN
hd:= GetEnvironmentVariable('HOMEDRIVE');
hp:= GetEnvironmentVariable('HOMEPATH');
Memo1.lines.add(hd+hp+'\Desktop');
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Problem mit Umgebungsvariable

  Alt 16. Sep 2013, 13:41
Das würde ich eher nicht empfehlen. Wer garantiert einem, dass der Desktop nicht in Windows 9/10/11 plötzlich "UserDesktop" oder "WerKratztMichMalHinten" heißt?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Ondeth

Registriert seit: 7. Mär 2013
22 Beiträge
 
Delphi XE3 Starter
 
#8

AW: Problem mit Umgebungsvariable

  Alt 16. Sep 2013, 13:45
@hathor Das hätte ich auch gesagt, nur funktioniert in diesem Programm die Umgebungsvariable HOMEDRIVE komischerweise nicht

@DeddyH Das stimmt allerdings - Bei Windows kann man sich nie wirklich sicher sein
Max
  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 22:21 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