GithubHelp home page GithubHelp logo

sahorowitz / msfs2020-pilotpathrecorder Goto Github PK

View Code? Open in Web Editor NEW
83.0 83.0 9.0 4.25 MB

Record your flight path with key flight information archived during the Microsoft Flight Simulator 2020 flights. Then export that data to a KML file to use with Google Earth for 3 dimensional flight analysis

License: MIT License

C# 100.00%
airplane flight flight-simulator google-earth kml kml-data kml-format microsoft-flight-simulator microsoft-flight-simulator-2020 simulator

msfs2020-pilotpathrecorder's People

Contributors

sahorowitz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

msfs2020-pilotpathrecorder's Issues

Retry Sim Connection button disabled even though no Sim is connected

Simetimes MSFS just crashs to desktop. Once this application recognizes that it changes the SimConnect Status but doesn't enable the Retry Sim Connection button. The application has to be closed and reopen to establish a new connection. It would be better that the Retry Sim Connection button is enabled again once the application recognizes that the connection to the Sim has been lost. Please implement this change as it would be a great usability improvement.

Error when running application from another directory

Hi there, thanks for the new update with its nice features!

However, since the new update I get an error when running the application through a PowerShell script.

Reproduction steps
I use a PowerShell script to start PilotPathRecorder. The script is located in another folder (/Documents instead of /Documents/PilotPathRecorder). The script basically consist of this command:

start "C:\Users\myusername\Documents\PilotPathRecorder\FS2020PlanePath.exe"

Expected result
I expect this command to work outside the PilotPathRecorder directory, as before the update,. without giving any errors.

Result
When I use this command inside the PilotPathRecorder folder, it does work as expected.
When I use this command outside the PilotPathRecorder folder, it does not work as expected.:

The application starts with an error popup. The error popup doesn't tells me anything specific. Only to look in the log file and that the application will end.

The logfile PilotPathRecorderLog.txt*:

=============Error Logging ===========
===========Start============= 17/08/2021 21:53:16
Version: 1.4.0
Additional Information: Error finding or parsing AirportListvx.csv where x is a number.  Please ensure file is in directory and try again
Error Message: Sequence contains no elements
Stack Trace:    at System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
   at FS2020PlanePath.MainPage.MainPage_Shown(Object sender, EventArgs e)
===========End=============

In my PilotPathRecorder, no _AirportListvx.csv _ is present, but I assume vx is a variable for v1, as AirportListv1.csv IS present.

Copying AirportListv1.csv to my command execution directory (/Documents), the command does work and PilotPathRecorder runs without errors. But this is no solid solution for me.

I suspect the problem might be a faulty relative path in the code?

Unhandled Exception When Saving KML

