codemorphis.com Forum Index codemorphis.com
Software development: pure and simple.
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Application Interface Component & Citrix
Goto page 1, 2  Next
 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    codemorphis.com Forum Index -> Visual Programming Forum
View previous topic :: View next topic  
Author Message
mforkner



Joined: 04 Aug 2004
Posts: 78

PostPosted: Mon Apr 25, 2005 11:29 am    Post subject: Application Interface Component & Citrix Reply with quote

Applications accessed via Citrix will not accept keystrokes from the application interface component. Has anyone found a workaround for this?
Back to top
View user's profile Send private message Visit poster's website
CodeMorphis



Joined: 02 Dec 2003
Posts: 252

PostPosted: Mon Apr 25, 2005 7:22 pm    Post subject: Reply with quote

Michael,

Do no key sequences at all work with your target app? Are you able to send mouse commands?

This might be remedied by a change coming in 1.1.8, although the problem that you describe where no communication at all is working sounds like it might be a separate issue, possibly having to do with a unique way in which the target app handles input messages.

Can you provide more information as to what your target app does?

Currently, in 1.1.7 the Application Interface component is using a .NET Framework messaging method to communicate with applications. It has been found that this method is not completely reliable - the symptom being that sometimes some messages do not get through to a target application. In 1.1.8, the Win32 equivalent is used in combination with some extra proprietary key sequence parsing.

Regards,

CodeMorphis Support
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mforkner



Joined: 04 Aug 2004
Posts: 78

PostPosted: Mon Apr 25, 2005 9:04 pm    Post subject: Citrix Reply with quote

I will attempt mouse clicks. No keystokes are seen by an application Citrix'd in that I have tried. When I hit a key with my finger, the Citrix'd app see's it and responds correspondingly, but the Synopsis commands are ignored.

I tried several old macro progs like Macro Mania and others, but a Citrix app does not see the keystrokes.

The app does receive focus when I 'Activate' it, but keystrokes are not processed. Maybe received or not, but definitely not processed.

In the old days, we used to test the keyboard for a keystroke and then depending on it's ASCII value (or other methods) determine which key was pressed. For sending keystrokes to an app that is 3270 emulated, or like IBM Personal Communcations, or PowerTerm, or CBIS -- all apps that interface with mainframes... | One needs to hit the Ctrl or Keypad Enter key to accomplish the same as the Enter key on the keypad. But there are two control keys, etc. I need to be able to send key specific strokes, but am not seeing how that is accomplished with the application interface component.

Thanks so much.

Regards,
Michael Forkner

Regards,
Michael Forkner
Back to top
View user's profile Send private message Visit poster's website
mforkner



Joined: 04 Aug 2004
Posts: 78

PostPosted: Tue Apr 26, 2005 9:15 am    Post subject: Oops Reply with quote

"One needs to hit the Ctrl or Keypad Enter key to accomplish the same as the Enter key on the keypad."

I meant to say... One needs to hit the Ctrl or NUMBER PAD Enter key ( assuming one has a 101 key keyboard at least ) to accomplish the same as the Enter key on the keyboard.

MF
Back to top
View user's profile Send private message Visit poster's website
CodeMorphis



Joined: 02 Dec 2003
Posts: 252

PostPosted: Tue Apr 26, 2005 10:53 am    Post subject: Reply with quote

Michael,

Can you describe what the Citrix application is doing? It sounds like your other macro controller programs are not able to send keystrokes to Citrix either, is that correct? If so then there may be something special that it is doing in processing keyboard input, although it is difficult to guess without knowing that the program is about.

The Windows messaging APIs don't distinguish between left and right controls for sending keystroke messages. Detection of left and right buttons for keypressed status is available, however. Does the app that you want to control discern between left and right control buttons?

Regards,

CodeMorphis Support
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mforkner



Joined: 04 Aug 2004
Posts: 78

PostPosted: Thu Apr 28, 2005 10:01 pm    Post subject: Citrix questions Reply with quote

No macro app I have tested has been able to pass keystrokes to a Citrix app.

The app I am attempting to communicate with is the Tivoli Service Desk ... a problem management ticketing app for helpdesk. To see new tickets in the queue ( problems to be resolved -- some orgs call them trouble tickets, some call them problem records....etc.) one must press a 'Refresh' button which will querry the database ( a DB2 database ) for any new tickets submitted to the queue for resolution.

