Thx I will take a look. Dan Goldberg
From: [email protected] <[email protected]> On Behalf Of [email protected] Sent: Wednesday, August 3, 2022 1:18 PM To: RBASE-L <[email protected]> Subject: [RBASE-L] - Re: my documents folder So here is from 2008 stuff: {demo of SHGetSpecialFolderPath function mbyerley 6/1/2008 } -- These are a few of the Special Folders CSIDL Constant Value SET VAR csidl_personal Integer = 5 SET VAR csidl_deskdir Integer = 16 SET VAR windows Integer = 36 SET VAR common_startmenu Integer = 22 SET VAR max_path Integer = 260 SET VAR lngfolderfound Integer = NULL SET VAR strpath TEXT = NULL SET VAR specfolder TEXT = NULL IF (chkfunc('SHGetSpecialFolderPathA')) = 0 THEN STDCALL function 'SHGetSpecialFolderPathA' ALIAS 'SHGetSpecialFolderPath' + (Integer, Integer, ptr TEXT (260), Integer) : Integer ENDIF { Set the value of the Special Folder you want the Path Returned From In this Example, the "All Users\Start Menu" folder. } -- just uncomment one of the following to see results. SET VAR lngfolder = .common_startmenu --SET VAR lngfolder = .csidl_personal --SET VAR lngfolder = .windows --SET VAR lngfolder = .csidl_deskdir { Set the variable strpath to Null. strpath is passed by Reference and is filled with the PATH in the function. If you wanted to Create the Special Folder if it is NOT FOUND, you would change the first 0 in the DLCALL argument to a NON ZERO value.} lngfolderfound = (dlcall('Shell32', 'SHGetSpecialFolderPathA', 0, lngfolder, strpath, 0)) IF lngfolderfound > 0 THEN -- The strpath var has to be SGET to omit the trailing nulls from the BUFFER SET VAR specfolder = .strpath ENDIF PAUSE 2 USING .specfolder RETURN The following is the constant values for all the special folders if you care to know: Begin { A List of CSIDL Constant values to use in the SHGetSpecialFolderPath function} -- <desktop> SET VAR desktop Integer = 0 -- Internet Explorer (icon on desktop) SET VAR internet Integer = 1 -- Start Menu\Programs SET VAR programs Integer = 2 -- My Computer\Control Panel SET VAR controls Integer = 3 -- My Computer\Printers SET VAR PRINTERS Integer = 4 -- My Documents SET VAR personal Integer = 5 -- <user name>\Favorites SET VAR favorites Integer = 6 -- Start Menu\Programs\Startup SET VAR start_up Integer = 7 -- <user name>\Recent SET VAR recent Integer = 8 -- <user name>\SendTo SET VAR sendto Integer = 9 -- <desktop>\Recycle Bin SET VAR bitbucket Integer = 10 -- <user name>\Start Menu SET VAR startmenu Integer = 11 -- logical "My Documents" desktop icon SET VAR mydocuments Integer = 12 -- "My Music" folder SET VAR mymusic Integer = 13 -- "My Videos" folder SET VAR myvideo Integer = 14 -- <user name>\Desktop SET VAR desktop_dir Integer = 16 -- My Computer SET VAR DRIVES Integer = 17 -- Network Neighborhood (My Network Places) SET VAR network Integer = 18 -- <user name>\nethood SET VAR nethood Integer = 19 -- windows\fonts SET VAR FONTS Integer = 20 -- templates SET VAR templates Integer = 21 -- All Users\Start Menu SET VAR common_startmenu Integer = 22 -- All Users\Start Menu\Programs SET VAR common_prgs Integer = 23 -- All Users\Startup SET VAR common_startup Integer = 24 -- All Users\Desktop SET VAR common_desktopdir Integer = 25 -- <user name>\Application Data SET VAR appdata Integer = 26 -- <user name>\PrintHood SET VAR printhood Integer = 27 -- <user name>\Local Settings\Application Data (non roaming) SET VAR local_appdata Integer = 28 -- non localized startup SET VAR alt_startup Integer = 29 -- non localized common startup SET VAR common_altstartup Integer = 30 SET VAR common_favorites Integer = 31 SET VAR internet_cache Integer = 32 SET VAR cookies Integer = 33 SET VAR history Integer = 34 -- All Users\Application Data SET VAR common_appdata Integer = 35 -- GetWindowsDirectory() SET VAR windows Integer = 36 -- GetSystemDirectory() SET VAR system_dir Integer = 37 -- C:\Program Files SET VAR prg_files Integer = 38 -- C:\Program Files\My Pictures SET VAR mypictures Integer = 39 -- USERPROFILE SET VAR profile Integer = 40 -- x86 system directory on RISC SET VAR system86 Integer = 41 -- x86 C:\Program Files on RISC SET VAR prg_files86 Integer = 42 -- C:\Program Files\Common SET VAR prg_files_common Integer = 43 -- x86 Program Files\Common on RISC SET VAR prg_files_common86 Integer = 44 -- All Users\Templates SET VAR common_templates Integer = 45 -- All Users\Documents SET VAR common_documents Integer = 46 -- All Users\Start Menu\Programs\Administrative Tools SET VAR common_admintools Integer = 47 -- <user name>\Start Menu\Programs\Administrative Tools SET VAR admintools Integer = 48 -- Network and Dial-up Connections SET VAR connections Integer = 49 -- All Users\My Music SET VAR common_music Integer = 53 -- All Users\My Pictures SET VAR common_pictures Integer = 54 -- All Users\My Video SET VAR common_video Integer = 55 -- Resource Directory SET VAR resources Integer = 56 -- Localized Resource Directory SET VAR resources_loclized Integer = 57 -- Links to All Users OEM specific apps SET VAR common_oem_links Integer = 58 -- USERPROFILE\Local Settings\Application Data\Microsoft\CD Burning SET VAR cdburn_area Integer = 59 -- unused Integer = &H3C -- Computers Near Me (computered from Workgroup membership) SET VAR computers_near_me Integer = 61 -- combine with value to force folder creation in SHGetFolderPath() SET VAR flag_create Integer = 32768 RETURN End On Tuesday, August 2, 2022 at 10:07:36 AM UTC-4 dang wrote: I currently use this variable to get the desktop folder location. SET VAR vfile1 =(ENVVAL('userprofile') + '\Desktop\') I am needing to get the same for the users documents folder. anyone know what the enval is for the users documents folder? TIA Dan Goldberg -- For group guidelines, visit http://www.rbase.com/support/usersgroup_guidelines.php --- You received this message because you are subscribed to the Google Groups "RBASE-L" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]<mailto:[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/rbase-l/b4373348-ad69-4fef-a3c5-995aee398cd9n%40googlegroups.com<https://groups.google.com/d/msgid/rbase-l/b4373348-ad69-4fef-a3c5-995aee398cd9n%40googlegroups.com?utm_medium=email&utm_source=footer>. -- For group guidelines, visit http://www.rbase.com/support/usersgroup_guidelines.php --- You received this message because you are subscribed to the Google Groups "RBASE-L" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/rbase-l/2E4830CEC16615458329D3D83342F8D0014F0A01AF%40EXCHANGE10.