This tool is great, but it seems like a third of the time I go to save the recorded flight out as a kml file for the Google Earth application, it produces an unhandled exception error. It does the same thing if saving for google earth for web. I thought this behavior might be related to active or full pausing in the game, but the latest flight with no pausing had the same results. See below for the full content of the error message.

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentException: '�', hexadecimal value 0x10, is an invalid character.
   at System.Xml.XmlUtf8RawTextWriter.InvalidXmlChar(Int32 ch, Byte* pDst, Boolean entitize)
   at System.Xml.XmlUtf8RawTextWriter.WriteElementTextBlock(Char* pSrc, Char* pSrcEnd)
   at System.Xml.XmlUtf8RawTextWriter.WriteString(String text)
   at System.Xml.XmlUtf8RawTextWriterIndent.WriteString(String text)
   at System.Xml.XmlWellFormedWriter.WriteString(String text)
   at SharpKml.Base.Serializer.WriteData(XmlWriter writer, String data)
   at SharpKml.Base.Serializer.WriteElement(XmlWriter writer, XmlNamespaceManager manager, Element element, ElementInfo elementInfo)
   at SharpKml.Base.Serializer.ElementSerializer.SerializeElements(Element element, Type elementType)
   at SharpKml.Base.Serializer.ElementSerializer.SerializeElements(Element element, Type elementType)
   at SharpKml.Base.Serializer.SerializeElements(XmlWriter writer, XmlNamespaceManager manager, Element element)
   at SharpKml.Base.Serializer.SerializeElement(XmlWriter writer, XmlNamespaceManager manager, Element element)
   at SharpKml.Base.Serializer.WriteElement(XmlWriter writer, XmlNamespaceManager manager, Element element, ElementInfo elementInfo)
   at SharpKml.Base.Serializer.ElementSerializer.SerializeElements(Element element, Type elementType)
   at SharpKml.Base.Serializer.SerializeElements(XmlWriter writer, XmlNamespaceManager manager, Element element)
   at SharpKml.Base.Serializer.SerializeElement(XmlWriter writer, XmlNamespaceManager manager, Element element)
   at SharpKml.Base.Serializer.WriteElement(XmlWriter writer, XmlNamespaceManager manager, Element element, ElementInfo elementInfo)
   at SharpKml.Base.Serializer.ElementSerializer.SerializeElements(Element element, Type elementType)
   at SharpKml.Base.Serializer.SerializeElements(XmlWriter writer, XmlNamespaceManager manager, Element element)
   at SharpKml.Base.Serializer.SerializeElement(XmlWriter writer, XmlNamespaceManager manager, Element element)
   at SharpKml.Base.Serializer.WriteElement(XmlWriter writer, XmlNamespaceManager manager, Element element, ElementInfo elementInfo)
   at SharpKml.Base.Serializer.ElementSerializer.SerializeElements(Element element, Type elementType)
   at SharpKml.Base.Serializer.SerializeElements(XmlWriter writer, XmlNamespaceManager manager, Element element)
   at SharpKml.Base.Serializer.SerializeElement(XmlWriter writer, XmlNamespaceManager manager, Element element)
   at SharpKml.Base.Serializer.Serialize(Element root, Stream stream, XmlWriterSettings settings)
   at SharpKml.Base.Serializer.Serialize(Element root, Stream stream)
   at SharpKml.Engine.KmlFile.Save(Stream stream)
   at FS2020PlanePath.MainPage.CreateKMLButton_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4300.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
FS2020PlanePath
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///F:/Documents/MSFS%20Apps/PilotPathRecorder/FS2020PlanePath.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4270.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4300.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4320.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Data.SQLite
    Assembly Version: 1.0.113.0
    Win32 Version: 1.0.113.0
    CodeBase: file:///F:/Documents/MSFS%20Apps/PilotPathRecorder/System.Data.SQLite.DLL
----------------------------------------
System.Data
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4270.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Transactions
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
System.EnterpriseServices
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.EnterpriseServices/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll
----------------------------------------
Microsoft.FlightSimulator.SimConnect
    Assembly Version: 10.0.61259.0
    Win32 Version: 10.0.61637.0 (FSX-Xpack.20070926-1421)
    CodeBase: file:///F:/Documents/MSFS%20Apps/PilotPathRecorder/Microsoft.FlightSimulator.SimConnect.DLL
----------------------------------------
msvcm80
    Assembly Version: 8.0.50727.9672
    Win32 Version: 8.00.50727.9672
    CodeBase: file:///C:/WINDOWS/WinSxS/x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.9672_none_d08f9da24428a513/msvcm80.dll
----------------------------------------
SharpKml.Core
    Assembly Version: 5.1.3.0
    Win32 Version: 5.1.3.0
    CodeBase: file:///F:/Documents/MSFS%20Apps/PilotPathRecorder/SharpKml.Core.DLL
----------------------------------------
Anonymously Hosted DynamicMethods Assembly
    Assembly Version: 0.0.0.0
    Win32 Version: 4.8.4300.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/mscorlib/v4.0_4.0.0.0__b77a5c561934e089/mscorlib.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

error message

Request: add connection retry timer

Hello, thanks for this simple but solid tool. I like it a lot.

Could you please implement a connection retry timer so that I can just start this program and leave it to be while my flight simulator is starting? That way I don't need to switch programs (which I often forgot which results in no tracking...).
The timeout doesn't need to be like 1 second, as the simulator takes a couple of minutes to start. So 5 - 30 seconds might be ideal? Anyway, your call!

Thanks in advance, I would appreciate it a lot!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.