8、 编写ControlPC函数,用于处理接收到的指令并控制电脑,主要是为了实现手机控制而写。
void CPhoneServerDlg::ControlPC(CString AndroidControl)
{
if (AndroidControl == "mop") //打开播放器
{
ShellExecute(NULL, _T("open"), _T("C:\\Program Files (x86)\\KuGou\\KGMusic\\KuGou.exe"), NULL, NULL, SW_SHOWNORMAL);
}
else if (AndroidControl == "mcl") //关闭播放器
{
DWORD id_num;
HWND hWnd = ::FindWindow(_T("kugou_ui"), NULL);
GetWindowThreadProcessId(hWnd, &id_num);
//注意:第二个参数是进程的ID,返回值是线程的ID。
HANDLE hd = OpenProcess(PROCESS_ALL_ACCESS, FALSE, id_num);
TerminateProcess(hd, 0);
}
else if (AndroidControl == "mpl" || AndroidControl == "mpa") //播放/暂停
{
keybd_event(VK_LMENU, 0, 0, 0);
keybd_event(VK_F5, 0, 0, 0);
keybd_event(VK_F5, 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_LMENU, 0, KEYEVENTF_KEYUP, 0);
}
}
说明:控制功能可以自己随意添加,这里只以音乐播放为例进行说明,ShellExecute函数用于调用其他应用程序,关闭进程比较麻烦一点,这里先获取应用程序窗口的ID,通过OpenProcess和TerminateProcess终止进程。