mirror of
https://github.com/reactos/reactos.git
synced 2024-10-29 19:13:58 +00:00
69 lines
1.5 KiB
C
69 lines
1.5 KiB
C
/*
|
|
* COPYRIGHT: See COPYING in the top level directory
|
|
* PROJECT: ReactOS net command
|
|
* FILE: base/applications/network/net/cmdContinue.c
|
|
* PURPOSE:
|
|
*
|
|
* PROGRAMMERS: Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org>
|
|
*/
|
|
|
|
#include "net.h"
|
|
|
|
INT cmdContinue(INT argc, WCHAR **argv)
|
|
{
|
|
SC_HANDLE hManager = NULL;
|
|
SC_HANDLE hService = NULL;
|
|
SERVICE_STATUS status;
|
|
INT nError = 0;
|
|
INT i;
|
|
|
|
if (argc != 3)
|
|
{
|
|
ConResPuts(StdOut, IDS_CONTINUE_SYNTAX);
|
|
return 1;
|
|
}
|
|
|
|
for (i = 2; i < argc; i++)
|
|
{
|
|
if (_wcsicmp(argv[i], L"/help") == 0)
|
|
{
|
|
ConResPuts(StdOut, IDS_CONTINUE_HELP);
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
hManager = OpenSCManager(NULL, SERVICES_ACTIVE_DATABASE, SC_MANAGER_ENUMERATE_SERVICE);
|
|
if (hManager == NULL)
|
|
{
|
|
ConPrintf(StdErr, L"[OpenSCManager] Error: %ld\n", GetLastError());
|
|
nError = 1;
|
|
goto done;
|
|
}
|
|
|
|
hService = OpenService(hManager, argv[2], SERVICE_PAUSE_CONTINUE);
|
|
if (hService == NULL)
|
|
{
|
|
ConPrintf(StdErr, L"[OpenService] Error: %ld\n", GetLastError());
|
|
nError = 1;
|
|
goto done;
|
|
}
|
|
|
|
if (!ControlService(hService, SERVICE_CONTROL_CONTINUE, &status))
|
|
{
|
|
ConPrintf(StdErr, L"[ControlService] Error: %ld\n", GetLastError());
|
|
nError = 1;
|
|
}
|
|
|
|
done:
|
|
if (hService != NULL)
|
|
CloseServiceHandle(hService);
|
|
|
|
if (hManager != NULL)
|
|
CloseServiceHandle(hManager);
|
|
|
|
return nError;
|
|
}
|
|
|
|
/* EOF */
|
|
|