- Michael Jung <mjung@iss.tu-darmstadt.de>
Set all capability flags supported by the shellfolder, disregarding
the flag mask given to GetAttributesOf.
Unit tests to demonstrate this behaviour.
Michael Jung <mjung@iss.tu-darmstadt.de>
- Added some comments to document unixfs.
- Fixed crash in unixfs shellfolder handling with winamp.
- Implemented UnixFolder's IPersistPropertyBag::Load method.
- Initialize COM prior to displaying the SHBrowseForFolder dialog.
- More robust code for querying ShellFolder attributes (some
ShellFolders ignore the flag mask in GetAttributesOf).
- Remove iconcache pre-initialization hack, it's not necessary any
more.
- Move target folder initialization to a dedicated function.
- Use this function in BindToObject (should be faster).
- Special handling for FolderShortcut objects in Initialize method.
- Removed a todo_wine from a no longer failing unit test.
- Replaced tabs with spaces.
Robert Shearman <rob@codeweavers.com>
- Convert SHELL32_BindToChild to Unicode and fix up the callers.
Vincent Bén <vberon@mecano.gme.usherb.ca>
- Unicodify systray.c.
- Move functions a bit to get rid of a static declaration.
Dmitry Timoshkov <dmitry@codeweavers.com>
- Correctly handle flags parameter in SHAddToRecentDocs.
Martin Fuchs <martin-fuchs@gmx.net>
- Correct WINAPI position for MSVC portability.
Mike McCormack <mike@codeweavers.com>
- Partially implement and test the shelllink object's
IShellLinkDataList::CopyDataBlock and GetFlags methods.
- Use advapi32.CommandLineFromMsiDescriptor to get msi component paths.
- Pass the correct verb.
Add a space between extra parameters.
Wait for ShellExecute to complete.
- Handle MSI advertised shortcuts in the shelllink object.
- Implement IContextMenu::QueryContextMenu and
IContextMenu::InvokeCommand.
- Add the IObjectWithSite interface.
- Invoke shortcuts through IContextMenu, rather than trying to access
them directly.
- Fix a problem spotted by Dmitry and another one stopping correctly
formatted lnk files from being generated.
svn path=/trunk/; revision=19356
Lionel Ulmer <lionel.ulmer@free.fr>
- fix first two arguments to 'FindExecutableA' (input strings instead
of pointers)
- fix last argument to 'FindExecutableW' (it's an output string)
Francois Gouget <fgouget@free.fr>
- Use "static const" rather than "const static" as gcc -W complains
about the former.
Jonathan Ernst <Jonathan@ErnstFamily.ch>
- First creation of registry entries missed AppData.
Aric Stewart <aric@codeweavers.com>
- MSDN states that the pszDisplayName member of BROWSEINFO is assumed to
be MAX_PATH in length. So when doing the A->W conversion in
BrowseForFolderA do not set that member to be the size of the
incoming string, instead make it MAX_PATH.
Dmitry Timoshkov <dmitry@codeweavers.com>
- Use appropriate DDE APIs (ANSI or unicode) for ShellExecuteA/W, Excel
2000 depends on that.
Martin Fuchs <martin-fuchs@gmx.net>
- Simplify 'sei' structure initialization in ShellExecuteA/W.
Mike McCormack <mike@codeweavers.com>
- Use ShellLink_QueryInterface to return the right interface in
IShellLink_Constructor.
Richard Cohen <richard@daijobu.co.uk>
- Don't hardcode "windows" directory.
svn path=/trunk/; revision=18956
Michael Jung <mjung@iss.tu-darmstadt.de>
- Don't clone pidlLast in SHBindToParent.
- Pass correct pointer to SHFree in case of failure in
UNIXFS_path_to_pidl.
- Return E_FAIL if we can't get the unix path in
IPersistFolder3::InitializeEx.
- Return E_NOAGGREGATION if non-NULL pUnkOuter is given to the
constructor.
Alexandre Julliard <julliard@winehq.org>
- We are no longer generating .spec.c files.
- Generate 16-bit spec files as assembly code too.
- Use a more portable scheme for storing the name of a critical
section.
- Removed unused debug channels.
- Specify 64-bit integers as double instead of long long in spec files
so that we get the correct number of arguments.
- We are no longer generating .dbg.c files.
Milko Krachounov <milko@3mhz.net>
- Bulgarian resources for mpr, msi, user, commdlg, oleaut32, shdocvw,
shell32, comctl32, msrle32, mshtml, winspool, wineps, serialui,
setupapi, wininet, regedit, uninstaller, notepad, winecfg and
winhelp.
Kevin Koltzau <kevin@plop.org>
- Fix warnings in 64bit.
Dmitry Timoshkov <dmitry@codeweavers.com>
- Stop using a not initialized variable szTemp in
_dbg_ILSimpleGetText, make _dbg_ILSimpleGetText return no value since
nobody is using it.
- Stop dereferencing a possible NULL in pdump since
_dbg_ILGetDataPointer can potentially return NULL (for instance for
root or desktop pidl).
- Make shdebugstr_guid use standard wine_dbg_sprintf instead of the
handmade solution.
- Translate file name from unix to ANSI encoding in
UnixFolder_IShellFolder2_GetDisplayNameOf.
- Pass a locally modified version of SHELLEXECUTEINFO to
IShellExecuteHookW_Execute, this should pass through at least
sei_tmp.nShow retrieved from an .lnk file (fStartup).
Alexander N. Sørnes <alex@thehandofagony.com>
- Added Norwegian translation of comctl32 and shell32.
Kimmo Myllyvirta <kimmo.myllyvirta@gmail.com>
- Update Finnish resources.
svn path=/trunk/; revision=18348
Dmitry Timoshkov <dmitry@codeweavers.com>
- Make remaining OLE interface vtables const.
Mike McCormack <mike@codeweavers.com>
- SHCreateStreamOnFileW is implemented in shlwapi, so we don't need
another implementation in shell32.
- Add a cast to get rid of a warning.
- Warning fixes for -Wmissing-declarations and -Wwrite-strings.
- Make functions static.
- -Wpointer-sign fixes.
- forward AddRef, Release, QueryInterface and GetClassID to internal
implementations
- implement GetClassID properly
- Switch IShellLink to use shlwapi.SHCreateStreamOnFileW.
- Remove some uses of wine/unicode.h functions.
- Add the IContextMenu interface to the ShellLink object.
- Implement ShellLink's IShellExtInit::Initialize() method.
- add the IShellExtInit interface to the ShellLink object
- use inline functions rather than macros to resolve the
implementation pointer from an interface pointer
- Add the IShellLinkDataList interface to the ShellLink object.
Michael Jung <mjung@iss.tu-darmstadt.de>
- Use the CallForAttributes registry value, instead of promoting the
root folder's SFGAO_FILESYSTEM flag to the registry.
- Return the correct attributes for the desktop folder.
- Corresponding tests.
- Support for shellfolder's CallForAttributes registry value.
- Let BindToObject fail, if called with empty relative pidl.
- Tests to show that it should do so.
- Fix SHBrowseForFolder to not pass an empty pidl to BindToObject.
- Fix a lurking infinite loop in SHGetPathFromIDList.
- Support for shellfolder's CallForAttributes registry value.
- Use SHGetPathFromIDList instead of SHELL32_GetPathFromIDList.
- Implement SHGetPathFromIDList based on GetDisplayNameOf.
Stefan Doesinger <stefandoesinger@gmx.at>
- Handle cidl==0 in shfldr_desktop, shfldr_fs and shfldr_mycomp.
- Remove the dwAttributes member from the IGenericSFImpl class, it's
not needed and can't be initialised in Initialize and InitializeEx.
Vitaly Lipatov <lav@etersoft.ru>
- Realize DoEnvironmentSubstA via ExpandEnvironmentStringsA.
- Fix types and return values.
- Add prototype into shellapi.h.
Aric Stewart <aric@codeweavers.com>
- Fix the BrowseForFolder dialog so that when it does the callbacks it
uses the correct message instead of always sending BEFM_INITIALIZED.
Juan Lang <juan_lang@yahoo.com>
- Const-ify a mask.
- Set default for "My Documents" to $HOME, and "Desktop" to ~/Desktop.
Alexandre Julliard <julliard@winehq.org>
- Sort entry points in the same order as Windows.
Francois Gouget <fgouget@free.fr>
- Fix winapi_check documentation warnings.
Marcus Meissner <marcus@jet.franken.de>
- ExtractAssociatedIconA needs to allocate enough space to have EAIW
fill in lpIconPathW.
Huw Davies <huw@codeweavers.com>
- Unquote the icon file path if it's quoted.
svn path=/trunk/; revision=17060
- Remove code that isn't used in ReactOS because our _SHExpandEnvironmentStrings was completely re-written and thus doesn't use the two helper functions that WINE's _SHExpandEnvironmentStrings does.
svn path=/trunk/; revision=16789
Francois Gouget <fgouget@free.fr>
- Assorted spelling fixes.
Mike McCormack <mike@codeweavers.com>
- Remove an unused function.
- Eliminate casts of the return value of HeapAlloc.
- Convert path to unicode, rearrange to remove forward declaration.
- Remove forward declarations of interface methods.
- Remove some dead code and some ifdefs.
- Use api definitions, remove duplicate code.
- Fix usage of STGM_ enumerations, remove forward declaration.
- Fix up PIDL dumping code.
- Fix a regression in the file open dialog.
Jon Griffiths <jon_p_griffiths@yahoo.com>
- Use LMEM_ flags for LocalAlloc(), not GMEM_ (GlobalAlloc).
Huw Davies <huw@codeweavers.com>
- Fix the icon resource ids (most were off by one).
- Fix IExtractIcon_{GetIconLocation,Extract} to use -ve icon resource
ids and fix bugs relating to confusion between resource ids and the
system imagelist indicies.
- Extend the system imagelist initialization hack to load both +ve and
-ve resource ids.
- Add a printer icon (that'll be used by an upcoming printer folder
patch).
- When we're hiding file extensions then SetNameOf should append the
original extension if SHGDN_FORPARSING isn't set.
- The flags passed to SetNameOf refer to the dst string not the src
pidl.
- If ICommDlgBrowser_OnDefaultCommand returns anything other than S_OK
then we should call the default handler.
- Directory items should have the SFGOA_FILESYSANCESTOR attribute.
Add a test for this and cleanup the shlfolder test a bit.
- Better icon handling for some special folders.
- Identify and add defines for a bunch of shell icons.
- Add a unicode pidl type.
- Improve support for PT_YAGUID.
- Improve IShellLink debugging.
Steven Edwards <steven_ed4153@yahoo.com>
- Register Shell Drag and Drop Helper.
Juan Lang <juan_lang@yahoo.com>
- Use Unicode string result from GetDisplayNameOf if it isn't
representable using ANSI.
- Correct registering shell folders (values in Shell Folders key weren't
getting written).
Martin Fuchs <martin-fuchs@gmx.net>
- switch to correct shell desktop context menu
- launch desk.cpl when activating the desktop context menu entry
"properties"
- don't send WM_COMMAND if we didn't get a shell view window
- Correct comments of some export ordinals.
Peter Berg Larsen <pebl@math.ku.dk>
- Replace strncpy with memcpy or lstrcpyn.
Troy Rollo <wine@troy.rollo.name>
- Fix SEGV for non-fully-qualified destination paths.
- Don't fail ShFileOperationW if FOF_ALLOWUNDO is passed.
Filip Navara <xnavara@volny.cz>
- _dbg_ILGetNext returns NULL if pidl->mkid.cb is zero, fix the loops
accordingly.
Aric Stewart <aric@codeweavers.com>
- For ShellExecuteExA we need to copy out the hProcess value from the W
structure.
svn path=/trunk/; revision=15024
Michael Jung <mjung@iss.tu-darmstadt.de>
- Beginning of a shell namespace extension to browse the unix
filesystem.
- Fixed parsing of ITEMIDLIST in InitializeTreeView.
- Added some documentation.
- Fixed a crash occuring when the user double-clicks a leaf item.
Dimitrie O. Paun <dpaun@rogers.com>
- Add support for .exe's with exported functions.
Francois Gouget <fgouget@free.fr>
- Assorted spelling fixes.
- Add the -noname flag to match the Platform SDK.
- Don't hardcode ordinals if which are not hardcoded on Windows.
Juan Lang <juan_lang@yahoo.com>
- Convert more API calls to Unicode.
- Convert tabs to space, wrap long lines, make indenting consistent.
- Convert a few calls to Unicode.
Mike McCormack <mike@codeweavers.com>
- handle IFileSystemBindData in ISF_Desktop_fnParseDisplayName
- more Unicode conversion
- handle IFileSystemBindData in IShellFolder::ParseDisplayName
- convert IShellFolder::ParseDisplayName to use Unicode
- Remove tabs and make formatting consistent.
- Reindent some code to improve readability.
- Define some extra SHFGI values.
- Remove tabs and reformat.
- Use lstrcmpiA in preference to strcasecmp.
- Make lstr* functions inline inside Wine.
- implement loading and saving of MSI advertised shortcut info
- make more test cases pass
- read and write the location block
- improve the binary compatibility of lnk files
- Cleanup, create unicode versions of _ILCreateFromPath,
_ILCreateGuidFromStr, and _ILCreateFromFindData.
Jon Griffiths <jon_p_griffiths@yahoo.com>
- Documentation spelling fixes.
Hans Leidekker <hans@it.vu.nl>
- Revert wrong -noname markup for Drag*, DoEnvironmentSubst and
SHGetNewLinkInfo{A,W}.
- Also mark stub exports -noname when they are exported by ordinal
only on win98/2k.
- Implementation level stubs for SheChangeDirA, SheGetDirA,
SHHelpShortcuts_RunDLL{A,W}.
- New spec file stubs for Control_RunDLLAsUserW,
FixupOptionalComponents, OCInstall, SHChangeNotifySuspendResume,
SHCreateProcessAsUserW, SHExtractIconsW,
SHInvokePrinterCommand{A,W}, SHIsFileAvailableOffline,
SHLoadNonloadedIconOverlayIdentifiers, SHPathPrepareForWrite{A,W},
ShellExec_RunDLL{,A,W}, SHGetIconOverlayIndex{A,W}.
- Mark exports -noname when they are exported by ordinal only on
win98/2k.
Marcelo Duarte <wine-devel@bol.com.br>
- Update the resources for Portuguese.
Filip Navara <xnavara@volny.cz>
- Don't crash if ShellFolder doesn't implement the IID_ISFHelper
interface.
Dmitry Timoshkov <dmitry@codeweavers.com>
- Fix prototypes of GetClassLongA/W, GetClassLongPtrA/W and
SetClassLongA/W according to SDK definitions.
- Add prototypes for SetClassLongPtrA/W, protect some GWL_ and GCL_
constants from using in Wine or in _WIN64 mode.
- Fix all places in Wine affected by the above changes.
- Convert winemenubuilder to unicode.
Alex Villacis Lasso <a_villacis@palosanto.com>
- Change SUBLANG_DEFAULT to SUBLANG_NEUTRAL for LANG_SPANISH in all
resources, so that Spanish locales other than Spain also use Spanish
resources.
Marcus Meissner <marcus@jet.franken.de>
- Output some more informations.
- Mark one global variable static.
Huw Davies <huw@codeweavers.com>
- SetPath("") should return S_OK.
SetPath("nonexistent_path") should return S_FALSE.
- Don't prepend '\\' to the subkey name.
Joris Huizer <jorishuizer@planet.nl>
- renamed file_operation_delete and to shfileops_delete
- renamed file_operation_checkFlags to shfileops_check_flags
- added helper function shfileops_do_operation()
- added helper function shfileops_get_parent_attr()
- added helper function shfileops_get_parent_attr2()
- various cleanups in SHFileOperationW using these functions
Ge van Geldorp <gvg@reactos.com>
- Error numbers >= 32 are to be expected.
svn path=/trunk/; revision=14118
James Hawkins <truiken@gmail.com>
- Use Interlocked* instead of ++/-- in AddRef/Release.
- Use only stored result of Interlocked* in AddRef/Release.
- Expand TRACEs to display the ref count.
Francois Gouget <fgouget@free.fr>
- Assorted spelling fixes.
Mike McCormack <mike@codeweavers.com>
- Implement GetAdvise and SetAdvise.
Henning Gerhardt <henning.gerhardt@web.de>
- A small spelling fix and a small update (thank to Andreas Mohr).
- Update German resources.
Joris Huizer <jorishuizer@planet.nl>
- add file_operation_delete
- add file_operation_checkFlags
- use these in SHFileOperationW replacing inline code
svn path=/trunk/; revision=13544
Eric Pouech <pouech-eric@wanadoo.fr>
- Const correctness fixes.
Juan Lang <juan_lang@yahoo.com>
- Fix CSIDL_CONTROLS and CSIDL_PRINTERS PIDL types, and update tests now
that they pass.
Robert Shearman <rob@codeweavers.com>
- Use more specific error codes than E_FAIL, where possible.
- Move vtable to end, give it the const modifier, and remove unneeded
function declarations.
Juan Lang <juan_lang@yahoo.com>
- the correct registry location to override is User Shell Folders, not
Shell Folders
- if User Shell Folders doesn't exist in HKCU, HKLM should be tried
- SHGetSpecialFolderPath should call SHGetFolderPath, not vice-versa
- the default values should be localizable
- some of the parameter checking and returned LPITEMIDLISTs were a bit
off
- _SHExpandEnvironmentStrings should return input string if no % found
to expand, and should call ExpandEnvironmentStringsW if it doesn't
handle an environment variable directly. Based on a patch from Dan
Kegel.
- Avoid copying invalid data on error.
- Update shell32's version to WinXP level.
Aric Stewart <aric@codeweavers.com>
- Implementation of PathCleanupSpec.
Fabrice Menard <menard.fabrice@wanadoo.fr>
- Some French translations added.
- Check the type of error returned by SHCreateDirectoryExW.
Rolf Kalbermatter <rolf.kalbermatter@citeng.com>
- Use SHCreateDirectoryEx function instead of doing explicit recursive
directory creation.
- Fix bad memory allocation for unicode buffer.
- SHCreateDirectory should create intermediate directories if
necessary.
- Remove extra boolean parameter in SHNotifyMoveFile as it is not
used.
- Use in SHFileOperation the function SHNotifyCreateDirectory instead
of SHCreateDirectoryEx as it does not anymore what is needed here.
- Fix several unsigned/signed mismatch warnings.
Alexandre Julliard <julliard@winehq.org>
- Avoid copying invalid data on error.
Francois Gouget <fgouget@free.fr>
- Assorted spelling fixes.
Tom Wickline <twickline@sitestar.net>
- Version resources cleanup.
svn path=/trunk/; revision=11970
- Fixed typo in ProgramsW.
- Changed the case of windows and system directories to match the
directories we create by default.
- Avoid depending on the non-standard IUnknown_METHODS macro in Wine
internal headers.
svn path=/trunk/; revision=11195
- Fix CSIDL_COMMON_{STARTMENU,PROGRAMS,DESKTOPDIRECTORY} so they all use
paths in 'All Users' like CSIDL_COMMON_STARTUP.
The CSIDL_COMMON_PROGRAMS fix solves many menu creation problems.
svn path=/trunk/; revision=10963
Juan Lang <juan_lang@yahoo.com>
Use symbolic constants for magic numbers in SHGetFolderPathW, avoid
doing MultiByteToWideChar on values that don't need it,
Juan Lang <juan_lang@yahoo.com>
Rename PT_MYCOMP to PT_GUID, and the corresponding union member from mycomp to guid.
Martin Fuchs <martin-fuchs@gmx.net>
Resolve shell shortcuts and process ID lists in ShellExecute() functions.
Juan Lang <juan_lang@yahoo.com>
- comment fixes
- improved error checking and conformance with Windows
- remove some spurious error messages
svn path=/trunk/; revision=9017