From ea3dad282dc8553929fc68d0f8e3a304d371c8a2 Mon Sep 17 00:00:00 2001
From: "SND\\kernelnet_cp"
 <SND\kernelnet_cp@9b283d60-5439-405e-af05-b73fd8c4d996>
Date: Fri, 26 Nov 2010 11:47:57 +0000
Subject: [PATCH] [+] added : sample stacks.py

git-svn-id: https://pykd.svn.codeplex.com/svn@58074 9b283d60-5439-405e-af05-b73fd8c4d996
---
 samples/stacks.py | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 samples/stacks.py

diff --git a/samples/stacks.py b/samples/stacks.py
new file mode 100644
index 0000000..1c92a28
--- /dev/null
+++ b/samples/stacks.py
@@ -0,0 +1,37 @@
+import sys
+from pykd import *
+
+
+#def loadSymbols():
+#
+#    global nt
+#    nt = loadModule( "nt" )
+#    nt.PsActiveProcessHead = getOffset( "nt", "PsActiveProcessHead" )
+
+
+def printStack():
+
+    threadList = getThreadList()
+
+    for threadPtr in threadList:
+        oldThread = 0
+        setImplicitThread( threadPtr )
+        stackFrames = getCurrentStack()
+        for frame in stackFrames: dprintln( findSymbol( frame.instructionOffset ) + "  (%x)" % frame.instructionOffset )
+        dprintln("")
+
+
+#    stackFrames = getCurrentStack()
+	
+#    [ dprintln( findSymbol( f.instructionOffset ) + "  (%x)" % f.instructionOffset )  for f in stackFrames ]
+
+
+if __name__ == "__main__":
+
+    if not isSessionStart():
+        createSession()
+        loadDump( sys.argv[1] )
+        dprintln( sys.argv[1] + " - loaded OK" )
+
+    printStack()
+