Mac读取Andriod屏幕截图
2024-10-21 03:29:55
int main(int argc, const char * argv[]) {
// insert code here... string str3 = "/Users/Ethan/Downloads/aaa/platform-tools/adb shell screencap -p";
NSMutableData *resultData=[[NSMutableData alloc] init];
FILE * fstream = NULL; if(NULL==(fstream=popen(str3.c_str(),"r")))
{
fprintf(stderr,"execute command failed: %s",strerror(errno));
return NULL;
} FILE *png = fopen("/var/folders/_g/mmsygkld2sv2pl719654cscm0000gn/T/2.png", "w"); char tmp[]; //存储每一行输出
size_t all=;
size_t readNum=fread(tmp,, sizeof(tmp)-, fstream); while (readNum!=)
{ if (tmp[readNum-] == 0xd)
{
tmp[readNum++] = fgetc(fstream);
} for (unsigned int i = ; i < readNum; ++i) {
if (tmp[i] == 0xd && tmp[i+] == 0xa ) {
tmp[i] = 0xa;
for (unsigned int j = i+; j < readNum - ; ++j)
tmp[j] = tmp[j+];
readNum--;
}
}
all=all+readNum; //写到文件
fwrite(tmp, , readNum, png);
//直接放到内存
[resultData appendBytes:tmp length:readNum]; readNum=fread(tmp,, sizeof(tmp)-, fstream);
} NSImage *img=[[NSImage alloc] initWithData:resultData]; NSLog(@"%f",img.size.width); return ;
}
最新文章
- Linux下实现秒级的crontab定时任务
- FLEX监视浏览器关闭事件
- oracle数据库安装
- eclipse如何导入项目
- 四层负载均衡——LVS
- poj2780Linearity(多点共线)
- 感知机-Python实现
- SVN(一次检出&;二次检出)
- Vue中应用CORS实现AJAX跨域,及它在 form data 和 request payload 的小坑处理
- Centos系统下Lamp环境的快速搭建(超详细)
- Linux基础命令2
- ELK原理与介绍
- python学习 day016打卡 面向对象--成员
- git 撤销本地修改
- 用Eclipse编写Android程序的代码提示功能
- BZOJ3530:[SDOI2014]数数(AC自动机,数位DP)
- PAT 甲级 1154 Vertex Coloring
- SQL命令查看Mysql数据库大小
- unity, OnTriggerEnter2D不触发
- “SYSTEM.DATA.SQLCLIENT.SQLCONNECTION”的类型初始值设定项引发异常---解决方案
热门文章
- linux 查看目录所在的分区
- 公众号第三方平台开发 获取 component_verify_ticket 2015-07-05 10:16 59人阅读 评论(0) 收藏
- Spring MVC初次相见
- [原创]Centos7 从零整合LNMP一体包
- UVA 12300 Smallest Regular Polygon(正多边形)
- Qt中暂停线程的执行
- C# 单例模式
- 《UML大战需求分析》阅读随笔(一)
- 基于dubbo构建分布式项目与服务模块
- HDU5937 Equation(DFS + 剪枝)