Jump to content
The simFlight Network Forums

Paul Henty

Members
  • Posts

    1,644
  • Joined

  • Days Won

    74

Paul Henty last won the day on January 25

Paul Henty had the most liked content!

About Paul Henty

  • Birthday 01/01/1970

Profile Information

  • Gender
    Male
  • Location
    Gloucestershire, UK

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Paul Henty's Achievements

Rising Star

Rising Star (9/14)

  • Very Popular Rare
  • Reacting Well Rare
  • Conversation Starter Rare
  • Dedicated Rare
  • Posting Machine Rare

Recent Badges

122

Reputation

  1. The top 4 errors are because Windows has flagged the files as coming from the internet. If you right click them in the File Explorer and select properties you'll find an option to unblock them. It might be better to unblock the ZIP file and then unzip it again. The 6 warning should resolve when you build the project for the first time and the NuGet components get automatically downloaded and installed. Paul
  2. Hi David, You should just choose the update option here and let VS re-target to the 4.8 framework. It will work fine. The example projects target 4.6.2 because that is the earliest version that Microsoft still support at the moment. Paul
  3. Hi Jason. You'll need to ask John Dowson about this in the MSFS (FSUIPC7) support forum. Paul
  4. Hi, You are getting the warnings because my DLL depends on the Win32 API and the WinForms library . Those are not included in the .NET Standard 2.0 specification. It's telling you that if you use my library, your application will no longer be .NET Standard 2.0 compatible. e.g. It won't run on Linux. Running it on a Windows .NET 8 machine will be fine because that platform does include the Win32 API and the WinForms library. Since my DLL cannot work on any platform except Windows I cannot make it target a cross-platform specification like .NET Standard 2.0. Even the .NET versions I do target have to be the specific 'windows' versions. e.g. net6.0-windows not net6.0. If you must use Standard 2.0, the only thing you can do is tell VS to suppress the warning, but your app will not really be compatible with Standard 2.0. Paul
  5. Hi Kees, This forum is for .NET programming; your questions seems to be about Lua so this isn't really the best place to get help with that. However, you'll probably get better performance by using the lua event system for LVars: event.Lvar("lvarname", interval, "function-name") This will call the specified function when the value of the LVar changes. That function can then set the value in the offset. I think this will reduce the processing from the current situation where you are reading the writing every LVAR every 100ms. I don't really know lua that well, so If you want more information about this, please ask John Downson in the main FSUIPC forum (not any of the sub-forums) at the link below. https://forum.simflight.com/forum/30-fsuipc-support-pete-dowson-modules/ Paul
  6. My DLL has no way to access SimConnect variables. I know FSUIPC7 has a way to map a simconnect variable to an unused offset, but I'm not sure if this works with a whole structure, or if it works with earlier versions of FSUIPC. @John Dowson will be able to tell you if it's possible to access this simconnect data via offsets. If he doesn't see this and reply here, please ask him directly in the main FSUIPC support forum. Paul
  7. Hi Robert, I don't know anything about the P3D shared cockpit feature, but it sounds like these particular variables are not getting shared between the copies of P3D. I guess P3D can't share everything due to bandwidth, especially if you're using third-party aircraft. FSUIPC itself doesn't do any cockpit sharing so offset values will also not be shared unless they are backed by P3D data that is shared. So writing to spare offsets on one copy of P3D will not be seen on the other. I don't think there's an easy way to do this. You'll need to come up with a way to pass the data between the two PCs yourself. The obvious way is probably to use a TCP link between your application running on the the server and the client(s) and pass the LVAR data between them. .NET has a TcpClient and TcpListener class. Your application can then exchange the LVAR data over the TCP link and update the local copies of the LVARs using FSUIPC. There might be some .net libraries that make data exchange easier than writing your own networking code, but I've never looked into this. Paul
  8. Hi, I think you've posted in the wrong sub-forum. This is for questions about programming FSUIPC applications in .NET languages. I recommend reposting in the main FSUIPC support forum. Follow this link, scroll down a bit and find the [Start New Topic] button. https://forum.simflight.com/forum/30-fsuipc-support-pete-dowson-modules/ Paul
  9. The NAV offsets are stored in hexadecimal, not decimal like the COM offsets. To convert the value, you must convert it to a string using hexadecimal format. Then you need to add the 1 at the front and the decimal point in the middle... string nav1String = nav1offset.Value.ToString("X4"); // Convert to hex - exactly 4 digits nav1String = "1" + nav1String.Substring(0, 2) + "." + nav1String.Substring(2, 2); In your example you got the value 4176. In hexadecimal this is 1050. Which represents the frequency 110.50 Paul
  10. Great! Glad it's all sorted. It was baffling me for sure. I hadn't considered you were using the untyped Offset class. I've reproduced the error here and I've made a small change to the DLL so that it gives a much better exception than "index out of range": FSUIPC.FSUIPCException: 'FSUIPC Error #999: FSUIPC_ERR_WRITE_OVERFLOW. Offset 66C0 is declared with length of 9 Bytes. The data you are trying to write is different from this. (8 bytes)' Version 3.3.9 is now on NuGet. Paul
  11. That line number doesn't really help unfortunately. Can you make sure FSUIPCConnection.DLLVersion is reporting 3.3.8? Also some of this info might help: 1. are you using any named offset groups anywhere in your application? Or are you just using the blank default group? 2. is there any multi-threading in your application? Or is everything run on the main UI thread? Paul
  12. Okay - here's the file. Copy it to your application folder (along side the fsuipcClient.DLL). When you get the stack trace it should give you the line number in my Process() method where it's failing. Paul fsuipcClient.pdb
  13. The pdb files don't seem to be in the latest packages either. I'll have to sort that out. But at least I can attach a copy for the latest version. I'll need to know which framework version you're using though - 4, 5, 6 or 7. Paul
  14. That's a very old version (about 4 years). Back then I was not shipping the pdb files in the package. The pdb files are specific to each build of the DLL so I can't generate one for an old version. I can only really suggest updating to the latest version. There could be a few breaking changes however, depending on what features you're using. Also, the earliest framework supported is now .NET Framework 4.6.2. If you're using an earlier framework and don't want to upgrade your project to a new framework, let me know what version you're targeting. I might be able to suggest an alternative version of the DLL that supports the framework you're using. Paul
  15. Hi Robert, It's difficult to tell from that error. What version of the DLL are you using? Can you make sure you have the fsuipcClient.pdb file in the folder you run your application from. This should make it so the line number from my DLL is reported in the stack trace. That would help a lot. Visual Studio usually copies the pdb file to the build folder (e.g. bin/release). Paul
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.