Windows services and servers
In this manual, the terms Perforce
Service and p4d
are used interchangeably to
refer to "the process which provides versioning services to
Perforce
applications" unless the distinction between a Windows server process or
a service process is relevant.
The
Perforce
versioning service (p4d
) can be configured to run as
a Windows service (p4s.exe
) process that starts at
boot time, or as a server (p4d.exe
) process that you
invoke manually from a command prompt. To run a task as a Windows server,
the user must be logged in because shortcuts in a user’s
startup
folder cannot be run until that user logs in.
The
Perforce
service (p4s.exe
) and the
Perforce
server (p4d.exe
) executables are copies of each
other. They are identical except for the filenames. When run, the
executables use the first three characters of the name with which they
were invoked (either p4s
or p4d
)
to determine their behavior. For example:
- p4s.exe invokes a service
- p4d.exe invokes a server
By default, the Perforce installer configures Perforce as a Windows service.
On Windows, directory permissions are set securely by default; when
Perforce
runs as a Windows server, the server root is accessible only to the
user who invoked p4d.exe
from the command prompt.
When
Perforce
is installed as a service, the files are owned by the
LocalSystem
account, and are accessible only to those with
Administrator
access.
To allow the
Perforce
service to run under a regular user account, make sure that the user
has read/write access to the registry key and that the user has access
to the directory structure under P4ROOT
.
See the Knowledge Base article "Changing the user account the Windows service runs under".