通过程序启动QQ,实现自动登录.

解决方案:

1、CreateProcess创建进程
2、找到QQ窗口
3、设置鼠标位置至账号编辑框,点击聚焦
4、模拟键盘输入账号
5、设置鼠标位置至密码编辑框,点击聚焦
6、模拟键盘输入密码
7、设置鼠标位置至密码编辑框,点击聚焦
8、模拟鼠标单击登录

这里从简,QQ打开以后,账号密码都记住了,所以免去了步骤3到步骤6。
其中,模拟鼠标的函数时mouse_event。模拟键盘的函数是keybd_event,自己百度一下就可以了。

示例代码

#include <windows.h>
#include <TCHAR.h>
//隐藏控制台
#pragma   comment(linker,"/subsystem:\"windows\"  /entry:\"mainCRTStartup\"")

int main()
{
	STARTUPINFO si = { 0 };
	PROCESS_INFORMATION pi;

	si.cb = sizeof(si);
	BOOL res = CreateProcess(
		TEXT("D:\\Program Files (x86)\\Tecent\\Tecent QQ\\Bin\\QQ.exe"),
		NULL,
		NULL,
		NULL,
		FALSE,
		CREATE_NEW_CONSOLE,
		NULL,
		NULL, &si, &pi);
	TCHAR szTitle[MAX_PATH] = { 0 };
	HWND hwnd = FindWindow(TEXT("TXGuiFoundation"), TEXT("QQ"));
	BOOL bOpened = FALSE;
	DWORD i = 0;
	for (i = 0; i < 100; i++)
	{
		if (hwnd != NULL)
		{
			bOpened = TRUE;
			RECT r;
			GetWindowRect(hwnd, &r);

			//鼠标聚焦到输入密码编辑框
// 			::SetCursorPos(r.left + 170, r.top + 295);
// 			mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); //点下左键
// 			mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);   //松开左键
// 			keybd_event(97, 0, 0, 0);
// 			keybd_event(97, 0, KEYEVENTF_KEYUP, 0);
// 			Sleep(50);

			SetCursorPos(r.left + 170, r.top + 350);

			//鼠标聚焦以后停3s等待QQ窗口弹出在点击登录按钮
			Sleep(3000); 
			mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); //点下左键
			mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);   //松开左键
			
			break;
		}
		else
		{
			hwnd = FindWindow(TEXT("TXGuiFoundation"), TEXT("QQ"));
			Sleep(5);
		}
	}	
	return 0;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在Ubuntu上配置开机自启动程序实现自动打开终端,可以按照以下步骤进行操作: 1. 打开终端,输入命令`gnome-session-properties`,这将打开一个窗口,允许你配置登录启动的应用程序。\[1\] 2. 在打开的窗口中,点击"添加"按钮,然后填写应用程序的名称和命令。对于自动打开终端,你可以使用以下命令: `gnome-terminal -- bash -c "你要执行的命令;exec bash"`\[3\] 这个命令将打开一个终端并执行你指定的命令。 3. 点击"添加"按钮后,你的应用程序将被添加到启动应用程序列表中。 4. 重启你的计算机,配置的开机自启动程序将在登录自动启动。 请注意,你需要将"你要执行的命令"替换为你实际想要在终端中执行的命令。这样,当你登录时,终端将自动打开并执行该命令。 #### 引用[.reference_title] - *1* [Ubuntu设置开机自启动](https://blog.csdn.net/szylight2022/article/details/127450409)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [UBUNTU 18.04开机自启动脚本实现--打开终端、执行命令及终端输入文字](https://blog.csdn.net/qq_37924079/article/details/120752314)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

shlyyy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值