• 大小: 45.47MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-30
  • 语言: Java
  • 标签: ADB  Vistual  Studio  2015  

资源简介

使用Vistual Studio 2015开发工具,通过ADB和Android设备通讯来控制android设备。安装、上传、下载、控制wifi等操作android设备。类似豌豆荚的PC工具。

资源截图

代码片段和文件信息

// ADB.cpp : 实现文件
//

#include “stdafx.h“
#include “ADBTool.h“
#include “ADB.h“
#include “shlwapi.h“

// ADB

IMPLEMENT_DYNAMIC(ADB CWnd)

ADB::ADB()
{
}

ADB::~ADB()
{
}


BEGIN_MESSAGE_MAP(ADB CWnd)
END_MESSAGE_MAP()

int ADB::SetTimeout(int nTimeout)
{
CString str;
str.Format(L“Set Timeout: %d(ms)“ nTimeout);
exeCmdTimeout = nTimeout;
return 0;
}

int ADB::GetVersion(char *version)
{
strcpy(version VERSION);
return 0;
}

int ADB::CheckExecResult(char *chResult)
{
//DeleteFile(EXECLOG);
char temp[1024] = {0};
int nRes = EXECLOG_NO_EXIST;
CFile mfile;
int nStartTime = GetTickCount();
bool oFlag = false;
int length = 0;
while(GetTickCount() - nStartTime < exeCmdTimeout)
{
oFlag = mfile.Open(EXECLOG CFile::modeRead);
if(oFlag)
{
nRes = 0;
break;
}
nRes = RET_TIMEOUT;
}
if(oFlag)
{
length = mfile.GetLength();
if (length <= 0)
{
return nRes;
}
else if(length > 1024)
{
mfile.SeekToBegin();
mfile.Seek(-1024 CFile::end);
}
mfile.Read(temp length > 1024 ? 1024 : length);
mfile.Close();
strcpy(chResult temp);
}
return nRes;
}


int ADB::ConnectToDevice(int nConnectTimeout int nExeCmdTimeout)
{
int RetCode = ERROR_CONNECT_DEVICE;
/*BOOL Res = PathFileExists(DEBUGLOG);
if(Res)
{
Res = dFile.Open(DEBUGLOG CFile::modeNoTruncate|CFile::modeReadWrite);
dFile.SeekToEnd();
dFile.Flush();
dFile.WriteString(L“\r\n“);
dFile.WriteString(L“**********************************************************“);
dFile.WriteString(L“\r\n“);
dFile.Close();
}
else
{
Res = dFile.Open(DEBUGLOG CFile::modeCreate|CFile::modeReadWrite);
dFile.Close();
}
if(!Res)
{
AfxMessageBox(L“Create Debug File Fail Test Terminated!“);
return RetCode;
}*/

exeCmdTimeout = nExeCmdTimeout;
int nStartTime = GetTickCount();
CFile myfile;
while(GetTickCount() - nStartTime < nConnectTimeout)
{
DeleteFile(EXECLOG);
WinExec(“cmd.exe /c adb devices >adb.txt 2>&1“ SW_HIDE);
char temp[1024] = {0};
CheckExecResult(temp);
if(CString(temp).Find(L“device“)>0)
{
int nPos = CString(temp).Find(L“device“);
if(CString(temp).Find(L“device“ nPos+1)>0)
{
RetCode = 0;
break;
}
}
Sleep(1000);
}
return RetCode;
}

int ADB::PushFile(char *localPath char *remotePath char *chResult)
{
int RetCode = ERROR_PUSH_FILE;
int nStartTime = GetTickCount();
char cmd[512] = {0};
sprintf(cmd “cmd.exe /c adb push %s %s >adb.txt 2>&1“ localPath remotePath);
CFile myfile;
char temp[1024] = {0};
while(GetTickCount() - nStartTime < exeCmdTimeout)
{
RetCode = ERROR_PUSH_FILE;
int res = ConnectToDevice(5000 exeCmdTimeout);
if(res)
{
RetCode = res;
sprintf(chResult CONNECT_FAIL);
return RetCode;
}
memset(chResult 0 256);
DeleteFile(EXECLOG);
WinExec(cmdSW_HIDE);
RetCode = CheckExecResult(temp);
if(CString(

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-12-06 15:31  ADBTool\
     文件         384  2017-08-02 14:39  ADBTool\.gitignore
     目录           0  2017-12-06 15:09  ADBTool\.vs\
     目录           0  2017-12-06 15:09  ADBTool\.vs\ADBTool\
     目录           0  2017-12-06 15:09  ADBTool\.vs\ADBTool\v14\
     文件      296448  2017-12-06 15:31  ADBTool\.vs\ADBTool\v14\.suo
     目录           0  2017-12-06 15:31  ADBTool\ADBTool\
     文件        1581  2017-07-11 15:53  ADBTool\ADBTool.sln
     文件      209920  2017-08-10 15:00  ADBTool\ADBTool.suo
     文件       18297  2017-08-18 16:44  ADBTool\ADBTool\ADB.cpp
     文件        2251  2017-08-18 16:38  ADBTool\ADBTool\ADB.h
     文件          24  2017-12-06 15:31  ADBTool\ADBTool\adb.txt
     文件        9103  2017-08-18 17:27  ADBTool\ADBTool\ADBProcessThread.cpp
     文件         954  2017-08-18 17:26  ADBTool\ADBTool\ADBProcessThread.h
     文件       15488  2016-09-21 11:44  ADBTool\ADBTool\ADBReportDlg.cpp
     文件        1551  2016-09-22 10:35  ADBTool\ADBTool\ADBReportDlg.h
     文件       91340  2017-12-06 15:26  ADBTool\ADBTool\ADBTool.aps
     文件        2413  2016-09-09 11:22  ADBTool\ADBTool\ADBTool.cpp
     文件         563  2016-09-09 14:21  ADBTool\ADBTool\ADBTool.h
     文件       25233  2017-12-06 15:26  ADBTool\ADBTool\ADBTool.rc
     文件        5736  2013-03-08 14:29  ADBTool\ADBTool\ADBTool.vcproj
     文件        1418  2013-03-27 17:22  ADBTool\ADBTool\ADBTool.vcproj.QUANTACN.A1020075.user
     文件       12442  2017-08-18 16:53  ADBTool\ADBTool\ADBTool.vcxproj
     文件        9788  2017-08-18 16:53  ADBTool\ADBTool\ADBTool.vcxproj.filters
     文件         143  2013-04-18 20:21  ADBTool\ADBTool\ADBTool.vcxproj.user
     文件       68121  2017-11-30 16:15  ADBTool\ADBTool\ADBToolDlg.cpp
     文件        5112  2017-08-22 14:32  ADBTool\ADBTool\ADBToolDlg.h
     文件       97792  2016-08-04 16:20  ADBTool\ADBTool\AdbWinApi.dll
     文件       62976  2016-08-04 16:20  ADBTool\ADBTool\AdbWinUsbApi.dll
     文件          32  2013-03-11 10:54  ADBTool\ADBTool\ADB_Config.ini
     文件     3267634  2017-08-18 16:11  ADBTool\ADBTool\adb_debug.log
............此处省略177个文件信息

评论

共有 条评论