The WoW64 (Windows on Windows 64) subsystem uses the register redirection and file system redirection mechanisms for 32-bit programs launched in 64-bit Windows versions while 64-bit system...
When porting 32-bit code on a 64-bit system, Visual C++ compiler may generate a lot of warnings C4267 for the code where the result of the function std::string::find() is saved into a variable of...
The question if these types are equivalent and which of them and when should be used is discussed very much. But in practice you may consider them equivalent and use them as you...
While porting code from a 32-bit system to a 64-bit one, you may want to make the types size_t/ptrdiff_t 32-bit again to reduce the number of errors and warnings generated by the compiler. This...
Why is the value of the %ProgramFiles% environment variable replaced with the value of %ProgramFiles(x86)% when accessing it from a 32-bit program launched in a 64-bit operating...
Memsize-types DWORD_PTR, INT_PTR, LONG_PTR, UINT_PTR and ULONG_PTR are intended to support 64-bit code and can safely store a pointer regardless of the platform capacity. But these types might...
Unfortunately, despite the seeming simplicity, it is often not enough just to rebuild a 32-bit program for a 64-bit platform and fix compiler errors to provide assured operability of the...
There are two versions of the rundll32.exe program in 64-bit versions of Windows-family operating systems: 64-bit version: %WinDir%\System32\rundll32.exe and 32-bit...
The 64-bit version of Visual C++ compiler does not support inline assembler, so you cannot write code like "__asm int 3". But there is one more, less known mechanism to create interrupts...
Documented capabilities of WinAPI do not allow you to directly identify 64-bit processes from within a 32-bit program launched in a 64-bit Windows under WoW64. In general, reading of memory of...