StraceNT is a Windows system call tracer that functions like strace on Linux. With the ability to trace all process calls made to imported functions from other DLLs, StraceNT can effectively debug and analyze program operations by recording function names, arguments, and return values.

One of the key benefits of StraceNT is its use of IAT patching technique, which is both reliable and efficient. Regardless of the calling convention being used, whether __fastcall or __stdcall, StraceNT can handle it with ease. Plus, this software provides excellent filtering support based on DLL name and function name, allowing you to easily isolate a problem and control which calls to trace.
Other features of StraceNT include support for multithreaded applications, recording OutputDebugString output of the target process, and complete support on several Windows platforms like NT4 with Service Pack 6, Windows 2000, Window XP, and Windows 2003. If you have a 32-bit process running inside wow64 on Windows XP 64-bit or Windows 2003 64-bit, StraceNT provides full support as well.
However, there are a couple of non-supported platforms like Windows 95, 98, and ME, and Windows NT 3.51. Additionally, the software has not been tested on Windows NT 4.0 without service pack.
Overall, StraceNT is an excellent freeware tool that provides fast and efficient system call tracing, making it an ideal choice for developers and enthusiasts alike.
Version 0.8: Added function return value modification, better inclusion/exclusion and LoadLibrary loaded DLL tracing