Commit Graph

1662 Commits

Author SHA1 Message Date
Huw Davies affe9a1e6e ole32/tests: Show that it's the loword of the separate flag parameter that determines the marshalling context. 2009-05-18 13:27:24 +02:00
Huw Davies e4d43c1099 ole32: Add proxies and stubs for FillAppend and FillAt. 2009-05-18 13:24:42 +02:00
Huw Davies 069d57502d ole32: Add proxies and stubs for ReadAt and WriteAt. 2009-05-18 13:24:37 +02:00
Huw Davies 5abb393eb7 ole32: Add proxies and stubs for OpenStream and EnumElements. 2009-05-18 13:24:31 +02:00
Huw Davies aa13c7c522 ole32: Add proxies and stubs for Seek and CopyTo. 2009-05-18 13:24:19 +02:00
Huw Davies e8be59b8f8 ole32: Add proxies and stubs for Read and Write. 2009-05-18 13:24:13 +02:00
Huw Davies 374aacdc9f ole32: Add proxies and stubs for GetData and GetDataHere. 2009-05-18 13:24:00 +02:00
Huw Davies b045342ae8 ole32/tests: Add tests to show the WdtpInterfacePointer marshal data looks like the result of CoMarshalInterface. 2009-05-12 14:57:54 +02:00
Huw Davies 782ec11a0d ole32/tests: Make the size tests for the WdtpInterfacePointer marshaller more restrictive. 2009-05-12 14:57:51 +02:00
Alexandre Julliard 18419dab31 ole32/tests: Fix the clipboard format test on Win64. 2009-05-08 13:52:05 +02:00
Hans Leidekker bd4975acb0 ole32: Use existing MTA in CoGetClassObject and CoCreateInstance.
Custom actions in the CS3 installer depend on this.
2009-05-05 14:14:20 +02:00
Hans Leidekker d2820c0684 ole32: Add tests to show that COM needs to be initialized only once for multi-threaded apartments. 2009-05-05 14:14:10 +02:00
Huw Davies 66d04f8eb6 ole32: Implement GetDataHere. 2009-04-30 17:20:00 +02:00
Huw Davies 2e11733f45 ole32: Don't ask for a name if it's not required. 2009-04-28 14:47:54 +02:00
Huw Davies d2837cb94d ole32/tests: Improve the traces in the test. 2009-04-24 15:02:23 +02:00
Huw Davies 739ca6deae ole32: Fix a couple of comments. 2009-04-24 15:02:11 +02:00
Huw Davies 12edc21a3a ole32: Expose the marshalled data on the clipboard rather than as a window prop so that other processes can actually read it. 2009-04-24 15:02:05 +02:00
Austin English 2fe86fb7cd ole32: Rename a macro to prevent a conflict on NetBSD. 2009-04-24 11:51:53 +02:00
Aric Stewart 46da8ef18b ole32: CoGetTreatAsClass should return S_FALSE if it cannot even find the key for the requested CLSID. 2009-04-24 11:51:35 +02:00
Huw Davies 211268a74e ole32: Rewrite OleQueryCreateFromData so it compares clipboard format ids rather than strings and be sure to free the enumerator. 2009-04-23 18:14:27 +02:00
Huw Davies b133e94b62 ole32: Register a few more clipboard formats and make them have global scope. 2009-04-23 18:14:27 +02:00
Huw Davies 689c510f63 ole32: Add a stub for OleCreateFromDataEx. 2009-04-23 18:14:27 +02:00
Huw Davies 11cb788f35 ole32/tests: For win9x and winme the size of the data on the clipboard may be larger than expected. 2009-04-23 18:14:03 +02:00
Huw Davies 083473659b ole32/tests: Rename variable to avoid a conflict on some systems. 2009-04-22 17:00:56 +02:00
Huw Davies aaed9de51a ole32: Improve the TRACEs by printing the fmtetc contents. 2009-04-22 17:00:53 +02:00
Huw Davies 6928615d5c ole32/tests: Add some tests to exercise the enumerator. 2009-04-22 14:43:37 +02:00
Huw Davies 1556d831c8 ole32/tests: win9x and winme don't enumerate duplicated cfFormats. 2009-04-22 14:43:33 +02:00
Huw Davies d18875f306 ole32/tests: win64 sets the lsb of the final DWORD in the ole private data header. 2009-04-22 14:43:20 +02:00
Huw Davies f9d48e7ba0 ole32/tests: win9x and winme don't have CF_UNICODETEXT. 2009-04-22 14:43:17 +02:00
Huw Davies 508d6db8e2 ole32/tests: win9x, winme and nt4 ignore the target device. 2009-04-22 14:43:13 +02:00
Huw Davies 57d555c796 ole32/tests: OleGetClipboard doesn't return the same object under win9x, winme and nt4. 2009-04-22 14:43:09 +02:00
Huw Davies 08d4352f9b ole32: Add support for enumerating non-ole clipboard formats. 2009-04-21 13:26:17 +02:00
Huw Davies 575b0e1435 ole32: Don't set cf_dataobject if we're clearing the clipboard. 2009-04-21 13:21:19 +02:00
Huw Davies 1e73a54690 ole32: Check that the target devices match. 2009-04-21 13:16:48 +02:00
Huw Davies bdca138d5a ole32: Make get_priv_data return target device ptrs (rather than offsets) and add a couple of helper functions to simplify this process. 2009-04-21 13:16:37 +02:00
Huw Davies aadd07ca9d ole32/tests: Tests for a flushed clipboard. 2009-04-16 11:37:39 -05:00
Huw Davies c648dcf615 ole32: Try global and stream types if the requested types don't match the source. 2009-04-16 11:37:30 -05:00
Huw Davies 18d413bb74 ole32: OleFlushClipboard should render all formats to the clipboard. 2009-04-16 11:37:25 -05:00
Huw Davies 9bacd00ce7 ole32: Add support for getting storage based objects from a flushed clipboard. 2009-04-16 11:37:18 -05:00
Huw Davies 25d7ecde47 ole32: Add support for getting stream based objects from a flushed clipboard. 2009-04-16 11:37:10 -05:00
Huw Davies f8a9ca2cfa ole32: Add support for getting global handle objects from a flushed clipboard. 2009-04-16 11:37:03 -05:00
Huw Davies 718831b77c ole32/tests: Add a few more reference count tests. 2009-04-16 11:36:53 -05:00
Huw Davies fca4ed5596 ole32: After a call to GetData the consumer should hold a ref on the source data object. 2009-04-16 11:36:42 -05:00
Huw Davies d2156f3894 ole32: Now that the consumer side of the clipboard separated from the main clipboard object, simplify the initialization code. 2009-04-16 11:36:39 -05:00
Huw Davies df08d463c9 ole32: The consumer data object is not a singleton, but reflects the state of the clipboard when it was acquired. 2009-04-16 11:36:00 -05:00
Huw Davies f8a1b7e5a5 ole32/tests: Tests that show the consumer data object isn't a singleton. 2009-04-16 11:35:24 -05:00
Huw Davies 4311691a88 ole32: If there's a current data object on the ole clipboard GetData should use it. 2009-04-16 11:35:15 -05:00
Huw Davies 6d4a394099 ole32: Store the marshalled IDataObject in a window property of the clipboard window.
This is somewhat different from how Windows behaves. Windows stores
two properties; an IID and an endpoint number.
2009-04-16 11:35:08 -05:00
Huw Davies 1ec12f68b1 ole32: Rename a variable. 2009-04-16 11:34:55 -05:00
Huw Davies bd9eb3b527 ole32: Don't pass a window if we're reading from the clipboard. 2009-04-16 11:34:49 -05:00
Huw Davies 6526b570e1 ole32: Add a function to return (and possibly create) the clipboard's window. 2009-04-16 11:34:39 -05:00
Huw Davies 6ce9922f3d ole32: Add a helper function to set and release the source IDataObject. 2009-04-16 11:34:06 -05:00
Huw Davies bf8d85cee0 ole32: Add a helper function to return the ole clipboard structure. 2009-04-16 11:33:57 -05:00
Huw Davies 72f53ed4d7 ole32: Unicodify window creation. Don't register the class as global. 2009-04-16 11:33:50 -05:00
Huw Davies 5defc71dfe ole32: Use helper function to duplicate global memory. 2009-04-16 11:33:40 -05:00
Huw Davies 469d6ea2df ole32: Add support for rendering storage data to the clipboard. 2009-04-16 11:33:29 -05:00
Huw Davies f4745c0a06 ole32: Make all formats available to the clipboard. 2009-04-16 11:33:19 -05:00
Huw Davies 1e8727aacf ole32: Add support for rendering stream data to the clipboard. 2009-04-16 11:33:03 -05:00
Huw Davies 5e557d83ca ole32: Rewrite the clipboard window's wndproc to use the cached enum data. 2009-04-16 11:30:38 -05:00
Huw Davies b958dfdc47 ole32: Change helper function to return the matching entry. 2009-04-16 11:30:09 -05:00
Huw Davies e58a9db129 ole32: Store a cached version of the local data object's enumeration. 2009-04-16 11:30:00 -05:00
Alexandre Julliard c378490d7d ole32/tests: Avoid size_t in traces. 2009-04-08 16:09:52 +02:00
Vincent Povirk 9c02fda4a9 ole32: When renaming a storage element, delete from the current iface. 2009-04-02 16:28:30 +02:00
Huw Davies 628332aee1 ole32: Change the global memory duplicator to return HRESULT. 2009-04-01 15:23:20 +02:00
Huw Davies 3cb4ab588d ole32: Rename a few variables and remove a couple of meaningless comments. 2009-04-01 15:23:14 +02:00
Huw Davies f2ba37e5b9 ole32: Move the embed source hack to a separate function. 2009-04-01 15:23:09 +02:00
Huw Davies 126ec0181f ole32/tests: Set tymed in GetData and AddRef the interfaces (ReleaseStgMedium releases them even if pUnkForRelease is non-NULL). 2009-04-01 15:23:03 +02:00
Huw Davies 61fa9bb061 ole32/tests: Add some tests for stream data. 2009-03-31 15:00:38 +02:00
Huw Davies d28d731b61 ole32/tests: Add broken return value for win98. 2009-03-31 15:00:33 +02:00
Huw Davies 5492fd2b0d ole32/tests: On win9x GetClipboardData returns a new handle. 2009-03-31 15:00:28 +02:00
Huw Davies 2c6be9521b ole32: Simplify some of the error handling. 2009-03-31 15:00:23 +02:00
Huw Davies 59501e037b ole32/tests: Tests for EnumFormatEtc. 2009-03-30 16:42:46 +02:00
Huw Davies 89dcb968a3 ole32/tests: Fix DVTARGETDEVICE offsets. 2009-03-30 16:42:41 +02:00
Huw Davies 969e5d7ee1 ole32: Reimplement the formatetc enumerator using 'Ole Private Data'. 2009-03-30 16:42:22 +02:00
Huw Davies fc78f552a0 ole32: AddRef does not return an HRESULT. Have the constructor create the object with one reference. 2009-03-30 16:42:12 +02:00
Huw Davies 25f1b058a8 ole32: Change the enum formatetc constructor to return HRESULT. 2009-03-30 16:42:08 +02:00
Huw Davies 1cc023c53a ole32: Don't hold a reference on the parent IDataObject. 2009-03-30 16:42:03 +02:00
Huw Davies 1213964330 ole32: Rename a variable. 2009-03-30 16:41:56 +02:00
Huw Davies d93688a721 ole32: Use a helper function to access the enum format implementation. 2009-03-30 16:41:51 +02:00
Huw Davies 690202440e ole32: Set the 'Ole Private Data' clipboard format. 2009-03-26 16:11:24 +01:00
Huw Davies b7a2e83ddb ole32: OleFlushClipboard shouldn't call EmptyClipboard. 2009-03-26 16:11:21 +01:00
Huw Davies b75caee2ab ole32/tests: Tests for the 'Ole Private Data' clipboard format. 2009-03-25 15:43:36 +01:00
Huw Davies 3383db6107 ole32: Move the code to set the clipboard formats to a separate function. 2009-03-25 15:43:27 +01:00
Huw Davies ef4b6b8749 ole32: Store the ole clipboard window's HWND in the DataObject clipboard format. 2009-03-23 15:52:18 +01:00
Huw Davies e77ab142e4 ole32: Register DataObject clipboard format. 2009-03-23 15:52:18 +01:00
Huw Davies c0fbbe7d91 ole32: Use IsEqualIID rather than memcmp. 2009-03-23 15:52:18 +01:00
Huw Davies 319d0ddca6 ole32: Simplify QueryInterface. 2009-03-23 15:52:18 +01:00
Huw Davies d72181381e ole32: pFmt isn't exposed to the client, so simplify its allocation. 2009-03-23 15:52:18 +01:00
Huw Davies 8beb83866f ole32: Rearrange functions to eliminate forward declarations. 2009-03-23 15:52:18 +01:00
Huw Davies 96bd8c5a7d ole32: Add a helper function to retrieve the implementation ptr. 2009-03-23 15:52:18 +01:00
Huw Davies e7ffa2aeb5 ole32: Don't allocate the ole clipboard object in global memory - we're not going to directly expose it to other processes. 2009-03-23 15:52:18 +01:00
Huw Davies e6eeb3aa17 ole32: Remove unused static variable. 2009-03-23 15:52:18 +01:00
Michael Stefaniuc efbb4ebf3e widl: Output "LONG" instead of "long" for a 32bit integer.
long is always 32bit in IDL files but that's not true in C.
2009-03-13 11:15:21 +01:00
Alexandre Julliard 7b6dd2c9f8 ole32: Get rid of WINE_StringFromCLSID and A->W conversions. 2009-03-12 13:09:52 +01:00
Alexandre Julliard 6b40f64e18 ole32: Make compobj.dll into a stand-alone 16-bit module. 2009-03-12 13:09:31 +01:00
Alexandre Julliard 2e1b309fba ole32: Make ole2.dll into a stand-alone 16-bit module. 2009-03-11 17:05:20 +01:00
Alexandre Julliard f7fe2edadd ole32: Make storage.dll into a stand-alone 16-bit module. 2009-03-11 17:03:10 +01:00
Alexandre Julliard 7511d67447 ole32: Make ole2nls.dll into a stand-alone 16-bit module. 2009-03-11 16:53:06 +01:00
Alexandre Julliard dc81065d44 ole32: Make ole2thk.dll into a stand-alone 16-bit module. 2009-03-11 16:51:09 +01:00
Alexandre Julliard b4bbe0c4a0 ole32: Make ole2prox.dll into a stand-alone 16-bit module. 2009-03-11 16:51:09 +01:00
Alexandre Julliard ea6382623e ole32: Make ole2conv.dll into a stand-alone 16-bit module. 2009-03-11 16:51:09 +01:00
Rob Shearman d974922698 ole32: Fix a memory leak in an error path in COMPOBJ_DllList_Add. 2009-03-09 12:04:35 +01:00
Paul Vriens e31df3616a ole32/tests: Remove an unused function declaration. 2009-03-06 15:39:30 +01:00
Huw Davies 561df2f1c6 ole32: Add support for VT_DECIMAL. 2009-03-06 15:39:02 +01:00
Huw Davies 5e0d4c774c ole32/tests: win9x and winnt don't include the trailing '\0'. 2009-02-26 15:13:26 +01:00
Alexandre Julliard b55f6dfed5 ole32/tests: Don't hang forever in the child process. 2009-02-17 14:58:45 +01:00
Rob Shearman 2803516d26 ole32: Round the extected size in the marshal and moniker tests using the results of sizing a global, not a heap pointer.
The rounding isn't the same on Win9x, and the size being compared to
is that of a global handle.
2009-02-17 12:47:53 +01:00
Rein Klazes 788add572b ole32: In PropVariantCopy() fix calculation size of array that contain pointers, not characters. 2009-02-16 15:35:15 +01:00
Michael Stefaniuc 0449701c31 ole32: Remove superfluous pointer casts. 2009-02-11 12:29:56 +01:00
Rob Shearman ad880ba057 ole32: Fix a test failure in the moniker tests on Win9x.
Also fix a crash in running the tests on Win95.
2009-02-11 11:42:21 +01:00
Rob Shearman 1e8ae571f5 ole32: Fix some test failures in the free threaded marshaller tests on Win9x & NT4.
These platforms only write 8 bytes into the stream so cope appropriately.
2009-02-11 11:42:17 +01:00
Michael Stefaniuc a90828aa60 ole32: Use GetWindowLongPtr/SetWindowLongPtr for pointers. 2009-02-10 12:33:00 +01:00
Rob Shearman b859d2052b ole32: Allow some optional methods to be called in the OleCreate tests.
Fixes failures in these tests on NT4.
2009-02-09 14:03:09 +01:00
Rob Shearman d26250fd08 ole32: Add framework in the ole2 tests for having optionally called methods. 2009-02-09 14:03:03 +01:00
Rob Shearman db851a1d2a ole32: Output the size that we didn't expect in the HGLOBAL marshalling tests. 2009-02-09 14:02:29 +01:00
Rob Shearman f2b17029aa ole32: Fix some test failures in the HGLOBAL marshalling tests on 64-bit Windows. 2009-02-09 13:58:07 +01:00
Rob Shearman 2eca96af67 ole32: Fix CLIPFORMAT marshalling on 64-bit platforms by not using the wireCLIPFORMAT type.
The wireCLIPFORMAT represents the memory equivalent format of the wire
format and not the wire format itself.

