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].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rbase-l/b4373348-ad69-4fef-a3c5-995aee398cd9n%40googlegroups.com.