Process Hacker
asmpage.c File Reference
#include "dn.h"
#include "resource.h"
#include <windowsx.h>
#include <evntcons.h>
#include "clretw.h"

Go to the source code of this file.

Macros

#define DNATNC_STRUCTURE   0
 
#define DNATNC_ID   1
 
#define DNATNC_FLAGS   2
 
#define DNATNC_PATH   3
 
#define DNATNC_NATIVEPATH   4
 
#define DNATNC_MAXIMUM   5
 
#define DNA_TYPE_CLR   1
 
#define DNA_TYPE_APPDOMAIN   2
 
#define DNA_TYPE_ASSEMBLY   3
 

Typedefs

typedef struct _DNA_NODE DNA_NODE
 
typedef struct _DNA_NODE * PDNA_NODE
 
typedef struct _ASMPAGE_CONTEXT ASMPAGE_CONTEXT
 
typedef struct _ASMPAGE_CONTEXT * PASMPAGE_CONTEXT
 
typedef struct _FLAG_DEFINITION FLAG_DEFINITION
 
typedef struct _FLAG_DEFINITION * PFLAG_DEFINITION
 
typedef ULONG(__stdcall * _EnableTraceEx )(_In_ LPCGUID ProviderId, _In_opt_ LPCGUID SourceId, _In_ TRACEHANDLE TraceHandle, _In_ ULONG IsEnabled, _In_ UCHAR Level, _In_ ULONGLONG MatchAnyKeyword, _In_ ULONGLONG MatchAllKeyword, _In_ ULONG EnableProperty, _In_opt_ PEVENT_FILTER_DESCRIPTOR EnableFilterDesc)
 

Functions

INT_PTR CALLBACK DotNetAsmPageDlgProc (_In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam)
 
VOID AddAsmPageToPropContext (_In_ PPH_PLUGIN_PROCESS_PROPCONTEXT PropContext)
 
PPH_STRING FlagsToString (_In_ ULONG Flags, _In_ PFLAG_DEFINITION Map, _In_ ULONG SizeOfMap)
 
PDNA_NODE AddNode (_Inout_ PASMPAGE_CONTEXT Context)
 
VOID DestroyNode (_In_ PDNA_NODE Node)
 
PDNA_NODE AddFakeClrNode (_In_ PASMPAGE_CONTEXT Context, _In_ PWSTR DisplayName)
 
PDNA_NODE FindClrNode (_In_ PASMPAGE_CONTEXT Context, _In_ USHORT ClrInstanceID)
 
PDNA_NODE FindAppDomainNode (_In_ PDNA_NODE ClrNode, _In_ ULONG64 AppDomainID)
 
PDNA_NODE FindAssemblyNode (_In_ PDNA_NODE AppDomainNode, _In_ ULONG64 AssemblyID)
 
PDNA_NODE FindAssemblyNode2 (_In_ PDNA_NODE ClrNode, _In_ ULONG64 AssemblyID)
 
BOOLEAN NTAPI DotNetAsmTreeNewCallback (_In_ HWND hwnd, _In_ PH_TREENEW_MESSAGE Message, _In_opt_ PVOID Parameter1, _In_opt_ PVOID Parameter2, _In_opt_ PVOID Context)
 
ULONG StartDotNetTrace (_In_ PASMPAGE_CONTEXT Context, _Out_ PTRACEHANDLE SessionHandle, _Out_ PEVENT_TRACE_PROPERTIES *Properties)
 
ULONG NTAPI DotNetBufferCallback (_In_ PEVENT_TRACE_LOGFILE Buffer)
 
VOID NTAPI DotNetEventCallback (_In_ PEVENT_RECORD EventRecord)
 
ULONG ProcessDotNetTrace (_In_ PASMPAGE_CONTEXT Context)
 
ULONG UpdateDotNetTraceInfo (_In_ PASMPAGE_CONTEXT Context, _In_ BOOLEAN ClrV2)
 
NTSTATUS UpdateDotNetTraceInfoThreadStart (_In_ PVOID Parameter)
 
ULONG UpdateDotNetTraceInfoWithTimeout (_In_ PASMPAGE_CONTEXT Context, _In_ BOOLEAN ClrV2, _In_opt_ PLARGE_INTEGER Timeout)
 
BOOLEAN IsProcessSuspended (_In_ HANDLE ProcessId)
 

Macro Definition Documentation

#define DNA_TYPE_APPDOMAIN   2

Definition at line 37 of file asmpage.c.

#define DNA_TYPE_ASSEMBLY   3

Definition at line 38 of file asmpage.c.

#define DNA_TYPE_CLR   1

Definition at line 36 of file asmpage.c.

#define DNATNC_FLAGS   2

Definition at line 31 of file asmpage.c.

#define DNATNC_ID   1

Definition at line 30 of file asmpage.c.

#define DNATNC_MAXIMUM   5

Definition at line 34 of file asmpage.c.

#define DNATNC_NATIVEPATH   4

Definition at line 33 of file asmpage.c.

