Windows Resources

From Simson Garfinkel
Jump to: navigation, search

Windows Development

I'm primarily a Unix developer, but some of the code that I maintain has to run on Windows. Here's a list of useful things for other Unix programmers that are put into this position.

MinGW
These days I'm primarily doing my Windows development on a Macintosh computer using mingw as a cross-compiler. For instructions on how to do this download either my bulk_extractor program or afflib and look for the file "make_mingw.sh" in the root directory.
Microsoft VC++
Microsoft makes "express" versions of its Basic, C#, C++ and J# compilers available for free. Presumably this is to compete against cygwin, which lets you compile and run traditional Linux/Unix free software on Windows. (I don't like using cygwin myself, becuase it requires the use of a special Cygwin DLL, it has traditionally had problems with multi-threading, and there have been performance issues in the past. But for many jobs Cygwin is probably just fine.)
Cryptography on Windows
Windows has a built-in CryptoAPI that can perform most cryptographic functions, but the API is completely non-standard. Microsoft posted an example C program to calculate the MD5 hash of a file using the CryptoAPI. Getting this program to actually compile requires that you install the Platform SDK in addition to the C++ compiler. Successfully linking the proram requires information not present on the MSDN web page. I have uploaded the source code and a makefile for Microsoft's NMAKE to this server.
SSH, XTERM, and other remote access applications
MobaXterm
http://mobaxterm.mobatek.net This seems to be the best remote access solution for Windows. It includes a command line, SSH, X server, and many other useful resources.
Screen shots on windows
http://stackoverflow.com/questions/997175/how-can-i-take-a-screenshot-and-save-it-as-jpeg-on-windows
http://stackoverflow.com/questions/7292757/how-to-get-screenshot-of-a-window-as-bitmap-object-in-c
http://stackoverflow.com/questions/5610075/taking-a-jpeg-encoded-screenshot-to-a-buffer-using-gdi-and-c
http://stackoverflow.com/questions/531684/what-is-the-best-way-to-take-screenshots-of-a-window-with-c-in-windows
http://stackoverflow.com/questions/2659932/how-to-read-the-screen-pixels
http://www.codeproject.com/Articles/5051/Various-methods-for-capturing-the-screen