Also update the tests to do the same.
2009-02-09 13:58:04 +01:00
Rob Shearman 40660894c8 ole32: Fix an ole2 test failure on Win9x and NT4.
The combination of CF_BITMAP and TYMED_GLOBAL isn't accepted on newer
versions of Windows, so mark it as broken.
2009-02-06 13:03:16 +01:00
Andrew Talbot 772a9b3540 ole32: Remove superfluous shadow variables. 2009-02-03 12:39:35 +01:00
Rob Shearman 712e33e669 ole32: Initialise more of the context passed into user marshaling functions in the tests for these functions. 2009-02-02 11:55:29 +01:00
Rob Shearman d3085abc08 Change parameter type from size_t to SIZE_T for MIDL_user_allocate. 2009-02-02 11:55:21 +01:00
Ge van Geldorp 4b27dfec93 ole32/tests: Write to HKCR instead of HKCU/Software/Classes for the benefit of older Windows versions. 2009-01-29 15:59:39 +01:00
Rob Shearman 0025bdf607 ole32: Fix a missing CoUninitialize in test_CoFreeUnusedLibraries. 2009-01-28 14:15:48 +01:00
Rob Shearman 9353dff5b3 ole32: Fix some tests that fail on NT4 and Win9x.
Round the expected sizes up to the alignment used by HeapSize, which
is 4 on Win9x and NT4 but 1 in more recent versions.

