CSRSRV Functions

The table on this page lists all the functions and variables that appear in the export directory of any known x86, x64 or wow64 build of CSRSRV.DLL. For each name, the table gives just a brief summary of the applicable CSRSRV versions. It is here thought that no CSRSRV functions have ever been documented by Microsoft.

Function Applicable Versions
CsrAddStaticServerThread 3.10 and higher
CsrCallServerFromServer 3.10 and higher
CsrClientCallback 3.10 to 3.51
CsrComputePriorityClass 3.10 to 4.0
CsrConnectToUser 3.10 and higher
CsrCreateProcess 3.10 and higher
CsrCreateRemoteThread 3.10 and higher
CsrCreateThread 3.10 and higher
CsrCreateWait 3.10 to 6.0
CsrDebugProcess 3.10 to 6.0
CsrDebugProcessStop 5.1 to 6.0
CsrDeferredCreateProcess 6.0 and higher
CsrDelayedThreadCleanup 3.51 only
CsrDereferenceProcess 3.10 and higher
CsrDereferenceThread 3.10 and higher
CsrDereferenceWait 3.10 to 6.0
CsrDestroyProcess 3.10 and higher
CsrDestroyThread 3.10 and higher
CsrDestroyWait 3.10 to 4.0
CsrExecServerThread 5.1 and higher
CsrGetApiPorts 3.10 to 5.0
CsrGetProcessLuid 3.10 and higher
CsrImpersonateClient 3.10 and higher
CsrIsClientSandboxed 10.0 and higher
CsrLocateThreadInProcess 3.10 to 4.0
CsrLockProcessByClientId 3.10 and higher
CsrLockThreadByClientId 3.51 and higher
CsrLockedReferenceProcess 6.1 and higher
CsrMoveSatisfiedWait 5.1 to 6.0
CsrNotifyWait 3.10 to 6.0
CsrPopulateDosDevices 5.0 to 6.0
CsrQueryApiPort 4.0 and higher
CsrReferenceThread 3.10 and higher
CsrRegisterCleanupEvent 3.51 only
CsrRegisterClientThreadSetup 6.1 and higher
CsrReplyToMessage 6.0 and higher
CsrRevertToSelf 3.10 and higher
CsrServerInitialization 3.10 and higher
CsrSetBackgroundPriority 3.10 and higher
CsrSetCallingSpooler 3.10 to 6.0
CsrSetForegroundPriority 3.10 and higher
CsrSetLastQlpcError 3.10 to 3.51
CsrSetQuickThreadCreationRoutine 3.10 to 3.51
CsrShutdownProcesses 3.10 and higher
CsrUnhandledExceptionFilter 4.0 and higher
CsrUnlockProcess 3.10 and higher
CsrUnlockThread 3.51 and higher
CsrInitializeDlls 3.10 to 3.51
CsrValidateMessageBuffer 5.0 and higher
CsrValidateMessageString 5.0 and higher
CsrpInitializeDlls 3.10 to 3.51
CsrpProcessApiRequest 3.10 to 3.51


Function names are reproduced from the export directory of the CSRSRV.DLL executable. All exports from CSRSRV are by name.

Since experience shows that this table is not always read with the knowledge of an advanced programmer, it must be stressed that a function’s presence in the export directory does not mean that a function is implemented non-trivially or that it will work satisfactorily if called. It means just that the function can be imported from other modules, and be called by them, for better or worse. That a function is exported from some version does not mean that Microsoft supports its use in that version even if such support is documented for later versions.