Столкнулся со странным поведением fstream. Если использовать его так:
std::basic_fstream< BYTE > f;
f.open( "filename", std::ios::out | std::ios::app );
f.write( szString, dwStrLength );
f.close();
то файл записывается с макинтошевскими окончаниями строк ( 0xD 0xD 0xA ).
Проблема решается добавлением std::ios::binary к модификаторам открытия, но хочется понять, почему так.