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 Previous  1, 2
 
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: Wed May 11, 2005 8:55 pm    Post subject: Citrix & Keystrokes Reply with quote

I recompiled my keystroke automation tool using the version 1.1.8 release with only one modification: to return focus to whatever application had focus before the switch to send keystrokes. This worked great -- I was working all day using the tool to automate a few different applications, and no matter what I was working on the automation tool switched apps and sent the keystrokes and returned focus without intterupting the work I was doing in other applications.

I am now able to send keystrokes to a citrix'd application, but worked sometimes or did not work sometimes depending on whether or not the right button was selected ( the REFRESH button ! ), then an {ENTER} command was sent. The application would occasionally reset the currently selected item to a different position after refreshing the view. The position varied somewhat, so sending position corretion keystrokes was not an option that woul work everytime. I need to add a variable pause before I send keystrokes as well. I have it hard coded to 100ms, which is about 20ms-100ms too soon every now and then -- depending on the network stability since it is a citrix'd app. So that might fix it right there, because when the network got extremely stable the refresh worked everytime.

I'll keep the forum posted.
Back to top
View user's profile Send private message Visit poster's website
CodeMorphis



Joined: 02 Dec 2003
Posts: 252

PostPosted: Wed May 11, 2005 10:33 pm    Post subject: Reply with quote

Glad to hear that you are able to make progress controlling your target application.

In 1.1.8 changes were introduced to get around several timing issues with the Windows messaging layer, which has some interesting quirks. Version 1.1.8 employs both .NET and WIN32 API to handle the "Keys" service to try to get as much stability as possible. As you have noticed, there may be some timing issues that remain, depending on what is happening on the machine. This has to do with how Windows is handling input messages. What sometimes happens is that keystrokes sent can be processed before the desired target app is activated even though the activation call was made beforehand. This means that keystroke message can wind up in the input buffers of the wrong applications or can get lost. This is why your technique of pausing before sending input alleviates the problem.

Please keep us posted as to the developments of your project so that we can continue to assist you.
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 Previous  1, 2
Page 2 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