}
private void Form1_Load(object sender, EventArgs e)
{
-
+ foreach (InputLanguage lang in InputLanguage.InstalledInputLanguages)
+ {
+ Debug.WriteLine(lang.Culture.Name + " / " + lang.LayoutName);
+ }
}
private void button1_Click_1(object sender, EventArgs e)
{
public partial class Form9 : Form
{
+ class ImeHelper
+ {
+ [DllImport("user32.dll")]
+ private static extern IntPtr GetKeyboardLayout(uint idThread);
+
+ [DllImport("user32.dll")]
+ private static extern IntPtr LoadKeyboardLayout(string pwszKLID, uint Flags);
+
+ [DllImport("user32.dll")]
+ private static extern int ActivateKeyboardLayout(IntPtr hkl, uint Flags);
+
+ public static void SwitchToEnglish()
+ {
+ // 0x409 = en-US
+ IntPtr hkl = LoadKeyboardLayout("00000409", 1);
+ ActivateKeyboardLayout(hkl, 0);
+ }
+ }
[DllImport("user32.dll")]
th.Start();*/
Application.OpenForms["Form9"].Close();
-
- // 1️⃣ 현재 입력 언어 저장
- InputLanguage originalLanguage = InputLanguage.CurrentInputLanguage;
-
- // 2️⃣ 영어 입력 언어 찾기
- InputLanguage english = InputLanguage.InstalledInputLanguages
- .Cast<InputLanguage>()
- .FirstOrDefault(lang => lang.Culture.Name.StartsWith("en"));
-
string phone = textBox1.Text;
MouseEvent1 me = new MouseEvent1();
me.ctclick();
// 키보드 입력처럼 전송
Thread.Sleep(2000);
- InputLanguage.CurrentInputLanguage = english;
+ ImeHelper.SwitchToEnglish();
SendKeys.SendWait("a' or ct_code='" + phone + "' or 1 like 'a");
- InputLanguage.CurrentInputLanguage = originalLanguage;
+ SendKeys.SendWait("{HANGUL}"); // 한/영 키
Thread.Sleep(1000);
SendKeys.SendWait("{ENTER}");
Thread.Sleep(1000);