![]() |
Delphi-Version: XE2
Problem mit Umgebungsvariable
Hallo Leute,
ich bin (mal wieder) etwas ratlos... :-D Wenn ich diesen Codeschnipsel :
Code:
ausführen will, wird mir im Fenster zwar der Pfad , aber ohne die Laufwerksbezeichnung angezeigt :
showmessage(getenvironmentvariable('HOMEPATH')+'\Desktop\');
Code:
So verhält es sich (logischerweise) auch bei
\Users\Ondeth\Desktop\
Delphi-Quellcode:
- der Desktop bzw Programme darin werden nicht mehr geöffnet bzw gestartet, da die Laufwerksbezeichnung fehlt...
ShellExecute
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 ? :lol: Wäre für "Denkanstöße" dankbar :thumb: |
AW: Problem mit Umgebungsvariable
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? |
AW: Problem mit Umgebungsvariable
Delphi-Quellcode:
bringt mir aber doch eigentlich nichts , wenn ein Teil meiner Programmdateien noch auf dem Desktop liegen .... Oder doch? :?
TPath.GetHomePath
Jetzt bin ich verwirrt :-D |
AW: Problem mit Umgebungsvariable
Zitat:
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; |
AW: Problem mit Umgebungsvariable
Kein Problem :)
Jetzt, wenn man's so sieht, ist es eigentlich klar :-D Danke :thumb: |
AW: Problem mit Umgebungsvariable
Oder so:
Delphi-Quellcode:
VAR hd, hp : STRING;
BEGIN hd:= GetEnvironmentVariable('HOMEDRIVE'); hp:= GetEnvironmentVariable('HOMEPATH'); Memo1.lines.add(hd+hp+'\Desktop'); |
AW: Problem mit Umgebungsvariable
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?
|
AW: Problem mit Umgebungsvariable
@hathor Das hätte ich auch gesagt, nur funktioniert in diesem Programm die Umgebungsvariable HOMEDRIVE komischerweise nicht :wink:
@DeddyH Das stimmt allerdings - Bei Windows kann man sich nie wirklich sicher sein :-D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:40 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-2025 by Thomas Breitkreuz