Jump to content
The simFlight Network Forums

keystrokes


Recommended Posts

Dear Pete,

I would like to know if it's possible to send keystrokes from a widefs client to the widefs server PC.

This because i'm using a appl that runs fine on 32bit Pc, but lately i,m using win7 64 bit.and it does not run

on 64 bit PC's yet( an it will take some time before i solved that problem).

So i run the appl on a widefs client PC (Xp 32bit) and FSX is on the win7 64 bit widefs server Pc.

And using certain aircrafts like the PMDG and ATR a lot instruments are contolled through keystroke.

regards,

henri

Link to comment
Share on other sites

I would like to know if it's possible to send keystrokes from a widefs client to the widefs server PC.

Yes, but WideClient has to have the keyboard focus to receive them. It won't intercept the keyboard, it only receives keystrokes if it's window is selected first. To get it to forward them on to FS you have to enable that action in the WideClient.INI file. (Offhand I think the param is "SendKeyPresses", but please search for "KeyPress" in the WideFS Technical document).

This because i'm using a appl that runs fine on 32bit Pc, but lately i,m using win7 64 bit.and it does not run

on 64 bit PC's yet( an it will take some time before i solved that problem).

So i run the appl on a widefs client PC (Xp 32bit) and FSX is on the win7 64 bit widefs server Pc.

And using certain aircrafts like the PMDG and ATR a lot instruments are contolled through keystroke.

But how is this application sending the keystrokes to WideClient? If it involves buttons which FSUIPC can recognise you'd be far better off just using those and then programming the buttons in FSUIPC to send your keystrokes.

Regards

Pete

Link to comment
Share on other sites

Thanks for replay Pete,

sorry if I have not been entirely clear. My real problem is that i use phidget interface cards and the plugin

does not support 64bit yet. The first part of the appl works on the addresses provided by the FSInterrogate

(And I still run this through widefs). But because i want to expand my appl, I had to create

some macro's first and then assign the keystroke to them( ATR 72-500 from flight1). And this keystrokes i want to

activate and send through the appl that is running on the client pC. This is until I'm able to run the appl on

the FSX pc

regards,

henri

:D

Link to comment
Share on other sites

My real problem is that i use phidget interface cards and the plugin

does not support 64bit yet. The first part of the appl works on the addresses provided by the FSInterrogate

(And I still run this through widefs).

Yes, so the part I didn't know was that you are writing to offsets, not using buttons nor producing keystrokes.

But because i want to expand my appl, I had to create

some macro's first and then assign the keystroke to them( ATR 72-500 from flight1).

Now that is very confusing. Before you said "And using certain aircrafts like the PMDG and ATR a lot instruments are contolled through keystroke.". But now you say you are creating macros and assigning keystrokes to them, which is the other way round -- that implies you are not sending keystrokes TO the aircraft, but using keystrokes to activate FSUIPC macros.

Please clarify, otherwise I don't know how to advise you.

And this keystrokes i want to activate and send through the appl that is running on the client pC.

You don't want to use keystrokes to activate macros via WideFS, that's very inefficient and liable to errors and all sorts. Just instigate the macro directly through the offsets provided for that (see offsets 0D6C, 0D70).

If you want to program things in FSUIPC's options you can instead just operate the Virtual Button facilities at offset 3340 and following. Toggling any of the 288 bits there is recognised in the Buttons tab as a button change, and you can assign as needed.

If you really must send a keystroke from the program running on the Client, the best way is sending the appropriate FSUIPC added control via offset 3110. There are controls for "Key Press", "Key Press and Release" and "Key Press and Hold". The parameter encoding is documented in the controls list in the Advanced Users guide.

Regards

Pete

Link to comment
Share on other sites

Thanks again,

It's funny to see how difficult it's sometimes to explain something escp in a diff

language.

But Yes I do have to use both offsets and macros. personally i prefer the offsets

but you know as well that not all offsets are available especially ATR.

I think you give about what i need or to look for

Still thx alot for the advice Pete,

regards

Henri

Link to comment
Share on other sites

Dear Pete,

