Einzelnen Beitrag anzeigen

Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#13

AW: application.exename

  Alt 26. Jul 2017, 12:22
Klasse!
Nur eine Kleinigkeit , Result sollte initialisiert werden.......




Bitteschön:
Delphi-Quellcode:
interface

uses
  System.IOUtils;

type
  TPathHelper = record helper for TPath
  private
  public
    function GetDesktopFolder: string;
    function GetStartMenuFolder: string;
  end;

implementation

uses
  Winapi.SHFolder, Winapi.ShlObj;

function TPathHelper.GetDesktopFolder: string;
var
  LStr: array[0 .. MAX_PATH] of Char;
begin
  SetLastError(ERROR_SUCCESS);
  Result := ''; // Wenn schon denn Schon
  if SHGetFolderPath(0, CSIDL_DESKTOPDIRECTORY, 0, 0, @LStr) = S_OK then
    Result := LStr;
end;

function TPathHelper.GetStartMenuFolder: string;
var
  LStr: array[0 .. MAX_PATH] of Char;
begin
  SetLastError(ERROR_SUCCESS);
 Result := ''; // Wenn schon denn Schon
  if SHGetFolderPath(0, CSIDL_STARTMENU, 0, 0, @LStr) = S_OK then
    Result := LStr;
end;
Ok jetzt weiß ich warum die Dinger verpöhnt sind - zumindest ich weiß nicht einmal wie man das benutzt.
Den Helper in eine Unit, diese einbinden wo die Funktionen daraus gebraucht werden und fertig.
Fritz Westermann
  Mit Zitat antworten Zitat