using System; using System.Linq; using System.Collections.Generic; using System.Windows.Forms; using System.IO; using System.Runtime.InteropServices; using System.Reflection; using System.Threading; namespace MYGPSTest { static class Program { /// <summary> /// The main entry point for the application. /// </summary> private static GPSReader gpsRead; private static string gpsString = string.Empty; private static string strPort = "COM3:"; private static double lat = 0; private static double lngi = 0; [MTAThread] static void Main() { GPSCapture(); Application.Exit(); } private static void GPSCapture() { gpsRead = new GPSReader(); gpsRead.OnGPSMessage += new GPSEventHandler(gps_OnGPSMessage); gpsRead.BaudRate = 9600; gpsRead.PortName = strPort; gpsRead.StartRead(); DateTime startTime = DateTime.Now; while (startTime.AddSeconds(18000) > DateTime.Now)//To keep this program running 5 hrs { //MessageBox.Show("Test Message"); Thread.Sleep(10000); WriteToLog("Save to Log (GPSCapture): " + lngi.ToString().Trim() + ", " + lat.ToString().Trim() + " : " + DateTime.Now.ToString("HH:mm:ss").Trim()); } gpsRead.StopRead(); } private static void gps_OnGPSMessage(object sender, GPSEventArgs args) { if (args != null) { lat = args.Lat; lngi = args.Lon; WriteToLog("Save to Log (gps_OnGPSMessage): " + lngi.ToString().Trim() + ", " + lat.ToString().Trim() + " : " + DateTime.Now.ToString("HH:mm:ss").Trim()); } } internal static void WriteToLog(string message) { StreamWriter streamWriter = null; try { string dPath = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase) + @"\Log.txt"; streamWriter = new StreamWriter(dPath, true); streamWriter.WriteLine(message); streamWriter.WriteLine(""); streamWriter.Close(); } catch (Exception err) { MessageBox.Show(err.Message); } finally { if (streamWriter != null) streamWriter.Dispose(); } } } }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)