Windows - pastas de sistema |
Top Previous Next |
uses ShlObj
type TPastasdoSistema = Record AmbienteRede : string; Desktop : string; EnviarPara : string; Fontes : string; Iniciar : string; MenuIniciar : string; MeusDocumentos: string; Programas : string; Recentes : string; end;
function xPastasdoSistema: TPastasdoSistema; // função interna que captura a pasta function xFolder(C: integer): string; var ItemIDList: PItemIDList; begin SetLength(Result,MAX_PATH); SHGetSpecialFolderLocation(Application.Handle, C, ItemIDList); SHGetPathFromIDList(ItemIdList,PChar(Result)); Result := StrPas(PChar(Result)); // Tira sujeira do PCHAR end; begin with Result do begin AmbienteRede := xFolder(CSIDL_NETHOOD ) + '\'; MeusDocumentos := xFolder(CSIDL_PERSONAL ) + '\'; Desktop := xFolder(CSIDL_DESKTOP ) + '\'; Fontes := xFolder(CSIDL_FONTS ) + '\'; EnviarPara := xFolder(CSIDL_SENDTO ) + '\'; MenuIniciar := xFolder(CSIDL_STARTMENU) + '\'; Iniciar := xFolder(CSIDL_STARTUP ) + '\'; Programas := xFolder(CSIDL_PROGRAMS ) + '\'; Recentes := xFolder(CSIDL_RECENT ) + '\'; end; end; |