[PATCH v3 2/2] winspool: Add performance counters service stubs.

Huw Davies huw at codeweavers.com
Thu Jul 12 04:52:40 CDT 2018


From: Dmitry Timoshkov <dmitry at baikal.ru>

Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
Signed-off-by: Huw Davies <huw at codeweavers.com>
---
 dlls/winspool.drv/info.c            | 29 +++++++++++++++++++++++++++++
 dlls/winspool.drv/winspool.drv.spec |  6 +++---
 loader/wine.inf.in                  |  7 +++++++
 3 files changed, 39 insertions(+), 3 deletions(-)

diff --git a/dlls/winspool.drv/info.c b/dlls/winspool.drv/info.c
index 9c24256b51..f63f3f687b 100644
--- a/dlls/winspool.drv/info.c
+++ b/dlls/winspool.drv/info.c
@@ -8681,3 +8681,32 @@ HRESULT WINAPI UploadPrinterDriverPackageW( LPCWSTR server, LPCWSTR path, LPCWST
           flags, hwnd, dst, dstlen);
     return E_NOTIMPL;
 }
+
+/*****************************************************************************
+ *          PerfOpen [WINSPOOL.@]
+ */
+DWORD WINAPI PerfOpen(LPWSTR context)
+{
+    FIXME("%s: stub\n", debugstr_w(context));
+    return ERROR_SUCCESS;
+}
+
+/*****************************************************************************
+ *          PerfClose [WINSPOOL.@]
+ */
+DWORD WINAPI PerfClose(void)
+{
+    FIXME("stub\n");
+    return ERROR_SUCCESS;
+}
+
+/*****************************************************************************
+ *          PerfCollect [WINSPOOL.@]
+ */
+DWORD WINAPI PerfCollect(LPWSTR query, LPVOID *data, LPDWORD size, LPDWORD obj_count)
+{
+    FIXME("%s, %p, %p, %p: stub\n", debugstr_w(query), data, size, obj_count);
+    *size = 0;
+    *obj_count = 0;
+    return ERROR_SUCCESS;
+}
diff --git a/dlls/winspool.drv/winspool.drv.spec b/dlls/winspool.drv/winspool.drv.spec
index f7319cbe20..5d8a62d469 100644
--- a/dlls/winspool.drv/winspool.drv.spec
+++ b/dlls/winspool.drv/winspool.drv.spec
@@ -148,9 +148,9 @@
 @ stdcall IsValidDevmodeW(ptr long)
 @ stdcall OpenPrinterA(str ptr ptr)
 @ stdcall OpenPrinterW(wstr ptr ptr)
-@ stub PerfClose
-@ stub PerfCollect
-@ stub PerfOpen
+@ stdcall PerfClose()
+@ stdcall PerfCollect(wstr ptr ptr ptr)
+@ stdcall PerfOpen(wstr)
 @ stub PlayGdiScriptOnPrinterIC
 @ stub PrinterMessageBoxA
 @ stub PrinterMessageBoxW
diff --git a/loader/wine.inf.in b/loader/wine.inf.in
index 735d965366..9a76509983 100644
--- a/loader/wine.inf.in
+++ b/loader/wine.inf.in
@@ -3309,6 +3309,7 @@ StartType=3
 ErrorControl=1
 
 [SpoolerService]
+AddReg=SpoolerServiceKeys
 Description="Loads files to memory for later printing"
 DisplayName="Print Spooler"
 ServiceBinary="%11%\spoolsv.exe"
@@ -3317,6 +3318,12 @@ StartType=3
 ErrorControl=1
 LoadOrderGroup="SpoolerGroup"
 
+[SpoolerServiceKeys]
+HKLM,"System\CurrentControlSet\Services\Spooler\Performance","Library",,"winspool.drv"
+HKLM,"System\CurrentControlSet\Services\Spooler\Performance","Open",,"PerfOpen"
+HKLM,"System\CurrentControlSet\Services\Spooler\Performance","Close",,"PerfClose"
+HKLM,"System\CurrentControlSet\Services\Spooler\Performance","Collect",,"PerfCollect"
+
 [TerminalServices]
 Description="Remote desktop access"
 DisplayName="Terminal Services"
-- 
2.16.2




More information about the wine-devel mailing list