Index: /trunk/BNC/bncapp.cpp
===================================================================
--- /trunk/BNC/bncapp.cpp	(revision 558)
+++ /trunk/BNC/bncapp.cpp	(revision 559)
@@ -61,7 +61,5 @@
   void converttime(struct converttimeinfo *c, int week, int tow);
   void updatetime(int *week, int *tow, int tk, int fixnumleap);
-  int  HandleRunBy(char *buffer, int buffersize, const char **u, int rinex3);
-}
-
+}
 
 // Constructor
@@ -92,4 +90,13 @@
   _ephFileGlonass   = 0;
   _ephStreamGlonass = 0;
+
+  _pgmName  = _bncVersion.leftJustified(20, ' ', true);
+#ifdef WIN32
+  _userName = QString("${USERNAME}");
+#else
+  _userName = QString("${USER}");
+#endif
+  expandEnvVar(_userName);
+  _userName = _userName.leftJustified(20, ' ', true);
 }
 
@@ -294,7 +301,11 @@
         *_ephStreamGPS << line;
         
-        char buffer[100];
-        HandleRunBy(buffer, sizeof(buffer), 0, 1);
-        line.sprintf("%s\n%60sEND OF HEADER\n", buffer, "");
+        QString hlp = QDateTime::currentDateTime().toString("yyyyMMdd hhmmss UTC").leftJustified(20, ' ', true);
+        *_ephStreamGPS << _pgmName.toAscii().data() 
+                       << _userName.toAscii().data() 
+                       << hlp.toAscii().data() 
+                       << "PGM / RUN BY / DATE" << endl;
+
+        line.sprintf("%60sEND OF HEADER\n", "");
         *_ephStreamGPS << line;
         
@@ -312,7 +323,11 @@
         *_ephStreamGPS << line;
          
-        char buffer[100];
-        HandleRunBy(buffer, sizeof(buffer), 0, 0);
-        line.sprintf("%s\n%60sEND OF HEADER\n", buffer, "");
+        QString hlp = QDate::currentDate().toString("dd-MMM-yyyy").leftJustified(20, ' ', true);
+        *_ephStreamGPS << _pgmName.toAscii().data() 
+                       << _userName.toAscii().data() 
+                       << hlp.toAscii().data() 
+                       << "PGM / RUN BY / DATE" << endl;
+
+        line.sprintf("%60sEND OF HEADER\n", "");
         *_ephStreamGPS << line;
 
@@ -325,7 +340,11 @@
         *_ephStreamGlonass << line;
         
-        char buffer[100];
-        HandleRunBy(buffer, sizeof(buffer), 0, 0);
-        line.sprintf("%s\n%60sEND OF HEADER\n", buffer, "");
+        QString hlp = QDate::currentDate().toString("dd-MMM-yyyy").leftJustified(20, ' ', true);
+        *_ephStreamGlonass << _pgmName.toAscii().data() 
+                           << _userName.toAscii().data() 
+                           << hlp.toAscii().data() 
+                           << "PGM / RUN BY / DATE" << endl;
+
+        line.sprintf("%60sEND OF HEADER\n", "");
         *_ephStreamGlonass << line;
 
Index: /trunk/BNC/bncapp.h
===================================================================
--- /trunk/BNC/bncapp.h	(revision 558)
+++ /trunk/BNC/bncapp.h	(revision 559)
@@ -62,4 +62,6 @@
     gpsephemeris*     _gpsEph[PRN_GPS_END - PRN_GPS_START + 1];
     glonassephemeris* _glonassEph[PRN_GLONASS_END - PRN_GLONASS_START + 1];
+    QString           _userName;
+    QString           _pgmName;
 };
 #endif
