tkinter.filedialog
for Output File Location
* I can't even get this code to be problematic, with a folder containing unicode heart characters, on 64-bit Python 3.7.9 (Release/4.1.6 adjusted to not set UTF-8 locale), let alone on 64-bit Python 3.11 and this branch. So, just always use the tkinter dialog. Bye-bye ctypes code which I just couldn't get to work under 64-bit Python. * I *think* the issue with the ctypes code was that under 32-bit an 'int' and a pointer are the same size. 'Raw' (not declaring types beforehand) the `SHBrowseForFolderW()` function causes ctypes to consider it returns an int. This works on 32-bit. But on 64-bit that int is still 32-bits, but pointers are 64-bit, so ctypes ends up coercing/casting/truncating the returned pointer into an int, which than can't even be cast back to a pointer. Meanwhile, attempting to properly define the signature of the function has only lead to it crashing on invocation, despite being passed the same BROWSEINFOW structure, defined in the same manner. This might be a matter of a type within it needing adjusting, but I was following the docs there.
Any questions or offers of help can be directed to the EDCD Discord #edmc channel:
Elite: Dangerous Market Connector (EDMC)
This application is only of use to PC players of the game Elite Dangerous (and its expansions). It won't work with PS4 or Xbox accounts.
It utilises the Journal files written by the game on the user's computer, together with data from the API Frontier Developments supplies in order to feed this data to various third party sites that the user may find useful.
See the Wiki documentation for more details.
Installation & Uninstall
Please see the Installation & Setup wiki page.
Running from source
Please see the Running from source wiki page.
Plugins
Plugins extend the behaviour of this app. See the Plugins wiki page for more information.
If you would like to write a plugin please see PLUGINS.md.
Troubleshooting
Please see the Troubleshooting wiki page.
Reporting a problem
Please report a problem as a new GitHub issue. See Reporting a problem for further guidance, including how to find the necessary log files to attach to the report.
Packaging for distribution
Please see docs/Releasing.md.
Disclaimer
This app uses the “Companion” web API that Frontier originally supplied for their Elite Dangerous iOS app and now support for third-party apps. If that API ceases to function in the future then much of this application's functionality will be curtailed (although it could still utilise Journal files).
Acknowledgements
Please see the Acknowledgements wiki page.
License
Copyright © 2015-2019 Jonathan Harris, 2020-2021 EDCD
Licensed under the GNU Public License (GPL) version 2 or later.