protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { if (!base.ProcessCmdKey(ref msg, keyData)) { if (keyData.Equals(Keys.Enter)) // 엔터키 눌렀을때 처리 { //Console.WriteLine(chat_tBox.Text); if (ts.SaveAudio(chat_tBox.Text, "chat.mp3") == false) { return(true); } ts.PlayMessage("chat.mp3"); chat_tBox.Text = ""; this.Close(); return(true); } else { return(false); } } else { return(true); } }
public static IntPtr hookProc(int code, IntPtr wParam, IntPtr lParam) { Console.WriteLine(code + " " + wParam + " " + Marshal.ReadInt32(lParam)); if (code > 0 && wParam == (IntPtr)WM_KEYDOWN && KeyDown == false) { vkCode = Marshal.ReadInt32(lParam); if (vkCode.ToString() == "162") // ctrl { KeyDown = true; } return(CallNextHookEx(hhook, code, (int)wParam, lParam)); } else if (code >= 0 && wParam == (IntPtr)WM_KEYUP) { vkCode = Marshal.ReadInt32(lParam); if (vkCode.ToString() == "162") // ctrl { KeyDown = false; } return(CallNextHookEx(hhook, code, (int)wParam, lParam)); } else if (code >= 0 && wParam == (IntPtr)WM_KEYDOWN) { vkCode = Marshal.ReadInt32(lParam); if (vkCode.ToString() == "222") // ' 누를시 채팅창 띄움 { try { chatForm.ShowDialog(); } catch (InvalidOperationException) { } } return(CallNextHookEx(hhook, code, (int)wParam, lParam)); } else if (code >= 0 && wParam == (IntPtr)WM_ALTDOWN) { vkCode = Marshal.ReadInt32(lParam); if (vkCode.ToString() == "49") // 1번 누름 { ts.PlayMessage("macro0.mp3"); } else if (vkCode.ToString() == "50") // 2번 누름 { ts.PlayMessage("macro1.mp3"); } else if (vkCode.ToString() == "51") // 3번 누름 { ts.PlayMessage("macro2.mp3"); } else if (vkCode.ToString() == "52") // 4번 누름 { ts.PlayMessage("macro3.mp3"); } return(CallNextHookEx(hhook, code, (int)wParam, lParam)); } else { return(CallNextHookEx(hhook, code, (int)wParam, lParam)); } }