基于XE开发的安卓Frame源代码,合适初学者学习入门
2023/1/16 9:16:24 995KB 安卓 初学 FRAME XE
1
frame-lang.github.io:次要网站
2018/3/21 2:53:35 437KB HTML
1
java图形化界面开发也可以做到更改主题,非常方便的进行swing界面美化,只需求你在frame中添加几行代码即可实现可定制主题的功能
2018/6/13 13:58:08 1.4MB java swing 界面美化
1
由于要做码流处理,最近把功能强大开源的wireshark当成了“捷径”,想从其中摘取解析引擎部分。
这就开始了全部源码的编译、分析过程。
大概用了两周,基本捋清了它的运行机制。
但到摘取代码的时候发现,难度好大,源文件众多,条件编译众多,依赖库众多。


现将2周分析源码的“成果”贴出来(更多的是想与同样分析wireshark的网友一起探讨,经验分享),有不恰当及错误的地方,欢迎各位大神指正,如果能协助到其他人则是更好,现以流程图方式展现。
注意:此流程图是在指定抓取固定包数的模式下进行的(因为其源码条件抓包分为文件及包数的方式)。
命令格式如:./tshark-c200并且,流程图中未详尽列出从Frame到应用层协议(HTTP)解析的层层调用关系,这一步可以在相关应用层协议的解析器函数打上断点(例如HTTP:bdissect_tcp_http),gdb模式下直接bt,看栈信息即可。
2015/9/27 10:20:53 92KB wireshark
1
模仿数据链路层的gobackn协议/*该协议是搭载ack的回退n步协议*/#include#include"protocol.h"#definemax_seq7#defineflag126#defineESC100#definewait_time2700 //发送计时器等待的时间#defineack_wait_time280staticintphl_ready=0;unsignedcharbuf[max_seq+1][270];unsignedcharack[8];//发送空的ack帧unsignedcharin_buf[600],last_buf[520];//接收时的缓冲区;去掉冗余之后的缓冲区,为防备因误码两帧合并为一帧而定义了很大一个数组intnbuffered=0;//发送的帧数intbuf_size[max_seq+1];//记下以发送各帧的帧长intnext_frame_to_send=0;intframe_in_phl=0;//用于成帧intframe_expected=0;intack_expected=0;intbetween(inta,intb,intc){ if(((a<=b)&&(b<c))||((c<a)&&(a<=b))||((b<c)&&(c<a))) return1; elsereturn0;}//判断帧尾,防止出现误判escescflag为数据的情况intend_flag(intin_len){ intcount=0; inti; if(in_len=0;i--)//记录flag前的esc数目 count++; returncount%2;//若flag前的esc为偶数,则为帧尾}//成帧函数--数据帧voidsend_frame(char*my_buf,intlen){ intn; buf[frame_in_phl][0]=(frame_expected+max_seq)%(max_seq+1); //ack buf[frame_in_phl][1]=frame_in_phl; //发送帧的帧号 for(n=0;n<len;n++) buf[frame_in_phl][n+2]=my_buf[n]; //将处理过的新帧赋值到缓冲区中 len=len+2; *(unsignedint*)(buf[frame_in_phl]+len)=crc32(buf[frame_in_phl],len); //在原始帧的基础上加检验和 buf_size[frame_in_phl]=len+4; //记录当前帧的长度,包括3个帧头,4个检验和 nbuffered=nbuffered+1; //缓冲区占用数加一 frame_in_phl=(frame_in_phl+1)%(max_seq+1);}//成帧函数--ack帧voidsend_ack() //ack帧的处理{ ack[0]=(frame_expected+max_seq)%(max_seq+1); ack[1]=max_seq+10; //ack帧的序号位,使ack[1]==frame_expected恒不成立 *(unsignedint*)(ack+2)=crc32(ack,2); //在原始帧的基础上加检验和}//主函数intmain(intargc,char**argv){intevent,arg,n,m,i,j,len=0,in_len=0; unsignedcharmy_buf[260]; intphl_wait=0;//在物理层中还没有被发送的帧protocol_init(argc,argv);enable_network_layer();for(;;){event=wait_for_event(&arg);switch(event){caseNETWORK_LAYER_READY:
2019/7/26 21:18:43 425KB go back n gobackn
1
多个iframe,显示其中一个frame中的div,并处于最上层显示并且页面中的填写的值,可以传到弹出的div页面中最近一段工夫在做这个东西,给大家分享一下附带测试代码js弹出div层
1
XZMTabbarExtensiontabBar工具条框架(顺应各种APP风格,集成只需几行代码,没有转换度)##动态工具条/**创建自定义tabbar*/XZMTabbarExtension*tabBar=[[XZMTabbarExtensionalloc]init];tabBar.backgroundColor=[UIColorwhiteColor];tabBar.frame=self.tabBar.bounds;/**传递模型数组*/tabBar.items=self.itemArray;[tabBarxzm_setShadeItemBackgroundColor:[UIColorcyanColor]];/**设置代理*/tabBar.delegate=self;[self.tabBarad
2019/9/19 6:32:53 549KB Objective-C
1
实现了一个软件零碎的完整开发,结合了java的swing框架,运用frame,parnel等组件
2019/7/5 8:33:06 2.42MB 源代码 swing框架 完整界面
1
本程序使用SqlServer数据库开发,导入项目以后需要再对数据库进行配置,详细配置方式请见光盘使用说明,配置完数据库运转项目启动文件src/com/zzk/frame/LoginFrame.java就可以运转程序了。
2019/2/6 20:13:19 1.49MB Java项目
1
燕十八bool商城完好代码,开发流程图,ecshop二次开发,使用frame开发
2017/4/11 3:56:06 1.52MB 布尔商城源码
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