1
0
Fork 0
This commit is contained in:
mrexodia 2016-07-06 06:51:33 +02:00
parent 6969cb8048
commit 029f196a17
No known key found for this signature in database
GPG Key ID: D72F9A4FAA0073B4
172 changed files with 5 additions and 5035 deletions

View File

@ -9,7 +9,6 @@ if /i "%1"=="x32" call setenv.bat x32&set type=Configuration=Release;Platform=Wi
if /i "%1"=="x64" call setenv.bat x64&set type=Configuration=Release;Platform=x64&goto build
if /i "%1"=="coverity" goto coverity
if /i "%1"=="doxygen" call setenv.bat doxygen&goto doxygen
if /i "%1"=="chm" call setenv.bat chm&goto chm
goto usage
@ -56,11 +55,6 @@ doxygen
goto :restorepath
:chm
start /w "" winchm.exe help\x64_dbg.wcp /h
goto :restorepath
:usage
echo "Usage: build.bat x32/x64/coverity (x32/x64)/doxygen/chm"
echo.

View File

@ -1,27 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>AttachDebugger/attach</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>AttachDebugger[,attach]<BR></STRONG>Attach the
debugger to a running process.</P>
<P><U>arguments</U><BR>&nbsp; arg1: Process Identifier
(PID) of the running process.</P>
<P>[arg2]: Handle to an Event Object to signal (this
is for internal use only).</P>
<P><U>result</U> <BR>This command will give control back to the user&nbsp;after
the&nbsp;system breakpoint&nbsp;is reached. It will
set&nbsp;<U>$pid</U>&nbsp;and&nbsp;<U>$hp/$hProcess</U>&nbsp;variables.
</P></body></HTML>

View File

@ -1,20 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Breakpoints</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Breakpoints</STRONG><BR>This section contains
various breakpoint-related commands.</P></body>
</html>

View File

