anchor.diff:    Result :=GetEnvironmentVariable('HOME');
     {$ENDIF}
     {$ELSE}
  +  {$IFDEF MSWINDOWS}
     Result := GetFolder(CSIDL_APPDATA); // c:\Users\(User Name)\AppData\Roaming
  +  {$ELSE}
  +  Result := TPath.GetDocumentsPath;
  +  {$ENDIF}
     {$ENDIF}
   end;
   
  -{$IFnDEF FPC}
  +{$IF (not Defined(FPC)) and (Defined(MSWINDOWS))}
   class function TFolderHelper.GetFolder(const aCSIDL: Integer): string;
   var
     FolderPath: array[0 .. MAX_PATH] of Char;
  
positive.code: 
  uses
  {$IFnDEF FPC}
    Windows, ShlObj,
    {$DEFINE FILEVERSIONINFO}
  {$ELSE}
    {$IFDEF WIN}
    Windows,
    {$DEFINE FILEVERSIONINFO}
    {$ENDIF}
    {LCLIntf, LCLType, LMessages,}
  {$ENDIF}
    SysUtils;
  
  {$I config.inc}
  
  {$IFnDEF FPC}
  function SHGetFolderPath(hwnd: HWND; csidl: Integer; hToken: THandle;
    dwFlags: DWord; pszPath: LPWSTR): HRESULT; stdcall;
    forward;
  
negative.code: 
    TFolderHelper = record
    strict private
      {$IF (not Defined(FPC)) and (Defined(MSWINDOWS))}
      class function GetFolder(const aCSIDL: Integer): string; static;
      {$ENDIF}
      class function GetAppDataFolder : string; static;
  