Cross-platform Development Part 1: Few tools and libraries to get started with

Continuing from Getting started, here we will see some of the basic tools and libraries that one should be acquainted with to make the cross platform development fun and easy (while respecting the audience request to consider non-Windows platforms also). One of the most challenging parts of cross-platform development is ensuring portability/correctness across all the…

0

Tracking C++ variable state changes

Tracking class variables’ state changes can be tricky, especially if we are using too many asynchronous constructs. This is especially true for game and graphic application scenarios where hundreds and perhaps even thousands of object fly around changing their values in who knows which thread. (Who is forcing that character position into that map corner…

0

How to check if my code is executing inside a Managed App or Native App?

If you check the CRT source code (inside VC\crt\src\crt0.c) you can find an interesting function check_managed_app() that returns 1 if managed app, 0 if not based on the COM Runtime Descriptor in the Image Data Directory of the PE or PE+ header. You can generalize it to test if you are running as part of…

1

How to debug WinLogon.exe?

You can use the GFlags.exe application to enable debugging options for Window Login application. GFlags.exe ships with the Windows Debugging tools. (Get Windows Debugging Tools here.) Run the GFlags.exe and check the options: Debug WinLOGON, Enable debugging of Win32 SubSystem and Debug initial command. This results in running the Winlogon in the Windows Symbolic Debugger (Ntsd.exe) with the…

2