Commit Graph

130 Commits

Author SHA1 Message Date
Martin Fuchs 516b50f34c - don't link directly to NTDLL; use MultiByteToWideChar() instead of
RtlCreateUnicodeStringFromAsciiz()
- directly call InitCommonControlsEx()
2004-01-26 20:13:03 +00:00
Martin Fuchs 0f3d8bf500 Use full paths instead of only filenames in icon cache to distinguish
between different files with the same name.
2004-01-21 22:15:09 +00:00
Martin Fuchs eae9444bc8 - fix typos in shelllink.c header comment and a struct comment
- corrected SCF_UNICODE constant and use the value of SCF_UNC instead
- implemented IShellLink_ConstructFromFile() to read shell links from
  files
- call IShellLink_ConstructFromFile() in ISF_..._fnGetUIObjectOf()
  when being queried for IShellLink interface
2004-01-20 01:37:24 +00:00
Alexandre Julliard e025c59051 Fixed HCR_GetExecuteCommandW() behavior with a class name (based on a
patch by Martin Fuchs).
Removed a couple of no longer used functions.
2004-01-16 23:06:25 +00:00
Marcelo Duarte 003465415f - Get rid of W->A calls for shlexec.
- Implementation of FindExecutableW.
2004-01-15 06:13:57 +00:00
Marcelo Duarte 36002739c7 - Implementation of HCR_GetExecuteCommandExW for internal use.
- New inline function  __SHCloneStrAtoW.
2003-12-10 00:39:31 +00:00
Alexandre Julliard 29cff12d06 Moved the ShellExecuteEx definitions to shellapi.h where they belong. 2003-11-26 03:59:16 +00:00
Alexandre Julliard 2d13956285 The "Path" value of the "App Paths" entry should be handled in
ShellExecute by changing PATH in the new process, instead of being
done in SearchPath.
2003-09-26 04:35:01 +00:00
Rolf Kalbermatter d1ffc6f11c Implemented SHSimpleIDListFromPath correctly. 2003-09-17 04:17:33 +00:00
Rolf Kalbermatter 6f9336dd31 Added IFileSystemBindData implementation. 2003-09-15 22:10:48 +00:00
Alexandre Julliard 69c90c2a9f Converted the rest of the obj_*.h headers to IDL into shobjidl.idl. 2003-09-09 19:32:36 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard 81c31701d2 Avoid including wine/obj_*.h files directly from C files.
Removed no longer used obj_serviceprovider.h.
2003-09-03 00:16:28 +00:00
Martin Fuchs 63fecde98b Declare LPCITEMIDLIST as 'const' pointer and adjust shell32
implementation to the corrected type.
2003-09-02 01:01:06 +00:00
Martin Fuchs 65b4d2dc75 Fixed Ansi version of RenderFILENAME and implement a Unicode version.
Implemented CFSTR_FILENAME with Unicode filename.
2003-07-26 20:32:43 +00:00
Mike McCormack 88090b47a6 Remove code that starts wineshelllink, instead create a windows
compatible shortcut (*.lnk) file. After creating that file, start a
link processor (winemenubuilder) on it, which reads it back then calls
wineshelllink.
Rework CreateStreamFromFile to create an IStream object that is
writeable.
2003-05-21 18:50:53 +00:00
Ulrich Czekalla 52b732dd0d Handle SEE_MASK_CLASSKEY case for ShellExecute. 2003-05-19 23:07:49 +00:00
Rolf Kalbermatter 7df7cdb6e2 Introduced some declarations and resources needed for a more complete
implementation of SHFileOperation.
2002-12-19 04:11:22 +00:00
Ove Kaaven dcb9240a92 Removed a few more inclusions of deprecated wine/obj_*.h headers. 2002-12-18 20:48:05 +00:00
Rolf Kalbermatter c3c4a41f29 Add support for Unicode IExtractIcon creation in
IShellFolder->GetUIObjectOf.
2002-12-15 01:14:04 +00:00
Rolf Kalbermatter caf31cee32 Added Unicode versions of the HCR_ internal functions. 2002-12-13 23:45:36 +00:00
Rolf Kalbermatter 247457c184 Implement ParseFieldW function based on its ANSI sibling. 2002-12-06 23:20:52 +00:00
Johan Dahlin 991fd85d2f Make shell32 compile with -DSTRICT. 2002-11-21 23:56:42 +00:00
Dmitry Timoshkov 601a3abec1 Fix some types and function prototypes according to Platform SDK
definitions.
2002-10-31 01:04:39 +00:00
Carlos Lozano dc60324d9a Fixed SHGFI_SYSICONINDEX flag handling. 2002-10-30 23:39:32 +00:00
György 'Nog' Jeney 03d3d9de0b Separate out 16-bit ShellExecute function. 2002-10-29 21:30:01 +00:00
Alexandre Julliard 0ca051e555 Fixed wownt32.h to make it usable from inside Wine, and use it to
avoid some duplication of the handle conversion macros.
2002-10-17 16:43:42 +00:00
Michael Stefaniuc bc54d78532 - change the internal functions in windows/cursoricon.c to use 32bit
handles
- move the implementation of ExtractAssociatedIcon16 to
  ExtractAssociatedIconA
