登录 立即注册
查看: 13016|回复: 0

[源码分享] C++调用ADB问题

[复制链接]

1

主题

4

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2019-1-6 00:30:23 | 显示全部楼层 |阅读模式
我使用匿名管道连接ADB却不知道有没有执行成功。
有么有人可以帮我看一下。

//这一段是连接的代码
        WCHAR szSysDir[1024];
        CString szCommand;

        // 取得系统目录
        GetSystemDirectory(szSysDir, sizeof(szSysDir));

        // 格式化命令行参数
        szCommand.Format(L"D:\\adb\\adb.exe connect 127.0.0.1:21503", szSysDir);

        SECURITY_ATTRIBUTES saAttr;
        saAttr.nLength = sizeof(SECURITY_ATTRIBUTES);
        saAttr.bInheritHandle = TRUE;
        saAttr.lpSecurityDescriptor = NULL;

        //创建管道,用于重定向ping程序的输出信息
        if (!CreatePipe(&hRead, &hWrite, &saAttr, 0))
        {
                return 0;
        }

        //设置创建子进程的参数
        PROCESS_INFORMATION pi;
        STARTUPINFO si = { sizeof(STARTUPINFO) };
        si.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW;//Startf_UseStdHandles | StartF_UseShowWindow
        si.hStdOutput = hWrite;
        si.hStdError = hWrite;
        si.wShowWindow = SW_HIDE;

        //创建子进程
        LPWSTR lpCommand = szCommand.GetBuffer(szCommand.GetLength());
        if (CreateProcess(NULL, lpCommand, NULL, NULL, TRUE, 0, NULL, szSysDir, &si, &pi))
        {
               
                //从管道中读取数据
                DWORD dwTotalBytes = 0;
                DWORD dwReadBytes;
                char pBuf[1024] = { 0 };
                wchar_t* pTemp;

                memset(pBuf, 0, sizeof(pBuf));
                ReadFile(hRead, pBuf, sizeof(pBuf) - 1, &dwReadBytes, NULL);
                pTemp = char2wchar(pBuf);
                Edit_ReplaceSel(hMsg, pTemp);
        }



//这一段是执行shell命令的代码
        DWORD dwWrite = 0;

        wchar_t commond[] = _T("D:\\adb\\adb.exe shell input tap 200 100");
        bool bSuccess;
        bSuccess = WriteFile(hWrite, commond, sizeof(commond), &dwWrite, NULL);



连接是成功的,但是执行shell命令没有反应。如果有会的人可以教我下吗?谢谢。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|模拟器|手机模拟器|手游模拟器|安卓模拟器|( 沪ICP备14046591号 )

GMT+8, 2024-11-24 11:47 , Processed in 0.027289 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表