Author: cfinck
Date: Wed Oct 26 12:37:27 2016
New Revision: 73039
URL:
http://svn.reactos.org/svn/reactos?rev=73039&view=rev
Log:
[PRINTING]
Finally merge my branch "colins-printing-for-freedom", giving us an initial
implementation of a Win32-compatible Printing Stack (localmon, localspl, spoolss, spoolsv,
winspool)
You can now send raw data to parallel port printers using documented Win32 API. An example
application is in my "winspool_print" commandline tool merged to rosapps.
ReactOS folks, thanks for your support during the development of this, making my
bachelor's thesis a reality! :)
Documentation/Thesis:
https://svn.reactos.org/reactos/trunk/documentation/articles/Printing%20Sta…
Video:
https://www.youtube.com/watch?v=cNzePucTOLY
CORE-10489
Added:
trunk/reactos/sdk/include/psdk/winspool.h
- copied unchanged from r73027,
branches/colins-printing-for-freedom/reactos/include/psdk/winspool.h
trunk/reactos/sdk/include/reactos/idl/winspool.idl
- copied unchanged from r73027,
branches/colins-printing-for-freedom/reactos/include/reactos/idl/winspool.idl
trunk/reactos/sdk/lib/skiplist/
- copied from r73027, branches/colins-printing-for-freedom/reactos/lib/skiplist/
trunk/reactos/win32ss/printing/
- copied from r73027,
branches/colins-printing-for-freedom/reactos/win32ss/printing/
trunk/rosapps/applications/cmdutils/winspool_print/
- copied from r73027,
branches/colins-printing-for-freedom/reactos/temp/winspool_print/
trunk/rostests/apitests/localspl/
- copied from r73027,
branches/colins-printing-for-freedom/rostests/apitests/localspl/
trunk/rostests/apitests/spoolss/
- copied from r73027,
branches/colins-printing-for-freedom/rostests/apitests/spoolss/
trunk/rostests/apitests/winprint/
- copied from r73027,
branches/colins-printing-for-freedom/rostests/apitests/winprint/
trunk/rostests/apitests/winspool/
- copied from r73027,
branches/colins-printing-for-freedom/rostests/apitests/winspool/
Removed:
trunk/reactos/base/services/spoolsv/
trunk/reactos/dll/win32/localspl/
trunk/reactos/dll/win32/ntprint/
trunk/reactos/dll/win32/spoolss/
trunk/reactos/dll/win32/winspool/
Modified:
trunk/ (props changed)
trunk/reactos/ (props changed)
trunk/reactos/base/services/CMakeLists.txt
trunk/reactos/boot/bootdata/hivesys.inf
trunk/reactos/dll/win32/CMakeLists.txt
trunk/reactos/sdk/lib/CMakeLists.txt
trunk/reactos/win32ss/CMakeLists.txt
trunk/reactos/win32ss/printing/base/spoolsv/CMakeLists.txt
trunk/reactos/win32ss/printing/base/winspool/CMakeLists.txt
trunk/reactos/win32ss/printing/monitors/localmon/ui/CMakeLists.txt
trunk/reactos/win32ss/printing/providers/localspl/CMakeLists.txt
trunk/rosapps/applications/cmdutils/CMakeLists.txt
trunk/rostests/ (props changed)
trunk/rostests/apitests/CMakeLists.txt
trunk/rostests/winetests/CMakeLists.txt
Propchange: trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Wed Oct 26 12:37:27 2016
@@ -0,0 +1 @@
+/branches/colins-printing-for-freedom:67543-68405,68407-68414,68417-70595
Propchange: trunk/reactos/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 26 12:37:27 2016
@@ -4,6 +4,7 @@
/branches/GSoC_2016/USB:72366,72376
/branches/GSoC_Network:51545-51546
/branches/cmake-bringup:50484,50693,50719,51544-52564
+/branches/colins-printing-for-freedom/reactos:67543-68405,68407-68414,68417-70595
/branches/condrv_restructure:63104-65657
/branches/header-work:45691-47721
/branches/kd++:58883-58973
Modified: trunk/reactos/base/services/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/CMakeLists.t…
==============================================================================
--- trunk/reactos/base/services/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/base/services/CMakeLists.txt [iso-8859-1] Wed Oct 26 12:37:27 2016
@@ -4,7 +4,6 @@
add_subdirectory(eventlog)
add_subdirectory(rpcss)
add_subdirectory(schedsvc)
-add_subdirectory(spoolsv)
add_subdirectory(srvsvc)
add_subdirectory(svchost)
add_subdirectory(tcpsvcs)
Modified: trunk/reactos/boot/bootdata/hivesys.inf
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/hivesys.inf?…
==============================================================================
--- trunk/reactos/boot/bootdata/hivesys.inf [iso-8859-1] (original)
+++ trunk/reactos/boot/bootdata/hivesys.inf [iso-8859-1] Wed Oct 26 12:37:27 2016
@@ -1252,13 +1252,37 @@
HKLM,"SYSTEM\CurrentControlSet\Control\PnP\Pci\CardList","Ali",0x00030003,\
01,00,00,00,b9,10,21,15,00,00,00,00,00,00,00,00
+
+; Printing
HKLM,"SYSTEM\CurrentControlSet\Control\Print","MajorVersion",0x00010001,2
-HKLM,"SYSTEM\CurrentControlSet\Control\Print","MinorVersion",0x00010003,0
-HKLM,"SYSTEM\CurrentControlSet\Control\Print","PriorityClass",0x00010003,0
-HKLM,"SYSTEM\CurrentControlSet\Control\Print\Environments",,0x00000012
-HKLM,"SYSTEM\CurrentControlSet\Control\Print\Monitors",,0x00000012
-HKLM,"SYSTEM\CurrentControlSet\Control\Print\Monitors\Local
Port","Driver",2,"localspl.dll"
+HKLM,"SYSTEM\CurrentControlSet\Control\Print","MinorVersion",0x00010001,0
+HKLM,"SYSTEM\CurrentControlSet\Control\Print","PriorityClass",0x00010001,0
+
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Environments",,0x00000010
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Environments\Windows NT
x86","Directory",,"W32X86"
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Environments\Windows NT x86\Print
Processors",,0x00000010
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Environments\Windows NT x86\Print
Processors\winprint","Driver",,"winprint.dll"
+
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Monitors",,0x00000010
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Monitors\Local
Port","Driver",,"localmon.dll"
+
HKLM,"SYSTEM\CurrentControlSet\Control\Print\Printers",,0x00000012
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Printers\Dummy Printer On
LPT1","Attributes",0x00010001,0
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Printers\Dummy Printer On
LPT1","Datatype",,"RAW"
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Printers\Dummy Printer On
LPT1","Description",,""
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Printers\Dummy Printer On
LPT1","Default DevMode",1,\
+00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
+00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,dc,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
+00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
+00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
+00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Printers\Dummy Printer On
LPT1","Port",,"LPT1:"
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Printers\Dummy Printer On
LPT1","Print Processor",,"winprint"
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Printers\Dummy Printer On
LPT1","Printer Driver",,"Dummy Printer Driver"
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Printers\Dummy Printer On
LPT1","Status",0x00010001,0
+
+HKLM,"SYSTEM\CurrentControlSet\Control\Print\Providers",,0x00000010
+
HKLM,"SYSTEM\CurrentControlSet\Control\ProductOptions","ProductType",2,"ServerNT"
HKLM,"SYSTEM\CurrentControlSet\Control\ProductOptions","ProductSuite",0x00010002,"Terminal
Server"
Modified: trunk/reactos/dll/win32/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/CMakeLists.txt?r…
==============================================================================
--- trunk/reactos/dll/win32/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/CMakeLists.txt [iso-8859-1] Wed Oct 26 12:37:27 2016
@@ -72,8 +72,6 @@
add_subdirectory(kernel32)
add_subdirectory(kernel32_vista)
add_subdirectory(loadperf)
-add_subdirectory(localspl)
-add_subdirectory(localui)
add_subdirectory(lpk)
add_subdirectory(lsasrv)
add_subdirectory(lz32)
@@ -139,7 +137,6 @@
add_subdirectory(ntdsapi)
add_subdirectory(ntlanman)
add_subdirectory(ntmarta)
-add_subdirectory(ntprint)
add_subdirectory(objsel)
add_subdirectory(odbc32)
add_subdirectory(odbccp32)
@@ -194,7 +191,6 @@
add_subdirectory(sndblst)
add_subdirectory(snmpapi)
add_subdirectory(softpub)
-add_subdirectory(spoolss)
add_subdirectory(srclient)
add_subdirectory(stdole2.tlb)
add_subdirectory(stdole32.tlb)
@@ -238,7 +234,6 @@
add_subdirectory(wininet)
add_subdirectory(winmm)
add_subdirectory(winscard)
-add_subdirectory(winspool)
add_subdirectory(winsta)
add_subdirectory(wintrust)
add_subdirectory(wlanapi)
Modified: trunk/reactos/sdk/lib/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/lib/CMakeLists.txt?rev…
==============================================================================
--- trunk/reactos/sdk/lib/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/sdk/lib/CMakeLists.txt [iso-8859-1] Wed Oct 26 12:37:27 2016
@@ -42,6 +42,7 @@
add_subdirectory(rtl)
add_subdirectory(scrnsave)
+add_subdirectory(skiplist)
add_subdirectory(strmiids)
add_subdirectory(smlib)
add_subdirectory(tdilib)
Modified: trunk/reactos/win32ss/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/CMakeLists.txt?rev…
==============================================================================
--- trunk/reactos/win32ss/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/win32ss/CMakeLists.txt [iso-8859-1] Wed Oct 26 12:37:27 2016
@@ -16,6 +16,7 @@
endif()
add_subdirectory(gdi/gdi32)
+add_subdirectory(printing)
add_subdirectory(reactx)
add_subdirectory(user/user32)
add_subdirectory(user/winsrv)
Modified: trunk/reactos/win32ss/printing/base/spoolsv/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/printing/base/spoo…
==============================================================================
--- trunk/reactos/win32ss/printing/base/spoolsv/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/win32ss/printing/base/spoolsv/CMakeLists.txt [iso-8859-1] Wed Oct 26
12:37:27 2016
@@ -1,6 +1,6 @@
-include_directories(${REACTOS_SOURCE_DIR}/include/reactos/idl)
-add_rpc_files(server ${REACTOS_SOURCE_DIR}/include/reactos/idl/winspool.idl)
+include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/idl)
+add_rpc_files(server ${REACTOS_SOURCE_DIR}/sdk/include/reactos/idl/winspool.idl)
list(APPEND SOURCE
forms.c
Modified: trunk/reactos/win32ss/printing/base/winspool/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/printing/base/wins…
==============================================================================
--- trunk/reactos/win32ss/printing/base/winspool/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/win32ss/printing/base/winspool/CMakeLists.txt [iso-8859-1] Wed Oct 26
12:37:27 2016
@@ -1,6 +1,6 @@
-include_directories(${REACTOS_SOURCE_DIR}/include/reactos/idl)
-add_rpc_files(client ${REACTOS_SOURCE_DIR}/include/reactos/idl/winspool.idl)
+include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/idl)
+add_rpc_files(client ${REACTOS_SOURCE_DIR}/sdk/include/reactos/idl/winspool.idl)
spec2def(winspool.drv winspool.spec ADD_IMPORTLIB)
list(APPEND SOURCE
Modified: trunk/reactos/win32ss/printing/monitors/localmon/ui/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/printing/monitors/…
==============================================================================
--- trunk/reactos/win32ss/printing/monitors/localmon/ui/CMakeLists.txt [iso-8859-1]
(original)
+++ trunk/reactos/win32ss/printing/monitors/localmon/ui/CMakeLists.txt [iso-8859-1] Wed
Oct 26 12:37:27 2016
@@ -1,6 +1,6 @@
add_definitions(-D__WINESRC__)
-include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
+include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/wine)
spec2def(localui.dll localui.spec)
list(APPEND SOURCE
Modified: trunk/reactos/win32ss/printing/providers/localspl/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/printing/providers…
==============================================================================
--- trunk/reactos/win32ss/printing/providers/localspl/CMakeLists.txt [iso-8859-1]
(original)
+++ trunk/reactos/win32ss/printing/providers/localspl/CMakeLists.txt [iso-8859-1] Wed Oct
26 12:37:27 2016
@@ -1,7 +1,7 @@
spec2def(localspl.dll localspl.spec ADD_IMPORTLIB)
-include_directories(${REACTOS_SOURCE_DIR}/lib/skiplist)
+include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/skiplist)
list(APPEND SOURCE
jobs.c
Modified: trunk/rosapps/applications/cmdutils/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/rosapps/applications/cmdutils/CMak…
==============================================================================
--- trunk/rosapps/applications/cmdutils/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/rosapps/applications/cmdutils/CMakeLists.txt [iso-8859-1] Wed Oct 26 12:37:27
2016
@@ -5,4 +5,5 @@
add_subdirectory(tee)
add_subdirectory(touch)
add_subdirectory(uptime)
+add_subdirectory(winspool_print)
add_subdirectory(y)
Propchange: trunk/rostests/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Oct 26 12:37:27 2016
@@ -1,2 +1,3 @@
/branches/GSoC_2011/KMTestSuite:51165-53670
+/branches/colins-printing-for-freedom/rostests:67543-68405,68417-70595
/branches/ros-amd64-bringup/rostests:44459,44462,44537
Modified: trunk/rostests/apitests/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/CMakeLists.txt?r…
==============================================================================
--- trunk/rostests/apitests/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/rostests/apitests/CMakeLists.txt [iso-8859-1] Wed Oct 26 12:37:27 2016
@@ -15,6 +15,7 @@
if(NOT ARCH STREQUAL "amd64")
add_subdirectory(kernel32)
endif()
+add_subdirectory(localspl)
add_subdirectory(msgina)
add_subdirectory(msvcrt)
add_subdirectory(ntdll)
@@ -24,6 +25,7 @@
add_subdirectory(sdk)
add_subdirectory(setupapi)
add_subdirectory(shell32)
+add_subdirectory(spoolss)
add_subdirectory(psapi)
add_subdirectory(user32)
add_subdirectory(user32_dynamic)
@@ -33,4 +35,6 @@
endif()
add_subdirectory(winhttp)
add_subdirectory(wininet)
+add_subdirectory(winprint)
+add_subdirectory(winspool)
add_subdirectory(ws2_32)
Modified: trunk/rostests/winetests/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/CMakeLists.txt?…
==============================================================================
--- trunk/rostests/winetests/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/rostests/winetests/CMakeLists.txt [iso-8859-1] Wed Oct 26 12:37:27 2016
@@ -112,7 +112,7 @@
add_subdirectory(winhttp)
add_subdirectory(wininet)
add_subdirectory(winmm)
-add_subdirectory(winspool)
+#add_subdirectory(winspool)
add_subdirectory(wintrust)
add_subdirectory(wlanapi)
add_subdirectory(wldap32)