Проблема попрежнему остается
Сделал такой скриптик:
#include <iostream.h> 
#include <fstream.h>  
#include <windows.h> 
#include <string.h>  
#include <ctime.h>
char NNN[100], NameFile[50], NF[50];
char bufRus[256];
char *Head[]={"Ошибка","Уведомление"};
char *Info[]={"Файл уже существует ",
              "Информация сохранена в файле "};
 
char* RUS(const char*text) //функция поддержки русского языка
{
CharToOem(text,bufRus);
return bufRus;
}
void main()
{
  cout << RUS("Версия программного обеспечения Version 1.0 \n");
  cout << RUS("Введите идентификатор: "); 
  cin >> NameFile;
  strcpy(NF,NameFile); 
  strcat(NameFile,"-1.txt"); 
  ofstream OutFile(NameFile, ios::out);
  
  cout << RUS("Идентификатор: ")<< NF << "\n";  // ???
  OutFile << "\n" << "Идентификатор: "<< NF << "\n";
  
  if (!OutFile) {MessageBoxA(0,Info[0], Head[0], MB_ICONERROR); abort(); }
  time_t t;
  time(&t);
  cout << "\n" << RUS("Дата и время: \n") << ctime(&t) << "\n";
  OutFile << "\n" << "Дата и время: "<< ctime(&t)<< "\n";
  
 cout << RUS("Жду готовности \n");
 cout << RUS("Ввод данных завершен\n");
 OutFile.close();
 strcat(strcat(NNN,Info[1]),NameFile);
 MessageBoxA(0,NNN,Head[1], MB_OK);
}
Если компилирую его Borland C++ Bilder 6.0 - работает как надо...
Если компилирую его MS Visual C++ 6.0 то строка, откомментированная 

? и последующие строки выводятся только после получения MessageBoxA, которое в последней строке и нажатия кнопки ОК.                                                                       
И попутно еще вопрос. При компиляции исходного скрипта (не этого) в MS VC++ EXEшник получается 250 кб (debug) 
или 70кб (release)
При компиляции в Borlande не получается сделать меньше чем 300 кб. Где я еще лоханулся?