; Name: Mohsin Ahmed
; Email: MohsinA@microsoft.com
; Date: Mon Dec 02 17:54:32 1996
; File: s:/tftpd/readme
===========================================================================
Date: Mon Dec 02 17:54:32 1996
> set dir=D:\nt\PRIVATE\net\sockets\tcpcmd\tftpd\obj\i386
> cd %dir%
> sc create tftpd binPath= %dir%\tftpd.exe
[SC] CreateService SUCCESS
> sc query tftpd
... details ...
> net start tftpd
The tftpd service is starting.
The tftpd service was started successfully.
> tftp localhost get x y
===========================================================================
MohsinA, 29-May-97.
Customization fix:
Added registry settings and valid filename checks in dir.c
Security check: only files that can be accessed are:
StartDirectory\\[\w.-_]+
===========================================================================
Service Samples:
\\products2\relsys\win32.sdk\mstools\samples\win32\winnt\service
\\ntpdk\internl$\mstools\samples\win32\winnt\service
\\ntddk\internl$\ddk\src\network\packet
===========================================================================
> mstools\SC.EXE (Service control cmd line tool).
DESCRIPTION:
SC is a command line program used for communicating with the
NT Service Controller and services.
USAGE:
sc <server> [command] [service name] <option1> <option2>...
The option <server> has the form "\\ServerName"
Further help on commands can be obtained by typing: "sc [command]"
Commands:
query Queries the status for a service, or
enumerates the status for types of services.
start Starts a service.
pause Sends a PAUSE control request to a service.
interrogate Sends an INTERROGATE control request to a service.
continue Sends a CONTINUE control request to a service.
stop Sends a STOP request to a service.
config Changes the configuration of a service (persistant).
qc Queries the configuration information for a service.
delete Deletes a service (from the registry).
create Creates a service. (adds it to the registry).
control Sends a control to a service.
GetDisplayName Gets the DisplayName for a service.
GetKeyName Gets the ServiceKeyName for a service.
EnumDepend Enumerates Service Dependencies.
The following commands don't require a service name:
sc <server> <command> <option>
boot (ok | bad) Indicates whether the last boot should
be saved as the last known good boot configuration
Lock Locks the Service Database
QueryLock Queries the LockStatus for the SCManager Database
QUERY OPTIONS :
If the query command is followed by a service name, the status
for that service is returned. Further options do not apply in
this case. If the query command is followed nothing or one of
the options listed below, the services are enumerated.
type= Type of services to enumerate (driver, service, all)
(default = service)
state= State of services to enumerate (inactive, all)
(default = active)
bufsize= The size (in bytes) of the enumeration buffer
(default = 1024)
ri= The resume index number at which to begin the enumeration
(default = 0)
group= Service group to enumerate
(default = all groups)
SYNTAX EXAMPLES
sc query - Enumerates status for active services & drivers
sc query messenger - Displays status for the messenger service
sc query type= driver - Enumerates only active drivers
sc query type= service - Enumerates only Win32 services
sc query state= all - Enumerates only all services & drivers
sc query bufsize= 50 - Enumerates with a 50 byte buffer.
sc query ri= 14 - Enumerates with resume index = 14
sc query type= service type= interact - Enumerates all interactive services
sc query type= driver group= NDIS - Enumerates all NDIS drivers
sc query type= driver
sc query type= service
sc query type= all bufsize= 1000
sc start MyService
===========================================================================