#define DNATNC_PATH   3

Definition at line 32 of file asmpage.c.

#define DNATNC_STRUCTURE   0

Definition at line 29 of file asmpage.c.

Typedef Documentation

typedef ULONG(__stdcall * _EnableTraceEx)(_In_ LPCGUID ProviderId, _In_opt_ LPCGUID SourceId, _In_ TRACEHANDLE TraceHandle, _In_ ULONG IsEnabled, _In_ UCHAR Level, _In_ ULONGLONG MatchAnyKeyword, _In_ ULONGLONG MatchAllKeyword, _In_ ULONG EnableProperty, _In_opt_ PEVENT_FILTER_DESCRIPTOR EnableFilterDesc)

Definition at line 101 of file asmpage.c.

typedef struct _ASMPAGE_CONTEXT ASMPAGE_CONTEXT
typedef struct _DNA_NODE DNA_NODE
typedef struct _FLAG_DEFINITION FLAG_DEFINITION
typedef struct _ASMPAGE_CONTEXT * PASMPAGE_CONTEXT
typedef struct _DNA_NODE * PDNA_NODE
typedef struct _FLAG_DEFINITION * PFLAG_DEFINITION

Function Documentation

VOID AddAsmPageToPropContext ( _In_ PPH_PLUGIN_PROCESS_PROPCONTEXT  PropContext)

Definition at line 175 of file asmpage.c.

PDNA_NODE AddFakeClrNode ( _In_ PASMPAGE_CONTEXT  Context,
_In_ PWSTR  DisplayName 
)

Definition at line 259 of file asmpage.c.

PDNA_NODE AddNode ( _Inout_ PASMPAGE_CONTEXT  Context)

Definition at line 211 of file asmpage.c.

VOID DestroyNode ( _In_ PDNA_NODE  Node)

Definition at line 232 of file asmpage.c.

INT_PTR CALLBACK DotNetAsmPageDlgProc ( _In_ HWND  hwndDlg,
_In_ UINT  uMsg,
_In_ WPARAM  wParam,
_In_ LPARAM  lParam 
)

Definition at line 943 of file asmpage.c.

BOOLEAN NTAPI DotNetAsmTreeNewCallback ( _In_ HWND  hwnd,
_In_ PH_TREENEW_MESSAGE  Message,
_In_opt_ PVOID  Parameter1,
_In_opt_ PVOID  Parameter2,
_In_opt_ PVOID  Context 
)

Definition at line 367 of file asmpage.c.

ULONG NTAPI DotNetBufferCallback ( _In_ PEVENT_TRACE_LOGFILE  Buffer)

Definition at line 539 of file asmpage.c.

VOID NTAPI DotNetEventCallback ( _In_ PEVENT_RECORD  EventRecord)

Definition at line 546 of file asmpage.c.

PDNA_NODE FindAppDomainNode ( _In_ PDNA_NODE  ClrNode,
_In_ ULONG64  AppDomainID 
)

Definition at line 296 of file asmpage.c.

PDNA_NODE FindAssemblyNode ( _In_ PDNA_NODE  AppDomainNode,
_In_ ULONG64  AssemblyID 
)

Definition at line 314 of file asmpage.c.

PDNA_NODE FindAssemblyNode2 ( _In_ PDNA_NODE  ClrNode,
_In_ ULONG64  AssemblyID 
)

Definition at line 332 of file asmpage.c.

PDNA_NODE FindClrNode ( _In_ PASMPAGE_CONTEXT  Context,
_In_ USHORT  ClrInstanceID 
)

Definition at line 278 of file asmpage.c.

PPH_STRING FlagsToString ( _In_ ULONG  Flags,
_In_ PFLAG_DEFINITION  Map,
_In_ ULONG  SizeOfMap 
)

Definition at line 185 of file asmpage.c.

BOOLEAN IsProcessSuspended ( _In_ HANDLE  ProcessId)

Definition at line 925 of file asmpage.c.

ULONG ProcessDotNetTrace ( _In_ PASMPAGE_CONTEXT  Context)

Definition at line 792 of file asmpage.c.

ULONG StartDotNetTrace ( _In_ PASMPAGE_CONTEXT  Context,
_Out_ PTRACEHANDLE  SessionHandle,
_Out_ PEVENT_TRACE_PROPERTIES *  Properties 
)

Definition at line 483 of file asmpage.c.

ULONG UpdateDotNetTraceInfo ( _In_ PASMPAGE_CONTEXT  Context,
_In_ BOOLEAN  ClrV2 
)

Definition at line 824 of file asmpage.c.

NTSTATUS UpdateDotNetTraceInfoThreadStart ( _In_ PVOID  Parameter)

Definition at line 871 of file asmpage.c.

ULONG UpdateDotNetTraceInfoWithTimeout ( _In_ PASMPAGE_CONTEXT  Context,
_In_ BOOLEAN  ClrV2,
_In_opt_ PLARGE_INTEGER  Timeout 
)

Definition at line 882 of file asmpage.c.