- convert HICON to a void*
- fixed some handle conversions that happened to be in the way while
  doing the above
2002-10-10 21:22:09 +00:00
Michael Stefaniuc 025c0b716b Prepare dlls/{comctl32,gdi,msvideo,setupapi,shell32,twain,winmm} for
the conversion of HWND to a void*.
2002-09-06 19:41:17 +00:00
Juergen Schmied 1166dc733a Stubs for DragDropHelper. 2002-08-13 03:21:53 +00:00
Alexandre Julliard fb2eca812d Import comctl32 functions from shell32 by ordinal.
Removed some unnecessary ordinals in comctl32.spec.
2002-07-29 00:24:58 +00:00
Juergen Schmied 1e5ec8893d - Cleaned up the implementation of shell folders and put them into
separate files.
- Fixed some memory leaks.
- Some more fixes.
2002-07-24 01:56:03 +00:00
Juergen Schmied 23b808791e - changed STRRET definition
- small changes for seperation of shell32 from ole32
- debughelper for printing interface names (shell internal)
- changed shell memory allocation to use IMalloc of ole32 when this
  library is already loaded
- fallback IMalloc internally in shell
- unified constructor syntax for several objects  created by DllGetClassObject
- rewrote instance creation for com objects
- made the desktop folder parsing paths like ::{CLSID}
- Implemented IPersistFolder3 partially
2002-07-02 02:05:17 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Eric Pouech 1056953e2c Fixed ShellExecute functions when ddeexec was present in registry. 2002-02-27 01:22:15 +00:00
Patrik Stridvall 57e5784c21 Move __stdcall/__cdecl to the right place. 2002-02-02 18:42:11 +00:00
Dimitrie O. Paun 693cca5d4d Make FIXMEs more grep-able. 2002-01-29 03:12:19 +00:00
Guy L. Albertelli f78858334a Get more entry points from Comctl32 and save the addresses. 2001-09-20 19:32:13 +00:00
Alexandre Julliard 3954117ce4 Moved undocshell.h to dlls/shell32. Removed shell16.h. 2001-08-16 18:49:56 +00:00
Chris Morgan 0cd448c4f4 Add shell support for deleting files using the Delete key. 2001-02-21 04:01:03 +00:00
Francois Gouget b87a83866f Change the callback declarations to a safer format. 2001-02-12 03:51:04 +00:00
Alexandre Julliard 556d8b5ecb Replaced some GetProcAddress() imports by the standard dll import
mechanism.
2001-01-17 22:05:24 +00:00
Alexandre Julliard 83f52d11c1 Moved all Win16 definitions out of the standard Windows headers. 2000-09-26 22:20:14 +00:00
Alexandre Julliard 74af67ef42 Removed shell.h. Cleaned up the nested includes mess in wine/obj_*.h. 2000-09-26 00:00:55 +00:00
Alexandre Julliard d586dc99be Replaced VERSION_* calls by exported API equivalents. 2000-08-14 14:35:01 +00:00
Alexandre Julliard 70c9e095ef Removed all non-standard common control headers from the include
directory.
2000-08-09 00:41:17 +00:00
Alexandre Julliard c607532ae4 Created separate libraries for dplay, shfolder, shlwapi, wow32 and
wsock32 so that we have at most one Win32 dll in each .so library.
2000-07-09 11:19:35 +00:00
Juergen Schmied 3e56dbc9a4 - fixed null-pidl from _ILCreateControl
- some more no-name functions in shlwapi
2000-06-16 21:50:59 +00:00
Juergen Schmied c17ddc868e Fixes.
Use GetModuleHandleA instead of LoadLibrary for dlls imported by
the spec file.
2000-04-28 20:16:40 +00:00
Juergen Schmied 50f067b726 Basic implementation of shell notifications. 2000-02-26 18:44:08 +00:00
Juergen Schmied 40bf27e4ef Started with shell-clipboard handling (context menu cut&paste,
drag&drop).
2000-02-20 18:49:16 +00:00
Juergen Schmied 6d17c61096 Small fixes. 2000-01-04 00:33:56 +00:00
Juergen Schmied 46e8fff46d - the colums in the shellview are now created depending on the
attributes of the folder object shown
- get all attributes from the shellfolder instead directly from the idlist
- header fields localized (only engl. and german till now)
- small fixes
1999-11-14 21:33:23 +00:00
Juergen Schmied eac255cd31 More use of rc files for strings and menus, fixes. First internal
icons.
1999-08-15 14:31:36 +00:00
Juergen Schmied 565b2e0b5d Many fixes/reimplementations. 1999-07-25 12:26:05 +00:00
Juergen Schmied cb78219500 Fixed crash during second DLL_PROCESS_DETACH if the dll
refcount reached zero after the second one (memory freed twice).
1999-07-10 11:50:54 +00:00
Adrian Thurston 17551f9863 ICOMization of remaining interfaces. 1999-04-22 15:23:18 +00:00
Juergen Schmied 3ea18db36d - more checks for valid pidl formats 1999-04-22 09:20:01 +00:00
Juergen Schmied d00653237b - reorganised icon extracing from files
- made extracting from ne and ico files working
- IPersistFile interface for IExtractIcon
1999-04-11 11:50:41 +00:00
Juergen Schmied 2f5c561765 DllGetVersion (not yet exported).
Small change to SHAppBarMessage.
1999-04-01 10:20:31 +00:00
Juergen Schmied 0ae30d3027 - adjusted printing of refcounts to be equal
- cleaning up icon cache on PROCESS_DETACH
- fixed ascii/unicode use in SH/ILCreateFromPath
- fixed small memory leak in shellview
1999-03-28 12:35:24 +00:00
Juergen Schmied 8e7cb4db7a Use the new header for COM definitions. 1999-03-25 10:57:12 +00:00
Juergen Schmied a3b7a40f56 - IShellFolder and IEnumIDList are using the new COM headers
- fixed sort order for folders and drives
1999-03-14 12:16:21 +00:00
Juergen Schmied dd153f1727 - mostly cleanup after the renaming
- implemented SHILCreateFromPath
- small changed to SHGetFileInfo
1999-03-13 17:10:36 +00:00
Alexandre Julliard a396029270 Large-scale renaming of all Win32 functions and types to use the
standard Windows names.
1999-02-26 11:11:13 +00:00
Francois Gouget 75b84bb7c8 Removed redundant definitions of IsEqualIID and IsEqualCLSID (see
include/wine/obj_base.h)
1999-02-19 09:52:54 +00:00
Bertho Stultiens 231dfa2af9 Fixed a couple of faulty names used in wine and typos so that it will
compile again after conversion from 32[AW] naming to [AW] naming.
1999-02-13 17:56:28 +00:00
Marcus Meissner 03479f8adb Fixed a lot of warnings for possible problems. 1999-01-28 10:06:38 +00:00
Juergen Schmied cb23d48715 Small fixes. 1999-01-26 10:37:57 +00:00
Juergen Schmied ba28ba171f - some fixes, cleaned up includes, fixed leaks
- clean DllReferenceCount, better DllMain()
- dynamically linking LookupIconIdFromDirectoryEx32 and
  CreateIconFromResourceEx32 to USER32