Additionally fix an IGlobalInterfaceTable test which erroneously
succeeds on these older OSs.
2009-01-28 14:15:42 +01:00
Huw Davies bc93467f5d ole32: The bigblockfile on ILockBytes implementation should work on any ILockBytes not just those based on HGLOBAL. 2009-01-28 12:31:53 +01:00
Huw Davies bfc32ae0c6 ole32: Add a helper function to return the file size and modify EnsureExists to use it. 2009-01-28 12:31:25 +01:00
Huw Davies cc7edbe3b5 ole32: Move functions around in file to avoid forward declarations. 2009-01-28 12:31:08 +01:00
Huw Davies 70ee112337 ole32: Move private data structure out of header file. 2009-01-28 12:31:01 +01:00
Ge van Geldorp f7a34db378 ole32/tests: Some Windows versions need the class to be registered. 2009-01-26 16:06:02 +01:00
Nikolay Sivov 32cc4011ee kernel32: Make GetOverlappedResult crash on NULL args as native does. 2009-01-22 15:28:24 +01:00
Michael Stefaniuc bdbfac5996 ole32/tests: Remove superfluous pointer casts. 2009-01-20 12:34:31 +01:00
Andrey Turkin 644220b518 ole32: Prevent recursion when CLSIDFromString is passed empty string. 2009-01-20 12:23:11 +01:00
Andrey Turkin d0a345f914 ole32: Add a few fields to OLE TLS area to match native memory layout. 2009-01-19 14:46:02 +01:00
Andrey Turkin a06f568a2a ole32: Add CoGetCallContext and CoSwitchCallContext implementations. 2009-01-19 14:44:32 +01:00
Andrey Turkin d20ab01ed2 ole32: Do not crash in WriteClassStg if passed NULL pointer. 2009-01-15 12:42:33 +01:00
Andrey Turkin 37d27c38ce ole32: Add IContextCallback interface to context object. 2009-01-15 12:42:12 +01:00
Andrey Turkin 8ff76d24f6 ole32/tests: Add test for IContextCallback. 2009-01-14 14:16:21 +01:00
Austin English 753affe48d ole32: Add tests for CoInitializeEx. 2009-01-13 16:17:02 +01:00
Andrew Talbot 9e537ae06c ole32: Declare a function static. 2009-01-12 13:11:01 +01:00
Alexandre Julliard 8377b2464b ole32/tests: Fix marshalling data layout for Win64. 2009-01-10 21:06:09 +01:00
Nikolay Sivov 37d4349636 ole32: Some tests for IMoniker::IsRunning with NULL args. 2009-01-09 14:06:13 +01:00
Nikolay Sivov df0ecdfd30 ole32: Fix some comment typos. 2009-01-09 14:06:13 +01:00
Francois Gouget ad587aa036 ole32: Don't use the default debug channel before it has been defined. 2009-01-08 14:52:57 +01:00
Nikolay Sivov 11c1d7a0e7 ole32: Fix return value for DefaultHandler_GetMiscStatus. 2009-01-07 12:27:34 +01:00
Alexandre Julliard e793a2ba35 ole32/tests: Fix a structure size check for Win64. 2009-01-05 15:37:48 +01:00
Michael Stefaniuc e86eb8efa6 include: Change RPC_STATUS from long to LONG for Win64 compatibility.
Also fix the compiler warnings introduced by this change.
2009-01-04 13:34:38 +01:00
Michael Karcher 11aef5e0a2 ole32: Add HICON user marshalling stubs. 2009-01-04 13:33:12 +01:00
Alexandre Julliard 68bd54b558 ole32/tests: Fix a pointer casting warning on 64-bit. 2009-01-03 20:14:11 +01:00
Ge van Geldorp f5df407522 ole32/tests: Add declarations which are not present in SDK headers. 2009-01-03 14:55:32 +01:00
Ge van Geldorp 69c5fca81a ole32/tests: Work around broken Windows urlmon.dll. 2009-01-03 14:55:32 +01:00