Sending non-Latin characters using SendKeys

Class library usage, coding and language questions.
andylee
Posts: 4
Joined: Tue Aug 19, 2008 1:42 pm

Sending non-Latin characters using SendKeys

Post by andylee » Tue Aug 19, 2008 1:50 pm

Hi,

I have performed the following test using non-Latin characters but I'm not getting the correct characters to appear correctly in the edit box for Notepad

string text = "воздушной";
Ranorex.Form notepad =
Ranorex.Application.StartWindowsApplication("C:\\Windows\\system32\\notepad.exe", "");
Ranorex.Application.Sleep(1000);
Ranorex.Control editBox = notepad.FindClassName("Edit");
editBox.SendKeys(text);

Sending "воздушной" results in "?????????" being received.

Is there a workaround if Unicode support is not available?

Cheers,
Andy

User avatar
Support Team
Site Admin
Site Admin
Posts: 11709
Joined: Fri Jul 07, 2006 4:30 pm
Location: Graz, Austria

Post by Support Team » Fri Aug 22, 2008 4:19 pm

The easiest workaround is using the System.Windows.Forms.SendKeys.SendWait(string) method instead of the Ranorex.Control.SendKeys method. You just need to assure that the notepad application is activated and the editBox is focused:

Code: Select all

// old code
//editBox.SendKeys(text);

// new code
editBox.Focus();
System.Windows.Forms.SendKeys.SendWait(text);
Regards,
Alex
Ranorex Support Team

andylee
Posts: 4
Joined: Tue Aug 19, 2008 1:42 pm

Thanks!

Post by andylee » Tue Aug 26, 2008 11:56 am

Thank you very much.
Works very well!!

Cheer,
Andy