- moved guid's instances to new file shellguid.c
- implemented  ShellExecuteEx32W
1999-01-23 14:12:48 +00:00
Alexandre Julliard 638f169b1e Recovery of release 990110 after disk crash.
See Changelog for changes between 990103 and 990110.
1999-01-17 16:32:32 +00:00
Juergen Schmied dd2e59c913 Small fixes. 1998-12-18 14:52:08 +00:00
Juergen Schmied 882c1bef62 Some cleanup. 1998-12-14 17:40:25 +00:00
Juergen Schmied baae7c4950 Bugfix in PathCombine32[A|W].
View menu in explorer and on right mouse button is working now.
1998-12-11 11:06:50 +00:00
Juergen Schmied 07e0d947da Fixed wrong parameter count for SHChangeNotifyDeregister, SHFreeUnusedLibraries.
New functions ParseField, Get/SetInstanceExplorer(), PathIsUNC, PathIsRelative.
Stubs SHWaitForFileToOpen, PathFindOnPath.
1998-12-01 08:55:13 +00:00
Juergen Schmied 47a800432a Many fixes. 1998-11-22 18:29:50 +00:00
Juergen Schmied 72b76d1a41 Cleanup, small fixes, a few new stubs. 1998-11-15 13:28:00 +00:00
Juergen Schmied e8d281d45a Changed some string-shell32 functions to 32AW, parameter are
os depending 32A or 32W (-winver nt351 or nt40), some new functions.
Some fixes in ole2nls.
New OLE2NLS_CheckLocale() to handle Locale_User_Default and
Locale_System_Default.
Shell32 now dynamicly links to DPA_*(), comdlg32 works again
(comctl32 heap alloc patch broke it).
1998-10-24 09:22:57 +00:00
Alexandre Julliard 85ed45e377 Release 980822
Sat Aug 22 17:46:19 1998  Ulrich Weigand <weigand@informatik.uni-erlangen.de>

	* [include/dosexe.h] [include/module.h] [include/pe_image.h] 
	  [include/process.h] [include/windows.h] [loader/dos/module.c]
	  [loader/module.c] [loader/ne/module.c] [loader/pe_image.c]
	  [scheduler/process.c] [win32/process.c]
	Partially implemented CreateProcess32.

	* [win32/device.c] [relay32/kernel32.spec] [scheduler/k32obj.c]
	  [misc/registry.c] [win32/file.c]
	Partially implemented VxDCall (VMM registry services).

	* [files/dos_fs.c]
	DOSFS_FindNext made thread-safe.

	* [include/sig_context.h] [include/syslevel.h] [loader/signal.c]
	  [scheduler/syslevel.c] [tools/build.c]
	Replaced CALLTO16_Current_fs by SYSLEVEL_Win16CurrentTeb.

	* [win32/kernel32.c]
	Bugfix: QT_Thunk/FT_Thunk should return 'long' in DX:AX, not EAX.

	* [if1632/relay.c] [relay32/builtin32.c] [windows/msgbox.c]
	  [msdos/int20.c] [msdos/int21.c]
	Use ExitProcess instead of TASK_KillCurrentTask.

	* [include/task.h] [include/thread.h] [loader/task.c] 
	  [scheduler/thread.c] [include/queue.h] [windows/message.c] 
	  [windows/queue.c] [windows/win.c]
	Prevent Win32 threads from entering the TASK_Reschedule loop.
	(Note: Win32 messaging still doesn't work correctly; this patch
	is just preventing the system from crashing when Win32 threads
	call messaging functions. Messages will probably still get lost.)

	* [scheduler/critsection.c]
	Deactivated the use of SEM_UNDO for the SYSTEM_LOCK semaphore;
	for some reason, this leads to problems after threads terminate... 

