Introduction - If you have any usage issues, please Google them yourself
This the third, fourth (and last) part for building a thread deadlock detector. Please see the first and second article to understand wait is going on : A (working) implementation of API hooking (Part II)
Packet : 169410apihookingpart3_src.zip filelist
aboutdlg.cpp
aboutdlg.h
ChainedList.h
Debug/
ListCtrlStyled.cpp
ListCtrlStyled.h
mainfrm.cpp
mainfrm.h
MapFileList.cpp
MapFileList.h
MapFileParser.cpp
MapFileParser.h
obj/
ProcessFileDlg.cpp
ProcessFileDlg.h
Release/
res/
resource.h
res/bitmap1.bmp
res/ico00001.ico
res/icon.pal
res/icon1.ico
res/ThreadDLD.exe.manifest
res/ThreadDLD.ico
res/Toolbar.bmp
SetThreadName/
SetThreadName.exp
SetThreadName.lib
SetThreadName/Debug/
SetThreadName/Debug/SetThreadName.exp
SetThreadName/Debug/SetThreadName.lib
SetThreadName/Debug/SetThreadName.map
SetThreadName/ReadMe.txt
SetThreadName/Release/
SetThreadName/Release/SetThreadName.dll
SetThreadName/Release/SetThreadName.exp
SetThreadName/Release/SetThreadName.lib
SetThreadName/SetThreadName.cpp
SetThreadName/SetThreadName.dsp
SetThreadName/SetThreadName.exp
SetThreadName/SetThreadName.h
SetThreadName/SetThreadName.plg
SetThreadName/StdAfx.cpp
SetThreadName/StdAfx.h
stdafx.cpp
stdafx.h
SyncObject.cpp
SyncObject.h
template/
template/ChainedList.hpp
TestApp/
TestApp/Debug/
TestApp/Debug/TestApp.map
TestApp/GetThreadID.cpp
TestApp/ReadMe.txt
TestApp/Release/
TestApp/Release/TestApp.map
TestApp/resource.h
TestApp/small.ico
TestApp/StdAfx.cpp
TestApp/StdAfx.h
TestApp/TestApp.aps
TestApp/TestApp.cpp
TestApp/TestApp.dsp
TestApp/TestApp.h
TestApp/TestApp.ico
TestApp/TestApp.plg
TestApp/TestApp.rc
ThreadDLD.aps
ThreadDLD.cpp
ThreadDLD.dsp
ThreadDLD.dsw
ThreadDLD.h
ThreadDLD.map
ThreadDLD.ncb
ThreadDLD.opt
ThreadDLD.plg
ThreadDLD.rc
ThreadDLDview.cpp
ThreadDLDview.h
ThreadSpy/
ThreadSpy.exp
ThreadSpy.lib
ThreadSpy/Debug/
ThreadSpy/Debug/ThreadSpy.map
ThreadSpy/Hooked.cpp
ThreadSpy/ReadMe.txt
ThreadSpy/Release/
ThreadSpy/Release/ThreadSpy.map
ThreadSpy/StdAfx.cpp
ThreadSpy/StdAfx.h
ThreadSpy/ThreadSpy.cpp
ThreadSpy/ThreadSpy.dsp
ThreadSpy/ThreadSpy.h
ThreadSpy/ThreadSpy.plg