2025-11-28 00:35:46 +09:00

43 lines
984 B
Perl

#!perl -w
# Copyright (c) Microsoft Corporation
#***************************************************************************
#
# WMI Sample Script - Starts a service (Perl Script)
#
# This script demonstrates how to start a specific service from instances of
# Win32_Service.
#
# NOTE: This script only applies to NT-based systems since Win9x does not
# support services
#
#***************************************************************************
use strict;
use Win32::OLE;
my $ServiceSet;
eval { $ServiceSet =
Win32::OLE->GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\cimv2")->
ExecQuery("SELECT * FROM Win32_Service WHERE Name='ClipSrv'"); };
if(!$@ && defined $ServiceSet)
{
foreach my $service (in $ServiceSet)
{
my $Result = $service->StartService();
if ($Result == 0)
{
print "\nService started\n";
}
elsif ($Result == 10)
{
print "\nService already running\n";
}
}
}
else
{
print STDERR Win32::OLE->LastError, "\n";
}