Sat Aug 22 15:00:00 1998  Jürgen Schmied <juergen.schmied@metronet.de>

	* [include/authors.h]
	New file, includes all names of the developer (former shell.c)

	* [Makefile.in][configure][configure.in][dlls/Makefile.in]
	  [dlls/shell32/Makefile.in][shres.rc]
	Created dlls/shell32 and moved the shell32 stuff in it.
	Started to create internal resources.

	* [dlls/shell32/*]
	Split the shell32 implementation into smaller files.
	New classes: IContextMenu, IExtractIcon, IShellView.
	Implemented Shell_GetImageList().
	shell32 links to comctl32 now dynamically so it can use
	internal/external implementations.

	* [documentation/internal-dll] [documentation/shell32]
	New, could anybody do a spellcheck?

	* [include/commctrl.h]
	Many new LV constants, structures, functions.

	* [controls/comctl32undoc.c]
	Rewrote the DSA* functions.

	* [windows/winpos.c]
	SetShellWindow32, GetShellWindow32.

Sat Aug 22 14:02:15 1998  Alexander Lukyanov <lav@long.yar.ru>

	* [loader/resource.c]
	Mark last accelerator as such in LoadAccelerators32W.

	* [relay32/shell32.spec] [misc/shell.c]
	Add stubs for SHGetSpecialFolderPath[AW].

Sat Aug 22 02:07:42 1998  Adrian Harvey <adrian@select.com.au>

	* [include/file.h] [file/file.c] [msdos/int21.c] [msdos/vxd.c]
	  [misc/lzexpand.c] [win32/kernel32.c] [documentation/filehandles]
	Fixed file handle handling.  Created universal HFILE16 to HFILE32
	translation macro from msdos/int21 code by Ove Kaaven.
	Used macro in all Win16 functions so that win32 handles are translated
	to avoid DOS/Win16 stdxx handles.
	Removed handle translation from int21.c where Win16 functions are
	called.  Changed remaining calls to use new macro names.
	Documented filehandle handling and differences between win 16 & 32.

Fri Aug 21 20:32:49 1998  Alexandre Julliard  <julliard@lrc.epfl.ch>

	* [server/process.c] [server/thread.c]
	Implemented object wait queues and synchronization.

Fri Aug 21 18:40:02 1998  Huw D M Davies <daviesh@abacus.physics.ox.ac.uk>

	* [graphics/psdrv/*]
	DEVMODE dmPaper{Width|Length} fields are in 0.1mm.
	Select a 100 pixel default font in CreateDC.

Thu Aug 20 22:47:39 1998  Uwe Bonnes  <bon@elektron.ikp.physik.tu-darmstadt.de>

	* [objects/bitmap.c]
	Handle bits=32 in SetBitmapBits32 and GetBitmapBits32.

	* [msdos/int21.c]
	Add handling of Int21 0A and 37.

	* [misc/commdlg.c]
	Use MapHModuleLS and MapHModuleSL when translating HINSTANCE16 to
	HINSTANCE32 and vice versa.

	* [win32/file.c]
	CreateFile32A: Abort if filename == NULL.

Thu Aug 20 12:28:31 1998  Marcus Meissner <marcus@jet.franken.de>

	* [*/*]
	Lots of missing prototypes added, some parameter types adapted to match
	SDK.

	* [debugger/stabs.c]
	Don't loop forever if we don't find wine or one of the libxxx.so.

	* [loader/ne/module.c]
	Implemented MapHModuleLS,MapHModuleSL,MapHinstLS,MapHinstSL.

	* [misc/network.c]
	Implemented WNetGetUser32A.

	* [misc/shellord.c]
	Implemented ILRemoveLastID.

	* [multimedia/dsound.c]
	Fixed StarCraft memory leak.

	* [graphics/ddraw.c]
	Removed some unnecessary simple relaying functions, tried polishing
	up the Xlib implementation (still doesn't work), temp. removed Xshm
	code (to be remerged with working Xlib code).

Tue Aug 18 22:29:17 1998  Ove Kaaven <ovek@arcticnet.no>

	* [multimedia/mmio.c] [multimedia/mmsystem.c]
	Fixed most mmio bugs, fully implementing mmioSetBuffer
	buffering, ability to read memory files, and the
	sndPlaySound() SND_MEMORY flag. Most mmio-using programs
	now work fine.

	* [include/dosexe.h] [include/miscemu.h] [include/module.h]
	  [loader/module.c] [loader/task.c] [msdos/dosmem.c]
	Improved DOS VM flexibility and portability somewhat. (Did
	I get the #ifdefs right this time, BSD-ers?)

	* [msdos/int21.c]
	Made "Get Current PSP address" work as expected in a DOS VM.

	* [loader/dos/*]
	Began improving flexibility and portability somewhat. It
	should be easier to add DPMI RMCB callbacks now. The
	DOS VM no longer leaves big files lying around in /tmp
	after a crash.

Tue Aug 18 12:38:31 1998 Turchanov Sergey <turchanov@usa.net>

	* [relay32/winmm.spec]
	This patch allows WinAmp to play WAV files (at least in PCM
	format).

Sun Aug 16 05:34:13 1998  Pablo Saratxaga <srtxg@chanae.alphanet.ch>

	* [windows/keyboard.c]
	Corrected keyboard code to properly handle keys : ? ~ and "
	on non US keyboards.

Sat Aug 15 18:47:14 1998  Brian Craft <bcboy@dorothy.wanglab.brandeis.edu>

	* [windows/win.c]
	Fixed severe bug in EnumChildWindwos().

Thu Aug 13 21:05:35 1998  Eric Kohl <ekohl@abo.rhein-zeitung.de>

	* [controls/tooltips.c]
	Fixed some bugs. Added subclassing support.

	* [controls/toolbar.c]
	Improved tooltip integration. Fixed some bugs.

	* [controls/commctrl.c]
	Changed control registration and added some documentation.
	Fixed ShowHideMenuCtl.

	* [controls/rebar.c][include/rebar.h][include/commctrl.h]
	Improved rebar implementation (still no display).

	* [controls/pager.c][include/pager.h][include/commctrl.h]
	Improved pager implementation (still no display).

	* [misc/imagelist.c]
	Fixed a bug.

	* [documentation/common_controls]
	Updated.

Sun Aug  9 19:50:20 1998  James Juran <jrj120@psu.edu>

	* [Makefile.in] [documentation/Makefile.in] 
	  [programs/Makefile.in] [programs/*/Makefile.in]
	Added uninstall rules, cleaned up install rules a little bit.

Sun Aug  9 13:21:35 1998  Andreas Mohr <100.30936@germany.net>

	* [loader/ne/module.c] [if1632/kernel.spec]
	Added the undocumented HIWORD of GetModuleHandle (hFirstModule).

	* [loader/ne/segment.c]
	Wine forgot to set some NE_SEGFLAGS_*.
	Combined with another loader change, this fixed the
	"BLINKER -- error in loading module" or ghost MessageBox problem
	that about 1% of all Windows programs have.
	Some BLINKER programs still don't work, though.
	But I'm working on it, with great help from Blinkinc.

	* [loader/task.c]
	InitTask needs to decrement the SP register by two as Win95 does.

Sun Aug  9 02:41:28 1998  Ulrich Weigand <weigand@informatik.uni-erlangen.de>

	* [if1632/kernel.spec] [relay32/kernel32.spec] [scheduler/syslevel.c]
	  [loader/main.c] [win32/ordinals.c] [include/syslevel.h] 
	  [scheduler/Makefile.in]
	Implemented Win95 'syslevel' routines (including Win16Lock).

	* [if1632/relay.c] [if1632/thunk.c] [tools/build.c] [loader/task.c]
	  [loader/ne/segment.c] [win32/kernel32.c] [memory/selector.c]
	  [include/stackframe.h] [include/thread.h]
	16-bit %fs handling revised.  Use Win16Lock where appropriate.

	* [include/thread.h] [scheduler/synchro.c] [windows/message.c] 
	  [windows/queue.c] [win32/process.c]
	Implemented MsgWaitForMultipleObjects.

	* [files/change.c] [files/Makefile.in] [scheduler/k32obj.c] 
	  [win32/newfns.c]
	Implemented (dummy) file change notification objects.

	* [debugger/dbg.y] [scheduler/process.c] [scheduler/thread.c]
	  [include/process.h] [include/thread.h]
	Suspend all threads except current when hitting debugger break point.

	* [objects/dib.c]
	Bugfix for CreateDIBSection.
1998-08-22 19:03:56 +00:00