[SC]
authorEric Kohl <eric.kohl@reactos.org>
Sun, 12 Jun 2016 20:12:15 +0000 (20:12 +0000)
committerEric Kohl <eric.kohl@reactos.org>
Sun, 12 Jun 2016 20:12:15 +0000 (20:12 +0000)
Merge the description functions into a single file.

svn path=/trunk/; revision=71628

reactos/base/applications/sc/CMakeLists.txt
reactos/base/applications/sc/description.c
reactos/base/applications/sc/qdescription.c [deleted file]

index e43c10e..baadded 100644 (file)
@@ -8,7 +8,6 @@ list(APPEND SOURCE
     description.c
     print.c
     qc.c
-    qdescription.c
     qfailure.c
     query.c
     sc.c
index aa95ca7..65d5aeb 100644 (file)
@@ -2,13 +2,93 @@
  * PROJECT:     ReactOS Services
  * LICENSE:     GPL - See COPYING in the top level directory
  * FILE:        base/applications/sc/description.c
- * PURPOSE:     Change the service description
+ * PURPOSE:     Query/Set the service description
  * COPYRIGHT:   Copyright 2016 Eric Kohl
  *
  */
 
 #include "sc.h"
 
+BOOL QueryDescription(LPCTSTR ServiceName)
+{
+    SC_HANDLE hManager = NULL;
+    SC_HANDLE hService = NULL;
+    BOOL bResult = TRUE;
+    DWORD cbBytesNeeded = 0;
+    LPSERVICE_DESCRIPTION pServiceDescription = NULL;
+
+#ifdef SCDBG
+    _tprintf(_T("service to show description - %s\n\n"), ServiceName);
+#endif
+
+    hManager = OpenSCManager(NULL,
+                             NULL,
+                             SC_MANAGER_CONNECT);
+    if (hManager == NULL)
+    {
+        bResult = FALSE;
+        goto done;
+    }
+
+    hService = OpenService(hManager, ServiceName, SERVICE_QUERY_CONFIG);
+    if (hService == NULL)
+    {
+        bResult = FALSE;
+        goto done;
+    }
+
+    if (!QueryServiceConfig2(hService,
+                             SERVICE_CONFIG_DESCRIPTION,
+                             NULL,
+                             0,
+                             &cbBytesNeeded))
+    {
+        if (cbBytesNeeded == 0)
+        {
+            bResult = FALSE;
+            goto done;
+        }
+    }
+
+    pServiceDescription = HeapAlloc(GetProcessHeap(), 0, cbBytesNeeded);
+    if (pServiceDescription == NULL)
+    {
+        SetLastError(ERROR_OUTOFMEMORY);
+        bResult = FALSE;
+        goto done;
+    }
+
+    if (!QueryServiceConfig2(hService,
+                             SERVICE_CONFIG_DESCRIPTION,
+                             (LPBYTE)pServiceDescription,
+                             cbBytesNeeded,
+                             &cbBytesNeeded))
+    {
+        bResult = FALSE;
+        goto done;
+    }
+
+    _tprintf(_T("SERVICE_NAME: %s\n"), ServiceName);
+    _tprintf(_T("        DESCRIPTION        : %s\n"),
+             (pServiceDescription->lpDescription) ? pServiceDescription->lpDescription : _T(""));
+
+done:
+    if (bResult == FALSE)
+        ReportLastError();
+
+    if (pServiceDescription != NULL)
+        HeapFree(GetProcessHeap(), 0, pServiceDescription);
+
+    if (hService)
+        CloseServiceHandle(hService);
+
+    if (hManager)
+        CloseServiceHandle(hManager);
+
+    return bResult;
+}
+
+
 BOOL SetDescription(LPCTSTR ServiceName, LPCTSTR Description)
 {
     SC_HANDLE hManager = NULL;
diff --git a/reactos/base/applications/sc/qdescription.c b/reactos/base/applications/sc/qdescription.c
deleted file mode 100644 (file)
index b6a0a35..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * PROJECT:     ReactOS Services
- * LICENSE:     GPL - See COPYING in the top level directory
- * FILE:        base/applications/sc/qdescription.c
- * PURPOSE:     Show the service description
- * COPYRIGHT:   Copyright 2016 Eric Kohl
- *
- */
-
-#include "sc.h"
-
-BOOL QueryDescription(LPCTSTR ServiceName)
-{
-    SC_HANDLE hManager = NULL;
-    SC_HANDLE hService = NULL;
-    BOOL bResult = TRUE;
-    DWORD cbBytesNeeded = 0;
-    LPSERVICE_DESCRIPTION pServiceDescription = NULL;
-
-#ifdef SCDBG
-    _tprintf(_T("service to show description - %s\n\n"), ServiceName);
-#endif
-
-    hManager = OpenSCManager(NULL,
-                             NULL,
-                             SC_MANAGER_CONNECT);
-    if (hManager == NULL)
-    {
-        bResult = FALSE;
-        goto done;
-    }
-
-    hService = OpenService(hManager, ServiceName, SERVICE_QUERY_CONFIG);
-    if (hService == NULL)
-    {
-        bResult = FALSE;
-        goto done;
-    }
-
-    if (!QueryServiceConfig2(hService,
-                             SERVICE_CONFIG_DESCRIPTION,
-                             NULL,
-                             0,
-                             &cbBytesNeeded))
-    {
-        if (cbBytesNeeded == 0)
-        {
-            bResult = FALSE;
-            goto done;
-        }
-    }
-
-    pServiceDescription = HeapAlloc(GetProcessHeap(), 0, cbBytesNeeded);
-    if (pServiceDescription == NULL)
-    {
-        SetLastError(ERROR_OUTOFMEMORY);
-        bResult = FALSE;
-        goto done;
-    }
-
-    if (!QueryServiceConfig2(hService,
-                             SERVICE_CONFIG_DESCRIPTION,
-                             (LPBYTE)pServiceDescription,
-                             cbBytesNeeded,
-                             &cbBytesNeeded))
-    {
-        bResult = FALSE;
-        goto done;
-    }
-
-    _tprintf(_T("SERVICE_NAME: %s\n"), ServiceName);
-    _tprintf(_T("        DESCRIPTION        : %s\n"),
-             (pServiceDescription->lpDescription) ? pServiceDescription->lpDescription : _T(""));
-
-done:
-    if (bResult == FALSE)
-        ReportLastError();
-
-    if (pServiceDescription != NULL)
-        HeapFree(GetProcessHeap(), 0, pServiceDescription);
-
-    if (hService)
-        CloseServiceHandle(hService);
-
-    if (hManager)
-        CloseServiceHandle(hManager);
-
-    return bResult;
-}