ReactOS 0.4.16-dev-401-g45b008d
|
#include <wine/config.h>
#include <windef.h>
#include <winbase.h>
#include <shlobj.h>
#include <undocshell.h>
#include <shlwapi.h>
#include <sddl.h>
#include <strsafe.h>
#include <wine/debug.h>
#include <wine/unicode.h>
#include <assert.h>
#include <shlwapi_undoc.h>
#include <shellutils.h>
#include <userenv.h>
#include "pidl.h"
#include "shell32_main.h"
#include "shresdef.h"
Go to the source code of this file.
Classes | |
struct | CSIDL_DATA |
Macros | |
#define | WIN32_NO_STATUS |
#define | _INC_WINDOWS |
#define | COBJMACROS |
#define | _WIN32_WINNT _WIN32_WINNT_WS03 |
#define | VALID_SHORT_PATH_CHAR_CLASSES |
#define | MSDOS_8DOT3_LEN 12 /* MS-DOS 8.3 filename == length 12 */ |
#define | CSIDL_CONTACTS 0x0043 |
#define | CSIDL_DOWNLOADS 0x0047 |
#define | CSIDL_LINKS 0x004d |
#define | CSIDL_APPDATA_LOCALLOW 0x004e |
#define | CSIDL_SAVED_GAMES 0x0062 |
#define | CSIDL_SEARCHES 0x0063 |
Typedefs | |
typedef enum _NT_PRODUCT_TYPE | NT_PRODUCT_TYPE |
typedef enum _NT_PRODUCT_TYPE * | PNT_PRODUCT_TYPE |
typedef enum _CSIDL_Type | CSIDL_Type |
Enumerations | |
enum | _NT_PRODUCT_TYPE { NtProductWinNt = 1 , NtProductLanManNt , NtProductServer , NtProductWinNt = 1 , NtProductLanManNt , NtProductServer } |
enum | _CSIDL_Type { CSIDL_Type_User , CSIDL_Type_AllUsers , CSIDL_Type_CurrVer , CSIDL_Type_Disallowed , CSIDL_Type_NonExistent , CSIDL_Type_WindowsPath , CSIDL_Type_SystemPath , CSIDL_Type_SystemX86Path } |
Variables | |
static const BOOL | is_win64 = sizeof(void *) > sizeof(int) |
static const WCHAR | Application_DataW [] = L"Application Data" |
static const WCHAR | Local_Settings_Application_DataW [] = L"Local Settings\\Application Data" |
static const WCHAR | Local_Settings_HistoryW [] = L"Local Settings\\History" |
static const WCHAR | Local_Settings_Temporary_Internet_FilesW [] = L"Local Settings\\Temporary Internet Files" |
static const WCHAR | MusicW [] = L"Music" |
static const WCHAR | PicturesW [] = L"Pictures" |
static const WCHAR | Program_FilesW [] = L"Program Files" |
static const WCHAR | Program_Files_Common_FilesW [] = L"Program Files\\Common Files" |
static const WCHAR | Start_Menu_ProgramsW [] = L"Start Menu\\Programs" |
static const WCHAR | Start_Menu_Admin_ToolsW [] = L"Start Menu\\Programs\\Administrative Tools" |
static const WCHAR | Start_Menu_StartupW [] = L"Start Menu\\Programs\\StartUp" |
static const WCHAR | szSHFolders [] = L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders" |
static const WCHAR | szSHUserFolders [] = L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders" |
static const WCHAR | szKnownFolderDescriptions [] = L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\FolderDescriptions" |
static const WCHAR | szKnownFolderRedirections [] = L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders" |
static const CSIDL_DATA | CSIDL_Data [] |
#define _INC_WINDOWS |
Definition at line 29 of file shellpath.c.
#define _WIN32_WINNT _WIN32_WINNT_WS03 |
Definition at line 55 of file shellpath.c.
#define COBJMACROS |
Definition at line 30 of file shellpath.c.
#define CSIDL_APPDATA_LOCALLOW 0x004e |
Definition at line 1060 of file shellpath.c.
#define CSIDL_CONTACTS 0x0043 |
Definition at line 1057 of file shellpath.c.
#define CSIDL_DOWNLOADS 0x0047 |
Definition at line 1058 of file shellpath.c.
#define CSIDL_LINKS 0x004d |
Definition at line 1059 of file shellpath.c.
#define CSIDL_SAVED_GAMES 0x0062 |
Definition at line 1061 of file shellpath.c.
#define CSIDL_SEARCHES 0x0063 |
Definition at line 1062 of file shellpath.c.
#define VALID_SHORT_PATH_CHAR_CLASSES |
#define WIN32_NO_STATUS |
Definition at line 28 of file shellpath.c.
typedef enum _CSIDL_Type CSIDL_Type |
typedef enum _NT_PRODUCT_TYPE NT_PRODUCT_TYPE |
typedef enum _NT_PRODUCT_TYPE * PNT_PRODUCT_TYPE |
Enumerator | |
---|---|
CSIDL_Type_User | |
CSIDL_Type_AllUsers | |
CSIDL_Type_CurrVer | |
CSIDL_Type_Disallowed | |
CSIDL_Type_NonExistent | |
CSIDL_Type_WindowsPath | |
CSIDL_Type_SystemPath | |
CSIDL_Type_SystemX86Path |
Definition at line 1041 of file shellpath.c.
Enumerator | |
---|---|
NtProductWinNt | |
NtProductLanManNt | |
NtProductServer | |
NtProductWinNt | |
NtProductLanManNt | |
NtProductServer |
Definition at line 62 of file shellpath.c.
Definition at line 2202 of file shellpath.c.
Referenced by _SHGetUserProfilePath().
Definition at line 2437 of file shellpath.c.
Referenced by _SHGetUserShellFolderPath(), and SHGetFolderPathAndSubDirW().
Definition at line 2332 of file shellpath.c.
Referenced by _SHRegisterFolders(), and SHGetFolderPathAndSubDirW().
Definition at line 2133 of file shellpath.c.
Referenced by SHGetFolderPathAndSubDirW().
Definition at line 2017 of file shellpath.c.
Referenced by _SHGetAllUsersProfilePath(), _SHGetCurrentVersionPath(), and _SHGetUserProfilePath().
|
static |
Definition at line 2387 of file shellpath.c.
Referenced by _SHExpandEnvironmentStrings().
Definition at line 1981 of file shellpath.c.
Referenced by _SHExpandEnvironmentStrings().
|
static |
Definition at line 2243 of file shellpath.c.
Referenced by _SHRegisterFolders(), and SHGetFolderPathAndSubDirW().
|
static |
Definition at line 1898 of file shellpath.c.
Referenced by _SHGetAllUsersProfilePath(), and _SHGetUserProfilePath().
Definition at line 2372 of file shellpath.c.
Referenced by _SHExpandEnvironmentStrings().
Definition at line 3036 of file shellpath.c.
Referenced by SHELL_RegisterShellFolders().
|
static |
Definition at line 2866 of file shellpath.c.
Referenced by _SHRegisterCommonShellFolders(), and _SHRegisterUserShellFolders().
Definition at line 2968 of file shellpath.c.
Referenced by SHELL_RegisterShellFolders().
|
static |
Definition at line 71 of file shellpath.c.
Referenced by _SHGetDefaultValue().
Definition at line 577 of file shellpath.c.
Referenced by IsLFNDriveAW().
Definition at line 639 of file shellpath.c.
Definition at line 591 of file shellpath.c.
Referenced by IsLFNDriveA(), IsLFNDriveAW(), and PathQualifyExW().
Definition at line 407 of file shellpath.c.
Definition at line 736 of file shellpath.c.
Referenced by FinishDlgProc().
Definition at line 567 of file shellpath.c.
Definition at line 423 of file shellpath.c.
Referenced by PathIsExeA().
Definition at line 434 of file shellpath.c.
Referenced by PathIsExeW(), and SHPathGetExtensionW().
Definition at line 467 of file shellpath.c.
Referenced by PathGetShortPathAW().
Definition at line 497 of file shellpath.c.
Definition at line 482 of file shellpath.c.
Referenced by PathGetShortPathAW().
Definition at line 521 of file shellpath.c.
Referenced by PathIsExeAW().
Definition at line 557 of file shellpath.c.
Definition at line 539 of file shellpath.c.
Referenced by FileTypesDlg_InsertToLV(), FindExecutableW(), CFileDefExt::InitGeneralPage(), COpenWithMenu::Initialize(), PathIsExeAW(), and SHELL_execute().
Definition at line 511 of file shellpath.c.
|
static |
Definition at line 652 of file shellpath.c.
Referenced by PathMakeUniqueNameAW().
BOOL WINAPI PathMakeUniqueNameAW | ( | LPVOID | lpszBuffer, |
DWORD | dwBuffSize, | ||
LPCVOID | lpszShortName, | ||
LPCVOID | lpszLongName, | ||
LPCVOID | lpszPathName | ||
) |
Definition at line 684 of file shellpath.c.
|
static |
Definition at line 668 of file shellpath.c.
Referenced by PathMakeUniqueNameAW().
|
static |
Definition at line 971 of file shellpath.c.
Referenced by PathProcessCommandAW().
LONG WINAPI PathProcessCommandAW | ( | LPCVOID | lpszPath, |
LPVOID | lpszBuff, | ||
DWORD | dwBuffSize, | ||
DWORD | dwFlags | ||
) |
Definition at line 1003 of file shellpath.c.
|
static |
Definition at line 987 of file shellpath.c.
Referenced by PathProcessCommandAW().
Definition at line 808 of file shellpath.c.
Referenced by PathQualifyAW().
Definition at line 829 of file shellpath.c.
|
static |
Definition at line 158 of file shellpath.c.
Referenced by PathQualifyW(), and PathResolveW().
Definition at line 820 of file shellpath.c.
Referenced by PathQualifyA(), and PathQualifyAW().
Definition at line 453 of file shellpath.c.
Definition at line 837 of file shellpath.c.
Referenced by PathResolveAW().
Definition at line 960 of file shellpath.c.
Definition at line 883 of file shellpath.c.
Referenced by FindExecutableW(), PathResolveA(), PathResolveAW(), and CShellLink::SetTargetFromPIDLOrPath().
|
static |
Definition at line 120 of file shellpath.c.
Referenced by PathResolveW().
BOOL WINAPI PathYetAnotherMakeUniqueName | ( | LPWSTR | buffer, |
LPCWSTR | path, | ||
LPCWSTR | shortname, | ||
LPCWSTR | longname | ||
) |
Definition at line 699 of file shellpath.c.
Referenced by BrFolder_NewFolder(), CNewMenu::CreateNewFolder(), CDefaultContextMenu::DoCreateNewFolder(), CDeskLinkDropHandler::Drop(), FinishDlgProc(), loadShell32(), and CNewMenu::NewItemByNonCommand().
Definition at line 1859 of file shellpath.c.
Referenced by CDesktopFolder::ShellUrlParseDisplayName().
Definition at line 3064 of file shellpath.c.
Referenced by DllRegisterServer().
HRESULT WINAPI SHGetFolderLocation | ( | HWND | hwndOwner, |
int | nFolder, | ||
HANDLE | hToken, | ||
DWORD | dwReserved, | ||
LPITEMIDLIST * | ppidl | ||
) |
Definition at line 3150 of file shellpath.c.
Referenced by CBandSiteMenu::_CreateBuiltInISFBand(), CShellMenuCallback::AddStartMenuItems(), BrFolder_OnInitDialog(), LoadRdpSettingsFromFile(), loadShell32(), SaveRdpSettingsToFile(), SHCreateFromDesktop(), CDesktopFolder::ShellUrlParseDisplayName(), SHEmptyRecycleBinW(), SHGetSpecialFolderLocation(), START_TEST(), TestCommandLine(), and TestCompareIDList().
HRESULT WINAPI SHGetFolderPathA | ( | HWND | hwndOwner, |
int | nFolder, | ||
HANDLE | hToken, | ||
DWORD | dwFlags, | ||
LPSTR | pszPath | ||
) |
Definition at line 2836 of file shellpath.c.
Referenced by ini_absent(), ini_present(), loadShell32(), pf_exists(), ppc_present(), SHGetSpecialFolderPathA(), test_profile_items(), test_SHGetFolderPathA(), and test_SHGetFolderPathAndSubDirA().
HRESULT WINAPI SHGetFolderPathAndSubDirA | ( | HWND | hwndOwner, |
int | nFolder, | ||
HANDLE | hToken, | ||
DWORD | dwFlags, | ||
LPCSTR | pszSubPath, | ||
LPSTR | pszPath | ||
) |
Definition at line 2602 of file shellpath.c.
Referenced by test_SHGetFolderPathAndSubDirA().
HRESULT WINAPI SHGetFolderPathAndSubDirW | ( | HWND | hwndOwner, |
int | nFolder, | ||
HANDLE | hToken, | ||
DWORD | dwFlags, | ||
LPCWSTR | pszSubPath, | ||
LPWSTR | pszPath | ||
) |
Definition at line 2654 of file shellpath.c.
Referenced by CBandSiteMenu::_GetQLaunchPidl(), CreateShortcuts(), SHGetFolderPathAndSubDirA(), SHGetFolderPathW(), and ThemePageDlgProc().
HRESULT WINAPI SHGetFolderPathW | ( | HWND | hwndOwner, |
int | nFolder, | ||
HANDLE | hToken, | ||
DWORD | dwFlags, | ||
LPWSTR | pszPath | ||
) |
Definition at line 2589 of file shellpath.c.
Referenced by _SHRegisterFolders(), AutoStartupApplications(), BrFolder_NewFolder(), CJournaledTestList::CJournaledTestList(), create_ie_menu(), create_profile_directory(), CreateObjectsFromPersistFolder(), DllRegisterServer(), FILEDLG95_InitControls(), format_filelist_filename(), GetDefaultDownloadDirectory(), GetDefaultUserSendTo(), Initialize(), CFontExt::Initialize(), LoadThemes(), OnAddStartMenuItems(), OnAdvancedStartMenuItems(), OnBrowseButton(), RecentHasShortcut(), RegisterTypeLibraries(), set_installer_properties(), Settings_GetOutputPath(), RegistrySettings::SetWallpaper(), SHGetFolderLocation(), SHGetFolderPathA(), SHGetSpecialFolderPathW(), test_namespace(), TestDefaultFormat(), and testRegStoreSavedCerts().
Definition at line 1845 of file shellpath.c.
Referenced by Shell_ParseSpecialFolder().
HRESULT WINAPI SHGetSpecialFolderLocation | ( | HWND | hwndOwner, |
INT | nFolder, | ||
LPITEMIDLIST * | ppidl | ||
) |
Definition at line 3257 of file shellpath.c.
Referenced by _GetDocumentsPidl(), CShellMenuCallback::AddOrSetMenuItem(), DoGetPidl(), DoInitAliasPIDLs(), DoTestEntry(), DynamicSHGetSpecialFolderPathW(), ebrowser_browse_to_desktop(), FILEDLG95_InitControls(), FILEDLG95_LOOKIN_Init(), FILEDLG95_OnWMCommand(), filedlg_collect_places_pidls(), GetFavoritesFolder(), GetFavsLocation(), GetMergedFolder(), GetParsingName(), CSendToMenu::GetSpecialFolder(), IShellBrowserImpl_Construct(), loadShell32(), MRUList_PidlList_0(), CACListISF::NextLocation(), CShellMenuCallback::OnGetContextMenu(), PidlBrowse(), CAddressEditBox::PopulateComboBox(), RSHELL_CStartMenu_CreateInstance(), SHAddToRecentDocs(), SHCloneSpecialIDList(), Shell_ParsePrinterName(), SHELL_ShowItemIDListProperties(), SHExplorerParseCmdLine(), SpecialFolderPath::SpecialFolderPath(), START_TEST(), test_ACListISF_FAVORITES(), test_ACListISF_MYCOMPUTER(), test_get_file_info_iconlist(), test_namespace(), test_parameters(), test_printers_folder(), test_SHCreateShellItem(), test_SHCreateShellItemArray(), test_ShellItemBindToHandler(), test_ShellItemGetAttributes(), test_SHGetIDListFromObject(), test_SHGetNameFromIDList(), test_SHGetPathFromIDList(), VariantToIdlist(), and WshCollection_Item().
Definition at line 3079 of file shellpath.c.
Referenced by get_cache_path(), init_strings(), loadShell32(), main(), test_BindToObject(), test_find_file(), and test_GetDisplayName().
Definition at line 3092 of file shellpath.c.
Referenced by cache_containers_init(), CreateSendToMyDocuments(), delhist_on_command(), DoBuildFilesAndDirs(), DoGetPidl(), CCopyMoveToMenu::DoRealFileOp(), CMyDocsDropHandler::Drop(), CDeskLinkDropHandler::Drop(), CDesktopFolder::FinalConstruct(), get_csidl_dir(), GetFsPathFromIDList(), GetSpecialPath(), GetStorageDirectory(), CFSFolder::InitializeEx(), InitPropertyBag_IPropertyBag_Read(), IsPidlPrograms(), CDesktopFolderViewCB::MessageSFVCB(), CShellMenuCallback::OnExec(), profile_items_callback(), SHAddToRecentDocs(), SHGetFolderLocation(), START_TEST(), test_FolderShortcut(), test_ITEMIDLIST_format(), test_ParseDisplayName(), test_SHCreateShellItemArray(), and test_SHGetPathFromIDList().
Definition at line 445 of file shellpath.c.
WINE_DEFAULT_DEBUG_CHANNEL | ( | shell | ) |
Definition at line 1020 of file shellpath.c.
|
static |
Definition at line 1074 of file shellpath.c.
Referenced by _SHGetAllUsersProfilePath(), _SHGetCurrentVersionPath(), _SHGetDefaultValue(), _SHGetUserProfilePath(), _SHRegisterFolders(), SHGetFolderPathAndSubDirW(), and SHGetSpecialFolderID().
Definition at line 59 of file shellpath.c.
Referenced by _SHGetCurrentVersionPath(), _SHGetDefaultValue(), get_classes_root_hkey(), test_CoGetPSClsid(), test_register_typelib(), test_SHGetFolderPathA(), and test_stub().
Definition at line 1021 of file shellpath.c.
Definition at line 1022 of file shellpath.c.
|
static |
Definition at line 1023 of file shellpath.c.
Definition at line 1024 of file shellpath.c.
Definition at line 1025 of file shellpath.c.
Definition at line 1027 of file shellpath.c.
Definition at line 1026 of file shellpath.c.
Definition at line 1029 of file shellpath.c.
Definition at line 1028 of file shellpath.c.
Definition at line 1030 of file shellpath.c.
|
static |
Definition at line 1037 of file shellpath.c.
|
static |
Definition at line 1038 of file shellpath.c.
|
static |
Definition at line 1034 of file shellpath.c.
Referenced by _SHGetUserShellFolderPath(), _SHRegisterCommonShellFolders(), and _SHRegisterUserShellFolders().
|
static |
Definition at line 1035 of file shellpath.c.
Referenced by _SHGetUserShellFolderPath(), _SHRegisterCommonShellFolders(), and _SHRegisterUserShellFolders().