From Simson Garfinkel
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.
- 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
- 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