I still need your help. i have done a lot of reading and rereading, one very interesting and

usefull item is the logging( had never used it before).I have studied the examples.

One of your suggestion is to instigate the macro directly through the offset (0D6C and 0D70) which sound good.

But! My question is How?

ex:

1= W0D70=1 CM19:5,0

where M19 is the overhead panel and 5= strobe lights.

And how can i finf out if a offset is used?

I hope you can give me some more good advise or samples.

regards,

Henri

Link to comment
Share on other sites

One of your suggestion is to instigate the macro directly through the offset (0D6C and 0D70) which sound good.

But! My question is How?

By putting the parameter, if there is one, into 0D6C and then writing the Macro name to 0D70, exactly as explained in the documentation! Did you not read it? What part of it don't you understand?

ex:

1= W0D70=1 CM19:5,0

where M19 is the overhead panel and 5= strobe lights.

But that is the encoded form, as used in the FSUIPC INI file for Button or Key assignments. That isn't anything to do with instigating a macro directly via offsets!!!

And how can i finf out if a offset is used?

You KNOW an offset can be used to start a Macro -- I told you and you just confirmed! It is 0D70!

I hope you can give me some more good advise or samples.

samples of what? How to write to an offset? Surely, if you are interfacing directly to FSUIPC via offsets you know this already? So all you need to do now is write the macro name to 0D70. The macro name is what you assign to in the dropdowns in FSUIPC -- i.e. ":".

What is so hard about all this?

Regards

Pete

Link to comment
Share on other sites

Hi Pete,Thanks.

i'm sure it should'nt be that hard, and sorry for my ignorance, I thought that the

offset assigment should be set through the Fsuipc ini file. But youre saying that it should be done

in the dropdown. The only dropdown with offset 2be set are on the tabe panel in the Axis assigment.

So i'm a little confused and sure that i'm missing or overlooking something. But what?

Still hope you can help.

regards,

henri

Link to comment
Share on other sites

I thought that the

offset assigment should be set through the Fsuipc ini file. But youre saying that it should be done

in the dropdown.

No no NO!

What is this about "offset assignment"? ARE you writing to offsets from a program, through the FSUIPC interface, or are you merely trying to assign a button to a macro?

Assigning buttons is done in FSUIPC's Buttons options tab. The drop downs there will list all of the macros.

Writing to offsets from a program is covered in the FSUIPC SDK. Are you writing a program or not? If not what on Earth is all this talk of offsets in the first place?

:-(

Referring right back you said this:

But because i want to expand my appl, I had to create

some macro's first and then assign the keystroke to them( ATR 72-500 from flight1). And this keystrokes i want to

activate and send through the appl that is running on the client pC.

which reads to me as if you have an application and want to write to an offset in such a way that your ATR macro is activated. That is EXACTLY what offset 0D70 is for.

Now please explain: where are buttons, drop-downs and ini files involved in this? If your program isn't really using offsets, if it isn't really interfacing to FSUIPC or WideFs, what are we talking about?

Pete

Link to comment
Share on other sites

Thanks,

yes i do use offset &H0D70,2, in my appl. When i do some logging with the IPCwrite it shows

the offset &H0D70 2 bytes 00 00 (off) or &H0D70 2 bytes 01 00 (on) using a switch.

Now i do get it a bit. and i just started and still learing about programming and still have a long way to go.

thanks pete thanks for your patience and sorry for the confusion.

regards,

henri

Link to comment
Share on other sites

yes i do use offset &H0D70,2, in my appl.

You are using it incorrectly then, as it is not a 2 byte number but a 40-byte (max) long string of characters including a zero terminator.

When i do some logging with the IPCwrite it shows

the offset &H0D70 2 bytes 00 00 (off) or &H0D70 2 bytes 01 00 (on) using a switch.

That's no use to FSUIPC. The facility at 0D70 requires the name of the macro or Lua plug-in to be run. That is what it is for! It is not a switch. YOU act on the switch, your program sees the switch and writes the macro name to 0D70, as I keep saying.

It seems to me you are not referring to the FSUIPC offsets list where this is all documented.

Regards

Pete

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • 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.