mirror of
https://github.com/ivellioscolin/pykd.git
synced 2025-04-20 03:23:23 +08:00
ready for release 0.0.18
git-svn-id: https://pykd.svn.codeplex.com/svn@65847 9b283d60-5439-405e-af05-b73fd8c4d996
This commit is contained in:
parent
b30c1d15cb
commit
b79541dfce
13
changelog
13
changelog
@ -1,3 +1,16 @@
|
||||
version 0.0.18 25/05/2011
|
||||
|
||||
[+] added : rdmsr routine ( Return MSR value )
|
||||
[+] added : typeException, memoryException classes and their translation into python
|
||||
[+] added : typeInfo class
|
||||
[+] added : loadWChars routine
|
||||
[+] added : callback for load/unload modules
|
||||
|
||||
[~] removed : typeClass class
|
||||
|
||||
[!] fixed : issue 8669 ( typedVar() creates an object for a non-existent structure type )
|
||||
[!] fixed : issue 8655 ( Unnamed structure/unioin not added to fields of typedVarClass )
|
||||
|
||||
version 0.0.17 15/04/2011
|
||||
[+] added: isDumpAnalyzing function. Check if it is a dump analyzing or live debuggiv
|
||||
[+] added : loadChars routine. Load raw buffer.
|
||||
|
@ -53,8 +53,8 @@ END
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 0,0,17,0
|
||||
PRODUCTVERSION 0,0,17,0
|
||||
FILEVERSION 0,0,18,0
|
||||
PRODUCTVERSION 0,0,18,0
|
||||
FILEFLAGSMASK 0x17L
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@ -70,11 +70,11 @@ BEGIN
|
||||
BLOCK "041904b0"
|
||||
BEGIN
|
||||
VALUE "FileDescription", "pykd - python extension for windbg"
|
||||
VALUE "FileVersion", "0, 0, 17, 0"
|
||||
VALUE "FileVersion", "0, 0, 18, 0"
|
||||
VALUE "InternalName", "pykd"
|
||||
VALUE "OriginalFilename", "pykd.dll"
|
||||
VALUE "ProductName", "pykd - python extension for windbg"
|
||||
VALUE "ProductVersion", "0, 0, 17, 0"
|
||||
VALUE "ProductVersion", "0, 0, 18, 0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
@ -30,6 +30,14 @@ def printGdtEntry( addr ):
|
||||
dprint( "attr: %x ( " % attr + "".join( [ ( attr & ( 1 << ( 11 - i ) ) ) and "1" or "0" for i in range(0,12) ] ) + " )" )
|
||||
dprint( " base: %x" % base )
|
||||
dprintln( " limit: %x" % limit )
|
||||
|
||||
|
||||
def printGdt( gdtr ):
|
||||
for s in ( "cs", "es", "ds", "ss", "gs", "fs", "tr" ):
|
||||
dprintln( s + " (%x):" % reg(s) )
|
||||
printGdtEntry( gdtr + ( reg( s ) & 0xFFF8 ) )
|
||||
dprintln("")
|
||||
|
||||
|
||||
|
||||
def printGdtHelp():
|
||||
@ -42,23 +50,20 @@ def printGdtHelp():
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
if not isWindbgExt():
|
||||
print "script is launch out of windbg"
|
||||
quit( 0 )
|
||||
if not isWindbgExt():
|
||||
print "script is launch out of windbg"
|
||||
quit( 0 )
|
||||
|
||||
gdtr = reg("gdtr")
|
||||
gdtr = reg("gdtr")
|
||||
|
||||
if len( sys.argv)==1:
|
||||
for s in ( "cs", "es", "ds", "ss", "gs", "fs", "tr" ):
|
||||
dprintln( s + " (%x):" % reg(s) )
|
||||
printGdtEntry( gdtr + ( reg( s ) & 0xFFF8 ) )
|
||||
dprintln("")
|
||||
if len( sys.argv)==1:
|
||||
printGdt( gdtr )
|
||||
|
||||
elif sys.argv[1] == "help":
|
||||
elif sys.argv[1] == "help":
|
||||
printGdtHelp()
|
||||
|
||||
elif len( sys.argv )==2:
|
||||
elif len( sys.argv )==2:
|
||||
printGdtEntry( gdtr + ( int( sys.argv[1], 16 ) & 0xFFF8 ) )
|
||||
|
||||
else:
|
||||
printGdtEntry( int( sys.argv[1], 16 ) + ( int( sys.argv[2], 16 ) & 0xFFF8 ) )
|
||||
else:
|
||||
printGdtEntry( int( sys.argv[1], 16 ) + ( int( sys.argv[2], 16 ) & 0xFFF8 ) )
|
||||
|
Loading…
Reference in New Issue
Block a user