C# Class VSNDK.DebugEngine.AD7Process

Inheritance: IDebugProcess2
Mostrar archivo Open project: blackberry/VSPlugin Class Usage Examples

Public Properties

Property Type Description
_name string
_portAttach AD7Port
_processGUID System.Guid
_processID string
m_program IDebugProgram2

Protected Properties

Property Type Description
_engine AD7Engine

Public Methods

Method Description
AD7Process ( AD7Engine aEngine, IDebugPort2 aPort ) : System

Constructor.

AD7Process ( AD7Port aPort, string ID, string name ) : System

Constructor.

AddImplicitProgramNodes ( System.Guid &guidLaunchingEngine, System.Guid rgguidSpecificEngines, uint celtSpecificEngines ) : int

Adds program nodes for a list of debug engines. (http://msdn.microsoft.com/en-us/library/bb146990.aspx) In this project, it is used only one debug engine, that's why its GUID is assigned to the guidLaunchingEngine explicitly.

Attach ( IDebugEventCallback2 pCallback, System.Guid rgguidSpecificEngines, uint celtSpecificEngines, int rghrEngineAttach ) : int

Attaches the session debug manager (SDM) to the process. Not implemented. Currently using IDebugEngine2.Attach. (http://msdn.microsoft.com/en-ca/library/bb145875.aspx)

Attach ( IDebugSession2 pSession ) : int

Informs the process that a session is now debugging the process. (http://msdn.microsoft.com/en-us/library/bb162300.aspx)

CanDetach ( ) : int

Determines if the session debug manager (SDM) can detach the process. Not implemented. (http://msdn.microsoft.com/en-us/library/bb145567.aspx)

CauseBreak ( ) : int

Requests that the next program that is running code in this process halt and send an IDebugBreakEvent2 event object. Not implemented. (http://msdn.microsoft.com/en-us/library/bb162292.aspx)

Detach ( ) : int

Detaches the debugger from this process by detaching all of the programs in the process. (http://msdn.microsoft.com/en-us/library/bb162197.aspx)

Detach ( IDebugSession2 pSession ) : int

Informs the process that a session is no longer debugging the process. (http://msdn.microsoft.com/en-us/library/bb146313.aspx)

EnumPrograms ( IEnumDebugPrograms2 &ppEnum ) : int

Retrieves a list of all the programs contained by this process. (http://msdn.microsoft.com/en-us/library/bb162305.aspx)

EnumThreads ( IEnumDebugThreads2 &ppEnum ) : int

Retrieves a list of all the threads running in all programs in the process. Not implemented. (http://msdn.microsoft.com/en-us/library/bb144981.aspx)

GetAttachedSessionName ( string &pbstrSessionName ) : int

Gets the name of the session that is debugging the process. [DEPRECATED. SHOULD ALWAYS RETURN E_NOTIMPL.] (http://msdn.microsoft.com/en-us/library/bb146718.aspx)

GetInfo ( enum_PROCESS_INFO_FIELDS Fields, PROCESS_INFO pProcessInfo ) : int

Gets a description of the process. (http://msdn.microsoft.com/en-us/library/bb145895.aspx)

GetName ( enum_GETNAME_TYPE gnType, string &pbstrName ) : int

Gets the name of the process. (http://msdn.microsoft.com/en-us/library/bb161270.aspx)

GetPhysicalProcessId ( AD_PROCESS_ID pProcessId ) : int

Gets the system process identifier. (http://msdn.microsoft.com/en-us/library/bb146648.aspx)

GetPort ( IDebugPort2 &ppPort ) : int

Gets the port that the process is running on. (http://msdn.microsoft.com/en-us/library/bb162121.aspx)

GetProcessId ( System.Guid &pguidProcessId ) : int

Gets the GUID for this process. (http://msdn.microsoft.com/en-us/library/bb161938.aspx)

GetServer ( IDebugCoreServer2 &ppServer ) : int

Gets the server that this process is running on. Not implemented completely because _server has no value assigned to it. (http://msdn.microsoft.com/en-us/library/bb147017.aspx)

Terminate ( ) : int

Terminates the process. Not implemented. (http://msdn.microsoft.com/en-us/library/bb146226.aspx)

Method Details

AD7Process() public method

Constructor.
public AD7Process ( AD7Engine aEngine, IDebugPort2 aPort ) : System
aEngine AD7Engine The AD7Engine object that represents the DE.
aPort IDebugPort2 The IDebugPort2 object that represents the port on which the process was launched.
return System

AD7Process() public method

Constructor.
public AD7Process ( AD7Port aPort, string ID, string name ) : System
aPort AD7Port The AD7Port object that represents the port used in Attach to Process UI.
ID string The process ID.
name string The process name.
return System

AddImplicitProgramNodes() public method

Adds program nodes for a list of debug engines. (http://msdn.microsoft.com/en-us/library/bb146990.aspx) In this project, it is used only one debug engine, that's why its GUID is assigned to the guidLaunchingEngine explicitly.
public AddImplicitProgramNodes ( System.Guid &guidLaunchingEngine, System.Guid rgguidSpecificEngines, uint celtSpecificEngines ) : int
guidLaunchingEngine System.Guid The GUID of a DE that is to be used to launch programs (and is assumed to add its own /// program nodes).
rgguidSpecificEngines System.Guid Array of GUIDs of DEs for which program nodes will be added.
celtSpecificEngines uint The number of GUIDs in the rgguidSpecificEngines array.
return int

Attach() public method

Attaches the session debug manager (SDM) to the process. Not implemented. Currently using IDebugEngine2.Attach. (http://msdn.microsoft.com/en-ca/library/bb145875.aspx)
public Attach ( IDebugEventCallback2 pCallback, System.Guid rgguidSpecificEngines, uint celtSpecificEngines, int rghrEngineAttach ) : int
pCallback IDebugEventCallback2 An IDebugEventCallback2 object that is used for debug event notification.
rgguidSpecificEngines System.Guid An array of GUIDs of debug engines to be used to debug programs running in the process. /// This parameter can be a null value.
celtSpecificEngines uint The number of debug engines in the rgguidSpecificEngines array and the size of the /// rghrEngineAttach array.
rghrEngineAttach int An array of HRESULT codes returned by the debug engines.
return int

Attach() public method

Informs the process that a session is now debugging the process. (http://msdn.microsoft.com/en-us/library/bb162300.aspx)
public Attach ( IDebugSession2 pSession ) : int
pSession IDebugSession2 A value that uniquely identifies the session attaching to this process.
return int

CanDetach() public method

Determines if the session debug manager (SDM) can detach the process. Not implemented. (http://msdn.microsoft.com/en-us/library/bb145567.aspx)
public CanDetach ( ) : int
return int

CauseBreak() public method

Requests that the next program that is running code in this process halt and send an IDebugBreakEvent2 event object. Not implemented. (http://msdn.microsoft.com/en-us/library/bb162292.aspx)
public CauseBreak ( ) : int
return int

Detach() public method

Detaches the debugger from this process by detaching all of the programs in the process. (http://msdn.microsoft.com/en-us/library/bb162197.aspx)
public Detach ( ) : int
return int

Detach() public method

Informs the process that a session is no longer debugging the process. (http://msdn.microsoft.com/en-us/library/bb146313.aspx)
public Detach ( IDebugSession2 pSession ) : int
pSession IDebugSession2 A value that uniquely identifies the session to detach this process from.
return int

EnumPrograms() public method

Retrieves a list of all the programs contained by this process. (http://msdn.microsoft.com/en-us/library/bb162305.aspx)
public EnumPrograms ( IEnumDebugPrograms2 &ppEnum ) : int
ppEnum IEnumDebugPrograms2 Returns an IEnumDebugPrograms2 object that contains a list of all the programs in the process.
return int

EnumThreads() public method

Retrieves a list of all the threads running in all programs in the process. Not implemented. (http://msdn.microsoft.com/en-us/library/bb144981.aspx)
public EnumThreads ( IEnumDebugThreads2 &ppEnum ) : int
ppEnum IEnumDebugThreads2 Returns an IEnumDebugThreads2 object that contains a list of all threads in all programs in the /// process.
return int

GetAttachedSessionName() public method

Gets the name of the session that is debugging the process. [DEPRECATED. SHOULD ALWAYS RETURN E_NOTIMPL.] (http://msdn.microsoft.com/en-us/library/bb146718.aspx)
public GetAttachedSessionName ( string &pbstrSessionName ) : int
pbstrSessionName string DEPRECATED. Return null.
return int

GetInfo() public method

Gets a description of the process. (http://msdn.microsoft.com/en-us/library/bb145895.aspx)
public GetInfo ( enum_PROCESS_INFO_FIELDS Fields, PROCESS_INFO pProcessInfo ) : int
Fields enum_PROCESS_INFO_FIELDS A combination of values from the PROCESS_INFO_FIELDS enumeration that specifies which fields of /// the pProcessInfo parameter are to be filled in.
pProcessInfo PROCESS_INFO A PROCESS_INFO structure that is filled in with a description of the process.
return int

GetName() public method

Gets the name of the process. (http://msdn.microsoft.com/en-us/library/bb161270.aspx)
public GetName ( enum_GETNAME_TYPE gnType, string &pbstrName ) : int
gnType enum_GETNAME_TYPE A value from the GETNAME_TYPE enumeration that specifies what type of name to return.
pbstrName string Returns the name of the process.
return int

GetPhysicalProcessId() public method

Gets the system process identifier. (http://msdn.microsoft.com/en-us/library/bb146648.aspx)
public GetPhysicalProcessId ( AD_PROCESS_ID pProcessId ) : int
pProcessId AD_PROCESS_ID An AD_PROCESS_ID structure that is filled in with the system process identifier information.
return int

GetPort() public method

Gets the port that the process is running on. (http://msdn.microsoft.com/en-us/library/bb162121.aspx)
public GetPort ( IDebugPort2 &ppPort ) : int
ppPort IDebugPort2 Returns an IDebugPort2 object that represents the port on which the process was launched.
return int

GetProcessId() public method

Gets the GUID for this process. (http://msdn.microsoft.com/en-us/library/bb161938.aspx)
public GetProcessId ( System.Guid &pguidProcessId ) : int
pguidProcessId System.Guid Returns the GUID for this process.
return int

GetServer() public method

Gets the server that this process is running on. Not implemented completely because _server has no value assigned to it. (http://msdn.microsoft.com/en-us/library/bb147017.aspx)
public GetServer ( IDebugCoreServer2 &ppServer ) : int
ppServer IDebugCoreServer2 Returns an IDebugCoreServer2 object that represents the server on which this process is running.
return int

Terminate() public method

Terminates the process. Not implemented. (http://msdn.microsoft.com/en-us/library/bb146226.aspx)
public Terminate ( ) : int
return int

Property Details

_engine protected_oe property

The AD7Engine object that represents the DE.
protected AD7Engine,VSNDK.DebugEngine _engine
return AD7Engine

_name public_oe property

The name of the process. Not used till now. Has no value assigned to it.
public string _name
return string

_portAttach public_oe property

The AD7Port object that represents the port used in Attach to Process UI.
public AD7Port,VSNDK.DebugEngine _portAttach
return AD7Port

_processGUID public_oe property

Process GUID.
public Guid,System _processGUID
return System.Guid

_processID public_oe property

Process ID.
public string _processID
return string

m_program public_oe property

A program that is running in this process. It should be an array of programs, as a process "is a container for a set of programs" but, at this moment, the VSNDK supports only one program at a time.
public IDebugProgram2 m_program
return IDebugProgram2