Commit Graph

246 Commits

Author SHA1 Message Date
Sven Baars 48e6f8f99d shell32: Don't return a path from SHGetKnownFolderPath when it can not be created.
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 19:57:27 +01:00
Alexandre Julliard 4a6855a575 shell32: Re-add support for expanding ALLUSERSPROFILE for backward compatibility.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-06 17:07:15 +02:00
Alexandre Julliard ceea5bda14 shell32: Avoid infinite loop in _SHExpandEnvironmentStrings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-06 17:07:15 +02:00
Alexandre Julliard 54530bc493 shell32: Assume that system directory always contains a drive letter.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-06 17:07:15 +02:00
Dmitry Timoshkov 27edd4e35c shell32: Use Public instead of AllUsersProfile in the registry.
This matches what recent Windows versions set in the process environment.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 12:39:59 +02:00
Józef Kucia ff7c2c5171 shell32: Accept more flags in SHGetKnownFolderPath().
KF_FLAG_SIMPLE_IDLIST | KF_FLAG_DONT_UNEXPAND doesn't seem to influence
results returned by SHGetKnownFolderPath().

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-22 17:14:20 +02:00
Sebastian Lackner e98963f2ab shell32: Create Microsoft\Windows\Themes directory during prefix creation.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-17 10:51:22 +02:00
Nikolay Sivov 612a194133 shell32: Use ARRAY_SIZE macro.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:35:12 +01:00
Nikolay Sivov e3b200bd8a shell32: Use global memory allocation helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-22 14:16:33 +01:00
Nikolay Sivov bb09bb5750 shell32: Fix a trace message.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-23 16:21:33 +01:00
Nikolay Sivov f75d562596 shell32: Fix SHGetFolderPathAndSubDir() trace message.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-26 10:12:44 +01:00
Lucian Poston 349064216a shell32: Stub GetRedirectionCapabilities with S_OK.
Signed-off-by: Lucian Poston <lucian.poston@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-24 17:33:44 +01:00
Vincent Povirk dcb1359b5e shell32: Change default ProgramData folder and set ProfileList key.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 14:08:18 +09:00
Andrey Gusev 8ea9c33829 shell32: Add IApplicationDestinations stub.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-08 19:22:18 +02:00
Nikolay Sivov 0bfb97dcba shell32: Pass correct buffer length to RegQueryValueExW().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-08 16:00:39 +01:00
Nikolay Sivov 3c6cbc2f91 shell32: Don't access uninitialized buffer (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-14 20:56:13 +01:00
Nikolay Sivov a0c259cf56 shell32: Move retrieving folder path logic to SHGetKnownFolderPath().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-06 18:57:36 +01:00
Hans Leidekker 567b52cd93 shell32: Implement IKnownFolderManager::GetFolderByName.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-22 16:32:00 +01:00
Jactry Zeng dad2223ad6 shell32: Use remove() instead of rmdir().
rmdir() will fail when target is a symbolic link.

Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 20:40:42 +09:00
Nikolay Sivov 95ecc29a50 shell32: Remove another recurring return code check (PVS-Studio).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 00:25:34 +09:00
Nikolay Sivov e2275b0a2a shell32: Remove recurring return value check (PVS-Studio).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-19 12:22:39 +09:00
Nikolay Sivov 69733d65e8 shell32: Handle string-to-guid conversion errors (Coverity). 2015-07-06 15:13:24 +09:00
Nikolay Sivov 80d28abdc8 shell32: Partially implement SHGetKnownFolderIDList(). 2015-05-11 15:39:25 +09:00
Nikolay Sivov 4367f4b230 shell32: Silence IMarshal requests to IKnownFolder and IKnownFolderManager. 2015-05-11 15:39:25 +09:00
Nikolay Sivov 594e0b674f shell32: Forward couple of IKnownFolder methods to regular API equivalents. 2015-05-11 15:39:24 +09:00
Andrew Eikum 8042831061 shell32: Add more knownfolders. 2015-04-14 16:50:07 +09:00
Andrew Eikum 96971ea36d shell32: Add more knownfolders. 2015-04-13 15:04:25 +09:00
Andrew Eikum c6b999b901 shell32: Add more knownfolders. 2015-04-10 15:21:35 +09:00
Andrew Eikum f58c11767a shell32: Add more knownfolders. 2015-04-09 13:24:30 +09:00
Andrew Eikum e4868d5635 shell32: Allocate returned array in IKnownFolderManager::GetFolderIds. 2015-04-09 13:24:23 +09:00
Andrew Eikum 915bef8725 shell32: Add more knownfolder definitions. 2015-04-08 23:21:33 +09:00
Andrew Eikum c01efd0666 shell32: Support setting and retrieving KnownFolder parsing names. 2015-04-08 23:19:35 +09:00
Francois Gouget e9d010ef62 shell32: Add support for the OS X 'My Stuff' folders. 2015-04-08 16:21:39 +09:00
Francois Gouget e4c285b074 shell32: Point the 'My Documents' symbolic link to the XDG or OS X 'Documents' folder if they exist. 2015-04-03 11:22:00 +09:00
Francois Gouget f505e6fb4a Assorted spelling fixes. 2015-03-19 21:54:14 +09:00
Andrew Eikum 12d057c8e7 shell32: Install knownfolders to registry during DLL registration. 2015-03-18 19:27:31 +09:00
Andrew Eikum efbea96142 shell32: Also register knownfolder attributes. 2015-03-18 19:27:18 +09:00
Andrew Eikum cdf6aecc22 shell32: Allow registering knownfolders without relative paths. 2015-03-18 19:27:11 +09:00
Andrew Eikum 7c9151c1e6 shell32: Allow updating knownfolder definitions. 2015-03-18 19:26:52 +09:00
Andrew Eikum db35807eb0 shell32: Fall back on CSIDL path for knownfolders without a path in the registry. 2015-03-03 11:47:00 +09:00
Andrew Eikum 103f158c63 shell32: Also return RelativePath in GetFolderDefinition. 2015-03-03 11:46:56 +09:00
Andrew Eikum 32a6ee3887 shell32: Also return ParentFolder ID in GetFolderDefinition. 2015-03-03 11:46:52 +09:00
Andrew Eikum e56e9c11fa shell32: Use a helper function to allocate strings from the registry. 2015-03-02 13:48:35 +09:00
Andrew Eikum b5c12cf9f3 shell32: Use a helper function to get DWORDs from registry. 2015-03-02 13:48:32 +09:00
Andrew Eikum d7d058482c shell32: Rearrange error handling in IKnownFolder::GetFolderDefinition. 2015-03-02 13:48:28 +09:00
Francois Gouget 169923d4b9 shell32: Reset pszHome if it's not usable so we don't try to reuse it when setting up the Desktop symlink. 2015-01-05 20:16:44 +01:00
Francois Gouget d7fc48463b shell32: Fix the IDS_PERSONAL hardcoded default.
The corresponding folder is called 'My Documents' but on Linux it's
usually called 'Documents' so that's much more appropriate fallback
than 'Personal'.
2015-01-05 20:16:36 +01:00
André Hentschel 8d50a8a246 shell32: Remove unused string (Clang). 2014-12-04 14:03:26 +01:00
Nikolay Sivov 730e744e3b shell32: Use E_NOT_SUFFICIENT_BUFFER definition. 2014-10-08 13:13:36 +02:00
Michael Müller e38d1c9aa1 shell32: Create profile directories available in Vista and above. 2014-08-04 19:28:42 +02:00