The app (TSD -- citrix'd in) receives focus when 'activated', but doesn't see the keystrokes passed.

The TSD app is a windows gui program, and not a text based app. Some Tivoli apps are text based. So it's not like logging onto a mainframe in a comm app. This is pure windows gui citrix'd in.

As far as the comment about having to hit CTRL or Numeric Keypad ENTER key to accomplish the same thing as the regular ENTER key was a spat of brain damage... that is only true in the AS400 or mainframe apps I use... they have nothing to do with citrix apps, and I have no idea what prompted me to declare that. I appologize for the confusion.

Now, citrix'd apps reside on the host and quite possibly receive keystrokes through a keystroke capture and a native method of sending the keystrokes to the citrix server and responding accordingly, which is transmitted back and the gui reacts accordingly. I've asked around, but so far haven't found out how citrix handles keystrokes or mouse commands.


Hope this helps.

MF
Back to top
View user's profile Send private message Visit poster's website
CodeMorphis



Joined: 02 Dec 2003
Posts: 252

PostPosted: Fri Apr 29, 2005 2:34 pm    Post subject: Reply with quote

From the description of your target app, one possibility that comes to mind is that the input messages are handled by a child Windows handle. Thus, activating the application works fine as that affects the top-level Window but the input messages are not making it to the handle that listens to Windows messages. When you run the target application, are there other child windows that appear? If so, then this might be the case.

We'll see about adding a child handle discover service to the Application Interface component. Perhaps that might help to determine if there is a hidden handle to which the messages must be sent.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mforkner



Joined: 04 Aug 2004
Posts: 78

PostPosted: Sat Apr 30, 2005 10:13 am    Post subject: Child Window Reply with quote

There is a window which comes up first of all after program launch and logon -- it is an icon bar and menu. I click an icon that brings up a querry window allowning me to select the queue from which to view incoming trouble tickets. The queue selection window then terminates and another window is opened populated with the incoming tickets from the selected queue. Each window has a separate name, so only the queue window receives focus with the activate command.

I will make screen shots of each step of the program load to help give the written descriptions a visual representation. The screen shots should take the guess work out of what I am doing.

Also worth mentioning: I am using a workstation with four monitors and two graphics adapters, and the application interface component has no problem finding my programs no matter what screen they are on or what state the window is in.
Back to top
View user's profile Send private message Visit poster's website
CodeMorphis



Joined: 02 Dec 2003
Posts: 252

PostPosted: Sat Apr 30, 2005 8:03 pm    Post subject: Reply with quote

Since there is a control Window that launches other Windows, it sounds like the key commands need to be directed to the spawned windows and not the main one, which you are activating with the "Activate" service. If the main Window is launching separate processes then you should be able to send key comnands to the target Windows with the appropriate Window Title text (or PID). If they are Windows for threads running inside the main process then likely the messages need to be sent to child Windows. As mentionned in the previous reply, we will take a look to see if a new service to target child windows can be implemented.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mforkner



Joined: 04 Aug 2004
Posts: 78

PostPosted: Tue May 03, 2005 9:16 pm    Post subject: Screen Shots Reply with quote

I took a wonderful screen shot of the TSD tool with the icon & menu bar, and the main window I am trying to send keystrokes to, but since I'm on a workstation with 4 monitors and approx. 30 programs running simultaneously, the screen shot was about 25mb.

So, suffice to say... I can activate the window, but keystrokes are ignored... also, if I use Synopsis to activate the window ONLY with no keystrokes sent.... then manually type the keystrokes on the keyboard the application sees them.

The app is obviously capturing the keyboard commands.

If I can get on a workstation with only one monitor I will try the screen capture again.
Back to top
View user's profile Send private message Visit poster's website
CodeMorphis



Joined: 02 Dec 2003
Posts: 252

PostPosted: Wed May 04, 2005 4:47 am    Post subject: Reply with quote

If there are other child windows with titles, can you try activating them and then sending keystrokes to them? It may be that one of the child windows is managing the key input messages.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mforkner



Joined: 04 Aug 2004
Posts: 78

PostPosted: Sat May 07, 2005 1:13 pm    Post subject: Child Windows Reply with quote

I tried activating each of the two windows associated with the Tivoli TSD tool and then sending keystrokes, but nothing happens.

I will install the new update this evening and try the app with the new services, and report back as soon as possible.
Back to top
View user's profile Send private message Visit poster's website
CodeMorphis



Joined: 02 Dec 2003
Posts: 252

PostPosted: Mon May 09, 2005 10:05 am    Post subject: Reply with quote

Sounds like your target app may process keyboard input in a special way, but it is hard to tell without knowing more about the program.

Do mouse clicks get transmitted properly?
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mforkner



Joined: 04 Aug 2004
Posts: 78

PostPosted: Mon May 09, 2005 2:09 pm    Post subject: Mouse Clicks and the Application Interface Component Reply with quote

I don't know yet about mouse clicks going to a Citrix'd app, but every other app I've tried mouse clicks on work great.

You see, I work 12 hour shifts -- 5 days one week with a two day rest in the middel, then only two the next week, then it rotates. So, developing software is trial and error every few days... write the code, compile it, email it to myself at work, try it out, make notes, go home and make corrections...start process over.... This is why it's taking me forever to write these apps. I just need to break down and buy a license for my workstation at IBM.

Instead of tying up this thread of the forum for the next six weeks with back and forth minutia, I'll just start saving for a second license. Development time with the Synopsis product is minutes versus days or weeks, and I'm defeating the purpose of having a lightning dev platform if I develop from two different geographical loacations.

I will try mouse events with the citrix'd app this week and report back.

Thanks for all the great support, and congratulations on the release of v. 1.1.8 -- it has many great improvments that I look forward to employing.
Back to top
View user's profile Send private message Visit poster's website
CodeMorphis



Joined: 02 Dec 2003
Posts: 252

PostPosted: Mon May 09, 2005 4:40 pm    Post subject: Reply with quote

Thank you for your feedback and postings. We will continue to assist you with this matter - hopefully, there is a way to discover how your target app is treating keyboard input messages.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    codemorphis.com Forum Index -> Visual Programming Forum All times are GMT - 5 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group