@ -1,70 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Calculations</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Calculations<BR></STRONG>The debugger allows usage of basic math
operations, just type an expression in the
command window and the result will be displayed in the console. Apart from
calculations, it allows quick&nbsp;variable changes using a C-like syntax.</P>
<P><STRONG>Operators</STRONG><BR> You can use the following operators in your expression.
They are processed in the following order (<A
href="http://en.cppreference.com/w/c/language/operator_precedence"
target=_blank>source</A>):</P>
<P><U>1:parentheses/brackets</U>: <EM>(1+2)</EM>, [1+6] have
priority over other operations.</P>
<P><U>2:unary minus/binary not/logical not</U>: <EM>-1</EM> (negative 1), <EM>~1</EM> (binary not of 1), <EM>!0</EM>
(logical not of 0).</P>
<P><U>
3:multiplication/division</U>:
<EM>2*3</EM> (regular multiplication), <EM>2`3</EM> (gets high part of the
multiplication),&nbsp;6/3 (regular division), <EM>5%3</EM> (modulo/remainder of
the division).</P>
<P><U>4:addition/subtraction</U>:
<EM>1+3</EM> (addition), <EM>5-2</EM>
(subtraction).</P>
<P><U>5:left/right
shift</U>:&nbsp;<EM>1&lt;&lt;2</EM> (shift left, shl for unsigned, sal for
signed), <EM>10&gt;&gt;1</EM> (shift right, shl
for&nbsp;unsigned, sal for signed). </P>
<P><U>6:smaller (equal)/bigger (equal)</U>: 4&lt;10, 3&gt;6,
<EM>1&lt;=2</EM>, <EM>6&gt;=7</EM> (resolves to 1 if true,
0 if false).</P>
<P><U>7:equal/not equal</U>: <EM>1==1</EM>, <EM>2!=6</EM>
(resolves to 1 if true, 0 if
false).</P>
<P><U>8:binary and</U>: <EM>12&amp;2</EM>
(regular binary
and).</P>
<P><U>9:binary xor</U>: <EM>2^1</EM>
(regular binary
xor).</P>
<P><U>10:binary or</U>: <EM>2|8</EM>
(regular binary
or).</P>
<P><U>11:logical and</U>: <EM>0&amp;&amp;3</EM>
(resolves to 1 if true, 0 if
false).</P>
<P><U>12:logical or</U>: <EM>0||3</EM>
(resolves to 1 if true, 0 if
false).</P>
<P><STRONG><U>Quick-Assigning<BR></U></STRONG>Changing memory, a
variable, register or&nbsp;flag can be easily done using a C-like
syntax:</P>
<P>a?= b: '?' can be any non-logical operator.
'a' can be any register, flag, variable or memory location. 'b' can be anything that is recognized as an
expression.</P>
<P>a++/a--: 'a' can be any register, flag, variable or memory
location.</P></body>

View File

@ -1,135 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Callback Structures</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Callback structures<BR></STRONG>These&nbsp;structures are used inside event
callbacks (registered using _plugin_registercallback). Notice that the pointer
'void* callbackInfo' is never NULL, but the members of the various structures
can be NULL. Also remember that <U>you cannot use any of the provided pointers
out of the callback function scope</U>. In general
<U>
<STRONG>AVOID</STRONG> time-consuming operations inside
callbacks</U> , do these in
separate
threads.</P>
<P>//Called on debug initialization, useful to initialize
some variables.<BR>struct <STRONG>PLUG_CB_INITDEBUG</STRONG>
<BR>{<BR>&nbsp;&nbsp;&nbsp; <STRONG>const char*</STRONG>
szFileName;<BR>};</P>
<P>//Called when the debugging has been stopped, useful to
reset some variables.<BR>struct <STRONG>PLUG_CB_STOPDEBUG</STRONG>
<BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>void*</STRONG>
reserved;<BR>};</P>
<P>//Called after process creation (in the debug loop),
after the initialization of the symbol handler, the database file and setting
breakpoints on TLS callbacks / the entry breakpoint.<BR>struct <STRONG>PLUG_CB_CREATEPROCESS <BR></STRONG>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>CREATE_PROCESS_DEBUG_INFO*</STRONG>
CreateProcessInfo;<BR>&nbsp;&nbsp;&nbsp; <STRONG>IMAGEHLP_MODULE64*</STRONG>
modInfo;<BR>&nbsp;&nbsp;&nbsp; <STRONG>const char*</STRONG>
DebugFileName;<BR>&nbsp;&nbsp;&nbsp;
<STRONG>PROCESS_INFORMATION*</STRONG>
fdProcessInfo;<BR>};</P>
<P>//Called after the process exits (in the debug loop),
before the symbol handler is cleaned up.<BR>struct <STRONG>PLUG_CB_EXITPROCESS</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>EXIT_PROCESS_DEBUG_INFO*</STRONG>
ExitProcess;<BR>};</P>
<P>//Called after thread creation (in the debug loop),
after adding the thread to the internal thread list, before breaking the
debugger on thread creation and&nbsp;after setting breakpoints on the thread
entry.<BR>struct <STRONG>PLUG_CB_CREATETHREAD<BR></STRONG>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>CREATE_THREAD_DEBUG_INFO*</STRONG>
CreateThread;<BR>&nbsp;&nbsp;&nbsp; <STRONG>DWORD</STRONG>
dwThreadId;<BR>};</P>
<P>//Called after thread termination (in the debug loop),
before the thread is removed from the internal thread list, before breaking on
thread termination.<BR>struct <STRONG>PLUG_CB_EXITTHREAD</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp; <STRONG>EXIT_THREAD_DEBUG_INFO*</STRONG>
ExitThread;<BR>&nbsp;&nbsp;&nbsp; <STRONG>DWORD</STRONG>
dwThreadId;<BR>};</P>
<P>//Called at the system breakpoint (in the debug loop),
after setting the initial dump location, before breaking the debugger on the
system breakpoint.<BR>struct <STRONG>PLUG_CB_SYSTEMBREAKPOINT</STRONG>
<BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>void*</STRONG> reserved;<BR>};</P>
<P>//Called on DLL loading (in the debug loop), after the
DLL has been added to the internal library list, after setting the DLL entry
breakpoint.<BR>struct <STRONG>PLUG_CB_LOADDLL</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>LOAD_DLL_DEBUG_INFO*</STRONG>
LoadDll;<BR>&nbsp;&nbsp;&nbsp; <STRONG>IMAGEHLP_MODULE64*</STRONG>
modInfo;<BR>&nbsp;&nbsp;&nbsp; <STRONG>const char*</STRONG> modname;<BR>};</P>
<P>//Called on DLL unloading (in the debug loop), before
removing the DLL from the internal library list, before breaking on DLL
unloading.<BR>struct <STRONG>PLUG_CB_UNLOADDLL</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>UNLOAD_DLL_DEBUG_INFO*</STRONG>
UnloadDll;<BR>};</P>
<P>//Called on a DebugString event (in the debug loop),
before dumping the string to the log, before breaking on a debug
string.<BR>struct <STRONG>PLUG_CB_OUTPUTDEBUGSTRING</STRONG>
<BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>OUTPUT_DEBUG_STRING_INFO*</STRONG>
DebugString;<BR>};</P>
<P>//Called on an unhandled (by the debugger) exception (in
the debug loop), after setting the continue status, after locking the debugger
to pause.<BR>struct <STRONG>PLUG_CB_EXCEPTION</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>EXCEPTION_DEBUG_INFO*</STRONG>
Exception;<BR>};</P>
<P>//Called on a normal/memory/hardware breakpoint (in the
debug loop), after locking the debugger to pause.<BR>struct <STRONG>PLUG_CB_BREAKPOINT</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp; <STRONG>BRIDGEBP*</STRONG>
breakpoint;<BR>};</P>
<P>//Called after the debugger has been locked to pause (in
the debug loop), before any other callback that's before pausing the
debugger.<BR>struct <STRONG>PLUG_CB_PAUSEDEBUG</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>void*</STRONG>
reserved;<BR>};</P>
<P>//Called after the debugger has been unlocked to resume
(outside of the debug loop).<BR>struct <STRONG>PLUG_CB_RESUMEDEBUG</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>void*</STRONG>
reserved;<BR>};</P>
<P>//Called after the debugger stepped (in the debug loop),
after locking the debugger to pause.<BR>struct <STRONG>PLUG_CB_STEPPED</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>void*</STRONG>
reserved;<BR>};</P>
<P>//Called before attaching to a process.<BR>struct <STRONG>PLUG_CB_ATTACH</STRONG><BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>DWORD</STRONG> dwProcessId;<BR>};</P>
<P>//Called before detaching from the process.<BR>struct <STRONG>PLUG_CB_DETACH</STRONG><BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>PROCESS_INFORMATION*</STRONG> fdProcessInfo;<BR>};</P>
<P>//Called on any debug event, even the ones that are
handled internally, <U><STRONG>AVOID</STRONG> doing stuff that takes time
here</U>, this will slow the debugger down a lot!<BR>struct <STRONG>PLUG_CB_DEBUGEVENT</STRONG> <BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>DEBUG_EVENT*</STRONG> DebugEvent;<BR>};</P>
<P>//Called when a menu entry created by the plugin has
been clicked, the GUI will resume when this callback returns.<BR>struct <STRONG>PLUG_CB_MENUENTRY</STRONG><BR>{<BR>&nbsp;&nbsp;&nbsp;
<STRONG>int</STRONG> hEntry;<BR>};</P>
<P>//Called before TranslateMessage and DispatchMessage
Windows functions (PreTranslateMessage). Avoid calling user32 functions without
precautions here, there <STRONG>will</STRONG> be a recursive call if you fail
to take countermeasures.<BR>struct
<STRONG>PLUG_CB_WINEVENT<BR></STRONG>{<BR>&nbsp;&nbsp;&nbsp; <STRONG>MSG*</STRONG>
message;<BR>&nbsp;&nbsp;&nbsp; <STRONG>long*</STRONG>
result;<BR>&nbsp;&nbsp;&nbsp; <STRONG>bool</STRONG> retval; //only set this to true, never to
false<BR>};</P>
<P>//Called before TranslateMessage and DispatchMessage
Windows functions (PreTranslateMessage). Avoid calling user32 functions without
precautions here, there <STRONG>will</STRONG> be a
recursive call if you fail to take countermeasures. This function is global, so it also captures hotkeys
(see Qt documentation).<BR>struct
<STRONG>PLUG_CB_WINEVENTGLOBAL<BR></STRONG>{<BR>&nbsp;&nbsp;&nbsp; <STRONG>MSG*</STRONG>
message;<BR>&nbsp;&nbsp;&nbsp; <STRONG>bool</STRONG> retval; //only set this to true, never to
false<BR>};</P></body></HTML>

View File

@ -1,27 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Commands</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P class=rvps3><STRONG>
command[,alias1,alias2]</STRONG><BR>Command description here.</P>
<P class=rvps3><U>arguments</U><BR>&nbsp; arg1: Argument description.</P>
<P class=rvps3>[arg2]: Optional argument.</P>
<P class=rvps3>[arg3]: Another optional argument (can only
be given when the previous argument is also given).</P>
<P class=rvps3><U>result</U><BR>Description of the command result.</P>
<P class=rvps3><U><STRONG>REMARK</STRONG></U>: Commands cannot contain any of the
following characters: "," (comma), " " (space) and "\" (backslash). These
characters need to be prefixed using a backslash ('\,').</P></body></HTML>

View File

@ -1,20 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Data</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Data</STRONG><BR>This section contains commands
that are used to analyze and manipulate data.</P></body>
</html>

View File

@ -1,25 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>DebugContinue/con</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>DebugContinue[,con]</STRONG><BR>Set debugger
continue status.</P>
<P class=rvps3><U>arguments</U> <BR>[arg1]: When set, the exception will be handled by the
program. Otherwise the exception will be swallowed. </P>
<P class=rvps3><U>result
<BR></U>This command does not set any result variables.</P></body>
</html>

View File

@ -1,20 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Debug Control</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Debug Control<BR></STRONG>This section contains
commands useful for controlling the debugger (stepping etc.)</P></body>
</html>

View File

@ -1,24 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>DeleteBPX/bpc/bc</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>DeleteBPX[,bpc,bc]</STRONG><BR>Delete&nbsp;a
breakpoint set using the SetBPX command.</P>
<P><U>arguments</U><BR>[arg1]: Name or address of the breakpoint to delete. If this argument is not specified, all breakpoints will be
deleted.</P>
<P><U>result<BR></U>This command does not set any result variables.</P>
</body>
</html>

View File

@ -1,24 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>DeleteHardwareBreakpoint/bphc/bphwc</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>DeleteHardwareBreakpoint[,bphc,bphwc]</STRONG><BR>Delete&nbsp;a hardware breakpoint set using the
SetHardwareBreakpoint command.</P>
<P><U>arguments</U><BR>[arg1]: Name or address of the hardware breakpoint to delete. If
this argument is not specified, all hardware breakpoints will be deleted.</P>
<P><U>result<BR></U>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,40 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>DeleteMemoryBPX/membpc/bpmc</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P>
<STRONG>
DeleteMemoryBPX[,membpc,bpmc]
</STRONG>
<BR>Delete&nbsp;a memory breakpoint set using the SetMemoryBPX
command.
</P>
<P >
<U >
arguments</U>
<BR>
[arg1]: Name or (base) address of the memory breakpoint to
delete. If this argument is not specified, all memory breakpoints will be
deleted.</P>
<P>
<U>
result
<BR>
</U>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,23 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>DetachDebugger/detach</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>DetachDebugger[,detach]<BR></STRONG>Detach the debugger from the currently-debugged
process.</P>
<P><U>arguments</U><BR>This command has no arguments.</P>
<P><U>result</U> <BR>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,26 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>DisableBPX/bpd/bd</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body><STRONG>DisableBPX[,bpd,bd]<BR></STRONG>Disable&nbsp;a breakpoint set using the SetBPX
command.
<P><U>arguments</U><BR>[arg1]: Name or address of the breakpoint to disable. If
this argument is not specified, all breakpoints will be disabled.</P>
<P>
<U>
result
<BR>
</U>This command does not set any result
variables.</P></body></HTML>

View File

@ -1,23 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>DisableHardwareBreakpoint/bphd/bphwd</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>DisableHardwareBreakpoint[,bphd,bphwd]<BR></STRONG>Disable a hardware breakpoint.</P>
<P><U>arguments</U><BR>[arg1]: Address of the hardware breakpoint to disable. If
this argument is not specified, all hardware breakpoints will be disabled.</P>
<P><U>result<BR></U>This command does not set any result variables.</P>
</body>
</html>

View File

@ -1,31 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>DisableMemoryBreakpoint/membpd/bpmd</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>DisableMemoryBreakpoint[,membpd,bpmd]<BR></STRONG>Disable a memory breakpoint.</P>
<P>
<U>
arguments
</U>
<BR>
[arg1]: Address of the memory breakpoint to disable. If this
argument is not specified, all memory breakpoints will be disabled.</P>
<P>
<U >
result
<BR ></U>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,26 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>EnableBPX/bpe/be</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>EnableBPX[,bpe,be]</STRONG><BR>Enable
a breakpoint set using the SetBPX
command.</P>
<P><U>arguments</U><BR> [arg1]: Name or address of the breakpoint to enable. If this
argument is not specified, all breakpoints
will be enabled.</P>
<P><U>result<BR></U>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,25 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>EnableHardwareBreakpoint/bphe/bphwe</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>EnableHardwareBreakpoint[,bphe,bphwe]<BR></STRONG>Enable
a previously disabled hardware breakpoint.</P>
<P><U>arguments</U><BR>[arg1]: Address of the hardware breakpoint to enable. If
this argument is not specified, as many as possible hardware breakpoints will be
enabled.</P>
<P><U>result<BR></U>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,31 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>EnableMemoryBreakpoint/membpe/bpme</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>EnableMemoryBreakpoint[,membpe,bpme]<BR></STRONG>Enable a previously disabled memory breakpoint.</P>
<P>
<U>
arguments
</U>
<BR>
[arg1]: Address of the memory breakpoint to enable. If this
argument is not specified, all memory breakpoints will be enabled.</P>
<P>
<U >
result
<BR ></U>This command does not set any result variables.</P>
</body>
</html>

View File

@ -1,20 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Exports</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Exports<BR></STRONG>This section contains
information about the "_plugin_" prefixed exports.</P></body>
</html>

View File

@ -1,26 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Fill/memset</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Fill[,memset]</STRONG><BR>Set memory of the
debuggee to a specified byte.</P>
<P><U>arguments</U><BR>&nbsp; arg1: Memory address to start setting bytes.</P>
<P>&nbsp; arg2: Value (byte) to set memory with.</P>
<P>[arg3]: Size to set. When not specified the rest of the
page is used.</P>
<P><U>result</U><BR>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,21 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>General Purpose</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>General Purpose<BR></STRONG>This section contains various commands that are
used for calculations etc.</P>
</body>
</html>

View File

@ -1,28 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>HideDebugger/dbh/hide</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>HideDebugger[,dbh,hide]<BR></STRONG> Hide the debugger from (very) simple detection
methods.</P>
<P class=rvps3><U>arguments</U><BR>This command has no arguments.</P>
<P class=rvps3>
<U>
result
<BR>
</U>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,40 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>InitDebug/initdbg/init</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>InitDebug[,init,initdbg]<BR></STRONG>Initializes the debugger. This command will load
the executable (do some basic checks),&nbsp;set breakpoints on TLS callbacks
(if present), set a breakpoint at the process entry point&nbsp;and
break at the system breakpoint before giving back control to the
user.</P>
<P><U>arguments</U><BR> &nbsp; arg1: Path to the executable file to debug. If no full path is given, the GetCurrentDirectory API will be
called to retrieve a full path. Use quotation marks to include spaces in your path.
</P>
<P> [arg2]: Commandline to create the process with.
</P>
<P>[arg3]: Current folder (passed to the CreateProcess API).
</P>
<P><U>result<BR></U> This command will
give control back to the user&nbsp;after the&nbsp;system breakpoint&nbsp;is reached. It will set
<U>$pid</U> and&nbsp;<U>$hp/$hProcess</U>&nbsp;variables.
</P></body>
</html>

View File

@ -1,80 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Input</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P class=rvps3><STRONG>Input</STRONG><BR>This program accepts
various options of input:</P>
<P class=rvps3><U>commands</U>:
Commands have the following format: "command[space]arg1,[optional
space]arg2,argN".</P>
<P class=rvps3><U>variables</U>:
Variables optionally start with a $ and can only store one DWORD (QWORD on
x64).</P>
<P class=rvps3><U> registers</U>: All
registers (of all sizes) can be used as variables.</P>
<P class=rvps3><U>memory locations</U>:
You can read/write from/to a memory location by using one of the
following expressions:<BR>[addr]&nbsp;&nbsp;&nbsp;&nbsp; - read a
DWORD/QWORD, depending on the
architecture.<BR><EM>n</EM>:[addr]&nbsp;&nbsp; - read <EM>n</EM> bytes from.<BR><EM>seg</EM>:[addr] -
read a DWORD/QWORD from&nbsp;a
segment.<BR><STRONG>REMARKS</STRONG>:<BR>- <EM>n</EM> is the amount of bytes to read, this can be anything
smaller than 4 on x32 and smaller than 8 on x64 when specified, otherwise there
will be an error.<BR>- <EM>seg</EM>
can be gs, es, cs, fs, ds, ss. Only fs and gs have an effect.</P>
<P class=rvps3><U>flags</U>: Debug flags
(interpreted as integer) can be used as input. Flags are prefixed with an '_'
followed by the flag name. Valid flags are: _cf, _pf, _af, _zf, _sf, _tf, _if,
_df, _of, _rf, _vm, _ac, _vif, _vip and _id.</P>
<P class=rvps3><U>numbers</U>: All
numbers are interpreted as hex by default. If you want to be sure, you can use
the "x" prefix or the "0x" prefix. Decimal numbers can be used by prefixing the
number with a "." (.123=7B).</P>
<P class=rvps3><U> expressions</U>: See "Expressions" for more information.</P>
<P class=rvps3><U>Module Data</U>:</P>
<OL>
<LI>
<DIV class=rvps3><U>DLL exports</U>:
Type 'GetProcAddress' and it will automatically be
resolved to the actual address of the function.
To explicitly define from which module to load the API, use:
"[module].dll:[api]" or "[module]:[api]". In a similar way you can resolve ordinals, try "[module]:[ordinal]". Another
macro allows you to get the loaded
base of a module. When "[module]" is an empty string (":GetProcAddress" for example), the
module that is currently selected in the CPU will be
used.</DIV><U> </U>
<LI><U>Loaded Module&nbsp;Bases</U>:
If you want to access the loaded module base, you can write: "[module]:0",
"[module]:base", "[module]:imagebase" or "[module]:header".
<LI><U>RVA/File Offset</U>: If you
want to access a module RVA you can either write "[module]:0+[rva]" or you can
write "[module]:$[rva]". If you want to convert a file offset to a VA you can
use "[module]:#[offset]". When "[module]" is an empty string (":0" for
example), the module that is currently selected in the CPU will be used.
<LI><U>Module Entry Points</U>: To
access a module entry point you can write "[module]:entry", "[module]:oep" or
"[module]:ep". Notice that when there are exports with the names "entry",
"oep" or "ep" the address of these will be returned
instead.<BR><BR><STRONG>Notice</STRONG>: Instead of the ':' delimiter you can
also use a '.' If you need to query module information such as
"[module]:imagebase" or "[module]":entry" you are advised to
use a '?' as delimiter instead ("[module]?entry"). The '?'&nbsp;does
checking for named exports later, so it will still work when there is an
export called "entry" in the module.</LI></OL>
<P class=rvps3><U>labels/symbols</U>:
user-defined labels and symbols&nbsp;are a valid expressions.</P>
<P class=rvps3><STRONG>Input for arguments can always be done in any of
the above forms, except if stated otherwise.</STRONG></P></body></HTML>

View File

@ -1,33 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Introduction</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Introduction</STRONG><BR>This is a x64/x32 debugger that is currently
in active development.</P>
<P>The debugger (currently) has three parts:<BR>- DBG<BR>-
GUI<BR>
- Bridge</P>
<P>DBG is the debugging part of the debugger. It handles
debugging (using TitanEngine) and will provide data
for the GUI.</P>
<P>GUI is the graphical part of the debugger. It is built on
top of Qt and it provides
the user interaction.</P>
<P>Bridge is the communication library for the DBG and GUI
part (and maybe in the future more parts). The bridge can be used to work on new
features, without having to update the code of
the other parts.</P></body>
</html>

View File

@ -1,48 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Jxx/IFxx</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Jxx/IFxx<BR></STRONG>There are various branches
that can react on the flags set by the 'cmp' (and maybe
other)&nbsp;command(s):</P>
<UL>
<LI>
<DIV>unconditional branch &nbsp;&nbsp; -
<U>jmp/goto</U></DIV>
<DIV></DIV>
<LI>
<DIV>branch if not equal&nbsp;&nbsp; &nbsp; -
<U>jne/ifne(q)/jnz/ifnz</U></DIV>
<LI>
<DIV>branch if equal&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp; - <U>je/ife(q)/jz/ifz</U></DIV>
<LI>
<DIV>branch if smaller&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; -
<U>jb/ifb/jl/ifl</U></DIV>
<LI>
<DIV>branch if bigger&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
- <U>ja/ifa/jg/ifg</U></DIV>
<DIV></DIV>
<LI>
<DIV>branch if bigger/equal&nbsp; -
<U>jbe/ifbe(q)/jle/ifle(q)</U></DIV>
<LI>
<DIV>branch if smaller/equal -
<U>jae/ifae(q)/jge/ifge(q)</U></DIV></LI></UL>
<P class=rvps3><U>arguments </U><BR>&nbsp; arg1: The label to jump to.</P>
<P class=rvps3><U>result <BR></U>This command does not set any result variables.
</P></body>
</html>

View File

@ -1,23 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>LibrarianRemoveBreakPoint/bcdll</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>LibrarianRemoveBreakPoint[,bcdll]</STRONG><BR>Remove
a DLL breakpoint.</P>
<P><U>arguments</U><BR>&nbsp; arg1: DLL Name to remove the breakpoint from.</P>
<P><U>result<BR></U>This command does not set any result variables.</P>
</body>
</html>

View File

@ -1,28 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>LibrarianSetBreakPoint/bpdll</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>LibrarianSetBreakPoint[,bpdll]</STRONG><BR>Set a singleshoot
breakpoint on DLL load/unload.</P>
<P><U>arguments</U><BR>&nbsp; arg1: DLL Name to break
on.</P>
<P>[arg2]: 'l' means on load, 'u' means on unload. When not
specified, x64dbg will break on both load and unload.</P>
<P>[arg3]: When specified, the breakpoint will not be singleshoot. When not specified the
breakpoint will be removed after it has been hit.</P>
<P><U>result<BR></U>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,20 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Memory Operations</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Memory Operations</STRONG><BR>This section
contains commands to manipulate memory inside the debuggee.</P></body>
</html>

View File

@ -1,20 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Misc</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Misc</STRONG><BR>This section contains all
commands that do not directly fit in another section.</P></body>
</html>

View File

@ -1,34 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>PLUG_INITSTRUCT</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>pluginit</STRONG><BR>This structure is used by the only <STRONG>needed</STRONG>
export in the plugin
interface:</P>
<P>struct
<STRONG>PLUG_INITSTRUCT<BR></STRONG>{<BR>&nbsp;&nbsp;&nbsp; <EM>//data provided
by the debugger to the plugin.</EM><BR>&nbsp;&nbsp;&nbsp; [IN]
<STRONG>int</STRONG> pluginHandle; //handle of the plugin<BR>
<BR>&nbsp;&nbsp;&nbsp;&nbsp;<EM>//data provided by the plugin
to the debugger (required).</EM><BR>&nbsp;&nbsp;&nbsp; [OUT]
<STRONG>int</STRONG> sdkVersion; //plugin SDK version,&nbsp;use the
PLUG_SDKVERSION define for this<BR>&nbsp;&nbsp;&nbsp; [OUT]
<STRONG>int</STRONG> pluginVersion; //plugin version,
useful for crash reports<BR>&nbsp;&nbsp;&nbsp; [OUT]
<STRONG>char</STRONG> pluginName[256]; //plugin name, also
useful for crash reports<BR>
};</P></body>
</html>

View File

@ -1,35 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>PLUG_SETUPSTRUCT</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>plugsetup</STRONG><BR>This structure is used by the function that allows the
creation of plugin menu entries:</P>
<P>
struct <STRONG>PLUG_SETUPSTRUCT</STRONG>
<BR>{<BR>&nbsp;&nbsp;&nbsp; <EM>//data provided by the debugger to
the plugin.</EM>
<BR>&nbsp;&nbsp;&nbsp; [IN] <STRONG>HWND</STRONG> hwndDlg; //GUI window
handle<BR>&nbsp;&nbsp;&nbsp; [IN]
<STRONG>int</STRONG> hMenu; //plugin menu
handle<BR>&nbsp;&nbsp;&nbsp; [IN] <STRONG>int</STRONG> hMenuDisasm;
//plugin disasm menu handle<BR>&nbsp;&nbsp;&nbsp; [IN] <STRONG>int</STRONG>
hMenuDump; //plugin dump menu handle<BR>&nbsp;&nbsp;&nbsp; [IN]
<STRONG>int</STRONG> hMenuStack; //plugin stack menu
handle<BR>
};</P></body>
</html>

View File

@ -1,22 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Plugins</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Plugins<BR></STRONG>This section describes
various plugin functions for x64dbg.</P>
<P>You can install plugins by copying the *.dp32 (x32
plugins) or *.dp64 (x64
plugins) to the 'plugins' directory.</P></body>

View File

@ -1,20 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Plugins</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Plugins</STRONG><BR>This section contains
debugger-embedded plugin commands.</P></body>
</html>

5
help/README.md Normal file
View File

@ -0,0 +1,5 @@
This help has been moved.
Web help: http://help.x64dbg.com
Github: https://github.com/x64dbg/docs
Read the Docs: https://readthedocs.org/projects/x64dbg

View File

@ -1,22 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Script Commands</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Script Commands<BR></STRONG>This section contains various commands that are
only used or available in
a scripting context. Commands that also exist in a non-scripting context have
priority.</P></body>
</html>

View File

@ -1,21 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Scripting</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>Scripting</STRONG><BR>This sections provides an overview of automating tasks with
x64dbg using scripts. See Commands for a description of all possible script commands. See Introduction for an introduction to
expressions.</P></body>
</html>

View File

@ -1,24 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>SetBPXOptions/bptype</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>SetBPXOptions[,bptype]</STRONG><BR>Set the default type for the "SetBPX" command.</P>
<P><U>arguments<BR></U>&nbsp; arg1: Default type. This can be "short" (CC),
"long" (CD03) or "ud2" (0F0B). Type default type affects
both NORMAL and SINGLESHOT breakpoints.</P>
<P><U>result<BR></U>This command does not set any result
variables.</P></body>
</html>

View File

@ -1,46 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>SetBPX/bp/bpx</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
html,body {
/* Default Font */
font-family: Courier New;
font-size: 11pt;
}
</style>
</head>
<body>
<P><STRONG>SetBPX[,bp,bpx]</STRONG><BR>Set an INT3 (SHORT/LONG)&nbsp;or UD2 breakpoint
and optionally assign a name to it.</P>
<P><U>arguments<BR></U>&nbsp; arg1: Address to put a breakpoint on. This can be an API name&nbsp;[not
implemented].</P>
<P>
[arg2]: Name of the breakpoint, use quotation marks to
include spaces. This name can be used
by the EnableBPX, DisableBPX and DeleteBPX functions as alias,
but is mainly intended to provide a single line of information about the
currently-hit breakpoint. When arg2 equals to a
valid type (arg3) the type is used and arg2
is
ignored.</P>
<P>
[arg3]: Breakpoint type. Can be one of the following
options
in random order: "ss" (single shot breakpoint), "long" (CD03),
"ud2" (0F0B) and "short" (CC). You can combine the "ss" option
with one of the type options in one string. Example: "SetBPX 00401000,"entrypoint",ssud2" will set a
single shot&nbsp;UD2&nbsp;breakpoint at 00401000 with the name "entrypoint".
When specifying no type or just the type "ss"
the default type will be used. Per default this equals to the
"short" type. You can change the default type using the "SetBPXOptions"
command.</P>
<P><U>result<BR></U>
This command&nbsp;does&nbsp;not any&nbsp;result
variables.</P></body></HTML>

View File

@ -1,31 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>SetHardwareBreakpoint/bph/bphws</title>
<meta name="GENERATOR" content="WinCHM">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">