Commit graph

24 commits

Author SHA1 Message Date
Doug Lyons
ecde376825
[WINSPOOL] Implement GetPrinterA based on GetPrinterW (#2308) 2020-02-06 19:02:46 +01:00
James Tabor
adffa8ea75 [Printing] Part of GDI Support
Fix ups and added support to prevent GDI from crashing. These functions
will be required for GDI.

Part 1 of print support.
2020-01-31 17:38:47 -06:00
Colin Finck
45f39ffc25
[FORMATTING] Fix indentation of winspool/printers.c
No code changes
2020-01-31 18:47:53 +01:00
Doug Lyons
e8b177825b
[WINSPOOL] Add Implementation of EnumPrintersA (#2273) 2020-01-31 18:42:55 +01:00
Doug Lyons
acec69a1d7 [PRINTING] Improve Stubs for GetPrinterA and GetPrinterDeviceA (#2274) 2020-01-26 16:21:39 +01:00
Jérôme Gardou
23373acbb9 [CMAKE] Use modules instead of shared libraries
There is no need to compile our DLLs as shared libraries since we are
managing symbols exports and imports through spec files.

On my system, this reduces the configure-time by a factor of two.
2019-04-06 17:43:38 +02:00
Bișoc George
bd5fb32b79 [COVERITY][SPOOLSS] Fix a resource leak
Unload the library pointed by hWinspool when the function fails.

CID 1401149
2019-03-31 20:09:42 +02:00
Mark Jansen
8ad7517446
[WINSPOOL] Semi implement DocumentPropertiesW
CORE-15522
2019-01-06 21:07:27 +01:00
Mark Jansen
796dd5f53c
[PRINTING] Semi-implement GetPrinterDriverW
CORE-15522
2019-01-06 21:07:27 +01:00
Mark Jansen
2e4457f223
[PRINTING] The first argument to PackStrings can be const. 2019-01-06 21:07:09 +01:00
Colin Finck
22ffe5300b [PRINTING] Replace all my custom marshalling code by calls to the newly implemented APIs, thereby significantly reducing the codebase and providing a sane template to implement more Printing APIs. 2018-01-17 12:52:12 +01:00
Colin Finck
35ef5a3c24 [PRINTING] Try to fix Linux build #2 2018-01-17 10:55:02 +01:00
Colin Finck
86c59690da [PRINTING] Try to fix Linux build.
Why this previously built without any errors using GCC and MSVC under Windows is left as an exercise to the reader.
2018-01-17 10:41:55 +01:00
Colin Finck
f3ea8225cb [PRINTING] Implement the undocumented MarshallDownStructure, MarshallDownStructuresArray, MarshallUpStructure, and MarshallUpStructuresArray to the extent I need and could find out through black-box testing.
PDBs reveal that these functions are also used in winspool.drv, but not imported from spoolss.dll to retain the client/server architecture.
As winspool.drv highly benefits from the MarshallUp* functions, I put them in a source file shared between spoolss.dll and winspool.drv.

The added API Tests cover my testing and all implemented features.
One more item done from https://reactos.org/wiki/Printing !
2018-01-17 10:13:25 +01:00
Colin Finck
3a69fd4e96 [PRINTING] Fix GetPrinterW, add tests for it and GetDefaultPrinterA/W, and add a proper stub for GetPrinterDriverDirectoryA.
* Pass the correct handle to _RpcGetPrinter in GetPrinterW.
* Pass an empty string instead of a NULL pointer as wszComputerName to the GetPrinterLevel* functions, because this variable is later used as source for StringCbCopyExW.
* Don't check for GetLastError() == ERROR_SUCCESS in tests. Windows apparently only sets the last error in case of failure.
  The Printing code should probably be changed similarly in a future commit.

Should fix CORE-14072
2017-12-10 12:28:08 +01:00
Colin Finck
46b9165909 [WINSPOOL] Provide stubs with tracing and reasonable failure codes for even more popular Spooler APIs.
This may get more applications to work which previously called into the WINE-generated stubs (that throw an exception).
It also improves debug logs when the "winspool" debug channel is enabled. With such detailed debug logs, we may get an idea which winspool APIs need to be implemented sooner than others.
2017-12-09 14:14:05 +01:00
Colin Finck
1f6f08eca0 [WINSPOOL] Add tracing to all exported APIs. 2017-12-09 14:14:05 +01:00
Colin Finck
45b9b5c1ef [WINSPOOL] Convert the returned Unicode string back to ANSI in GetDefaultPrinterA.
Thanks to Mark for the hint in CORE-14072!
2017-12-09 14:14:05 +01:00
Amine Khaldi
5633423086 [FREETYPE][PORTCLS][RPCSS][SPOOLSV][STLPORT][USETUP][WLANSVC] Silence some clang-cl warnings. 2017-12-07 23:26:59 +01:00
Amine Khaldi
d56c9a8927 [INCLUDE/REACTOS][LOCALMON][LOCALSPL][SPOOLSS] Add some missing VOIDs. CORE-11799 (#94) 2017-10-30 22:43:47 +01:00
Amine Khaldi
0625e4d4f5 [SPOOLSV] Add some missing VOIDs. CORE-11799 (#94) 2017-10-28 14:43:14 +01:00
Amine Khaldi
706a70c9e1 [NTDLL][NTUSER][SPOOLSS][WINSPOOL] Add some missing VOIDs. CORE-11799 (#94) 2017-10-28 13:46:11 +01:00
Hermès Bélusca-Maïto
acdf04bad2 Add .keep guard files in order to restore lost but empty directories we had with SVN.
Note that when you start populating these directories, you can remove the associated .keep guard file(s)!
2017-10-04 10:28:36 +02:00
Colin Finck
c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00