
Paul Henty
Members-
Posts
1,727 -
Joined
-
Days Won
78
Paul Henty last won the day on March 17
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
-
Paul Henty started following encounter FSUIPC_ERR_SIZE. while extracting data , SIMVARs , P3Dv4 FSUIPC6 and 4 others
-
Unfortunately my DLL cannot do this. To read SIMVARS directly I would need to add my own SimConnect connection into the DLL which is not a road I want to go down. Maybe @John Dowson could consider adding some offsets so programmers can add 'simvar to offset' mappings via the IPC interface, in addition to the myOffsets.txt file. e.g. write the simvar name, size, type, destination offset etc. to a series of offsets and this would add that mapping until FSUIPC was closed, just as if they had been included in myOffsets.txt. Paul
-
Will do. Thanks. Paul
-
You'll need to repost your question in the main FSUIPC support forum where John can answer. Here: https://forum.simflight.com/ This is a forum for .NET programming. Paul
-
Version 3.3.16 of FSUIPCClientDLL is now on NuGet. When using FSUIPC7: Connection will now fail with FSUIPCError.FSUIPC_FS_NOT_READY if the flight sim (MSFS2020 or MSFS2024) is not running or is not ready Version 1.1.4 of the WebSocketServer is now on the website: http://fsuipcwebsockets.paulhenty.com Fixed problem of not detecting the Flight Sim version when using FSUIPC7 and the sim is still starting up. Paul
-
These problems are causes by a recent change added to FSUIPC7 to support MSFS2024. As John says above the version number is now delayed until FSUIPC7 knows what sim it's connected to. I'm planning to change the DLL so that the connection will fail if there is no FS version. That is, FSUIPC7 is running, but the sim is not loaded/ready. I think that will avoid the problems and keep the behaviour consistent with older FS versions. If the sim isn't loaded and ready then I don't think the connection should succeed. I don't think there is anything useful that can be done with a connection to FSUIPC7 if it doesn't have a connection to the Flight Sim. To John: This change would mean the Socket Server would not need to be delayed. It would just retry until the flight sim version is reported. Paul
-
Event parameters for PMDG777 flight deck knobs
Paul Henty replied to Andy B.'s topic in FSUIPC Client DLL for .NET
You can use the FSUIPC logging to log the controls being sent. You can make sure the numbers are what you expect. Other than that, I can't suggest anything else unfortunately. I don't have any PMDG aircraft. All my DLL does is send the controls and parameter value via FSUIPC. If it's not working you'll need to ask John or PMDG. Paul -
Event parameters for PMDG777 flight deck knobs
Paul Henty replied to Andy B.'s topic in FSUIPC Client DLL for .NET
Have you tried sending the direct values instead of the mouse click values? Paul -
Yes, that's what's happening. The WebSocketServer uses my DLL and that gets the version information when the connection to FSUIPC is opened. Will 0x3308 be 0 before the SimConnection is made? I could check this in the socket server and retry until I get a proper version number. Paul
-
encounter FSUIPC_ERR_SIZE. while extracting data
Paul Henty replied to michielsweb's topic in FSUIPC Client DLL for .NET
I don't think so. The LVars come from the loaded aircraft. Paul -
14 is the value for is MSFS2024. I don't think you're using the latest version of the DLL. The puzzling thing is that you say it's working sometimes. Do you mean that you sometimes see "MSFS2024 (VX.X)"? If so are these on the same machine or are these reports from different users? Paul
-
Which sim are you connected to? If it's MSFS2024 you just need to update to the latest version of the DLL. Paul
-
encounter FSUIPC_ERR_SIZE. while extracting data
Paul Henty replied to michielsweb's topic in FSUIPC Client DLL for .NET
Looking at your output, you are getting nothing back from the WASM module at all. When you call Init() the WASM client sends a log message telling you version info and if the WASM SimConnect connection is open or not. You should also expect to see the events OnVariableListChanged and OnValuesChanged being fired, which is also not happening. I suspect it can't find the FSUIPC_WAPID.dll file. Check that this is included in your project and that its property "Copy to output folder" is set to "Copy if newer" or "Copy always". I can't remember if the names come through with the L: on or not. When you're getting variables through you can look at the collection: MSFSVariableServices.LVars.Names to see what LVars it found and their exact names. Paul -
is a long press of a Key possible
Paul Henty replied to mroschk's topic in FSUIPC Client DLL for .NET
I've tried this here using the Key_Press_and_Hold control. It may not do what you're expecting. It doesn't repeat the key until you call the release command. So you don't get the action repeating. You can try it for yourself and see if it does what you're expecting... Just paste this into your code and call. sendKeyHoldToFS - holds the key for the specified HoldTime (in milliseconds) then releases it. sendKeyDownToFS - presses the key down but does not release it. snedKeyUpToFS - releases the key. private void sendKeyHoldToFS(Keys Key, SendModifierKeys Modifiers, int HoldTime) { // First make sure FSX has the focus SendControlToFS(FSUIPCControl.Key_focus_restore, 0); // Wait for focus change Thread.Sleep(150); // Send the key down SendControlToFS(FSUIPCControl.Key_Press_and_Hold, (int)Key + ((int)Modifiers * 256)); // Wait Thread.Sleep(HoldTime); // send the key up SendControlToFS(FSUIPCControl.Key_Release, (int)Key + ((int)Modifiers * 256)); } private void sendKeyDownToFS(Keys Key, SendModifierKeys Modifiers, int HoldTime) { // First make sure FSX has the focus SendControlToFS(FSUIPCControl.Key_focus_restore, 0); // Wait for focus change Thread.Sleep(150); // Send the key down SendControlToFS(FSUIPCControl.Key_Press_and_Hold, (int)Key + ((int)Modifiers * 256)); } private void sendKeyUpToFS(Keys Key, SendModifierKeys Modifiers, int HoldTime) { // First make sure FSX has the focus SendControlToFS(FSUIPCControl.Key_focus_restore, 0); // Wait for focus change Thread.Sleep(150); // Send the key down SendControlToFS(FSUIPCControl.Key_Release, (int)Key + ((int)Modifiers * 256)); } Paul -
is a long press of a Key possible
Paul Henty replied to mroschk's topic in FSUIPC Client DLL for .NET
I'll can a new method for this. Probably SendKeyHoldToFS. You'll be able to specify how long to hold the key for. Would that be suitable or do you need separate key down/up calls and do the timing yourself? Paul -
encounter FSUIPC_ERR_SIZE. while extracting data
Paul Henty replied to michielsweb's topic in FSUIPC Client DLL for .NET
Yes, it's my DLL. To michielsweb: If you're only targeting MSFS2020 or MSFS2024 then you should look at the MSFSVariableServices class. This is way more efficient at dealing with LVARs than the FSUIPC interface. There is a demo project on the website. http://fsuipc.paulhenty.com/#downloads You're exceeding the FSUIPC data limit because you keep declaring a new copy of the offset every time the loop goes round... foreach (string input in simdata_input_pending) { string[] i = input.Split(','); if (i.Length >= 2) { string lvar = i[0].Trim(); if (float.TryParse(i[1].Trim(), out float newValue)) { // Send command to update LVAR Offset<string> setLvar = new Offset<string>(0x0D70, 256); You'll end up with hundred of these, all being processed at the same time which will easily exceed the data limit for FSUIPC. Offsets should only be declared once, usually at the class level, and then reused. I have no immediate plans to make the library async. If you want async behaviour on the Process() call you can create and await a new Task... await Task.Run(() => FSUIPCConnection.Process()); Paul