windows-nt/Source/XPSP1/NT/public/sdk/inc/ntcsrdll.h

208 lines
2.9 KiB
C
Raw Normal View History

2020-09-26 03:20:57 -05:00
/*++ BUILD Version: 0001 // Increment this if a change has global effects
Copyright (c) Microsoft Corporation. All rights reserved.
Module Name:
ntcsrdll.h
Abstract:
This module defines the public interfaces of the Client portion of
the Client-Server Runtime (Csr) Subsystem.
Author:
Steve Wood (stevewo) 09-Oct-1990
Revision History:
--*/
#ifndef _NTCSRDLLAPI_
#define _NTCSRDLLAPI_
#if _MSC_VER > 1000
#pragma once
#endif
#include "ntcsrmsg.h"
#ifdef __cplusplus
extern "C" {
#endif
NTSYSAPI
NTSTATUS
NTAPI
CsrClientConnectToServer(
IN PWSTR ObjectDirectory,
IN ULONG ServertDllIndex,
IN PVOID ConnectionInformation,
IN OUT PULONG ConnectionInformationLength OPTIONAL,
OUT PBOOLEAN CalledFromServer OPTIONAL
);
NTSYSAPI
NTSTATUS
NTAPI
CsrClientCallServer(
IN OUT PCSR_API_MSG m,
IN OUT PCSR_CAPTURE_HEADER CaptureBuffer OPTIONAL,
IN CSR_API_NUMBER ApiNumber,
IN ULONG ArgLength
);
NTSYSAPI
PCSR_CAPTURE_HEADER
NTAPI
CsrAllocateCaptureBuffer(
IN ULONG CountMessagePointers,
IN ULONG Size
);
NTSYSAPI
VOID
NTAPI
CsrFreeCaptureBuffer(
IN PCSR_CAPTURE_HEADER CaptureBuffer
);
NTSYSAPI
ULONG
NTAPI
CsrAllocateMessagePointer(
IN OUT PCSR_CAPTURE_HEADER CaptureBuffer,
IN ULONG Length,
OUT PVOID *Pointer
);
NTSYSAPI
VOID
NTAPI
CsrCaptureMessageBuffer(
IN OUT PCSR_CAPTURE_HEADER CaptureBuffer,
IN PVOID Buffer OPTIONAL,
IN ULONG Length,
OUT PVOID *CapturedBuffer
);
NTSYSAPI
VOID
NTAPI
CsrCaptureMessageString(
IN OUT PCSR_CAPTURE_HEADER CaptureBuffer,
IN PCSTR String,
IN ULONG Length,
IN ULONG MaximumLength,
OUT PSTRING CapturedString
);
NTSYSAPI
VOID
NTAPI
CsrCaptureMessageUnicodeStringInPlace(
IN OUT PCSR_CAPTURE_HEADER CaptureBuffer,
IN OUT PUNICODE_STRING String
);
NTSYSAPI
NTSTATUS
NTAPI
CsrCaptureMessageMultiUnicodeStringsInPlace(
IN OUT PCSR_CAPTURE_HEADER* InOutCaptureBuffer,
IN ULONG NumberOfStringsToCapture,
IN const PUNICODE_STRING* StringsToCapture
);
NTSYSAPI
PLARGE_INTEGER
NTAPI
CsrCaptureTimeout(
IN ULONG Milliseconds,
OUT PLARGE_INTEGER Timeout
);
NTSYSAPI
VOID
NTAPI
CsrProbeForWrite(
IN PVOID Address,
IN ULONG Length,
IN ULONG Alignment
);
NTSYSAPI
VOID
NTAPI
CsrProbeForRead(
IN PVOID Address,
IN ULONG Length,
IN ULONG Alignment
);
NTSYSAPI
NTSTATUS
NTAPI
CsrNewThread(
VOID
);
NTSYSAPI
NTSTATUS
NTAPI
CsrIdentifyAlertableThread(
VOID
);
NTSYSAPI
NTSTATUS
NTAPI
CsrSetPriorityClass(
IN HANDLE ProcessHandle,
IN OUT PULONG PriorityClass
);
NTSYSAPI
NTSTATUS
NTAPI
CsrStartProfile(
VOID
);
NTSYSAPI
NTSTATUS
NTAPI
CsrStopProfile(
VOID
);
NTSYSAPI
NTSTATUS
NTAPI
CsrDumpProfile(
VOID
);
NTSYSAPI
NTSTATUS
NTAPI
CsrStopDumpProfile(
VOID
);
NTSYSAPI
HANDLE
NTAPI
CsrGetProcessId(
VOID
);
#ifdef __cplusplus
}
#endif
#endif // _NTCSRDLLAPI_