在UITableView的单元格里面怎么获取控件AutoLayout后的宽度

在UITableView的单元格里面怎么获取控件AutoLayout后的宽度,第1张

读书频道 > 系统 > windows > Windows PE权威指南

122 修改EXE文件字节

2013-07-12 08:06:22 我来说两句 收藏 我要投稿

本文所属图书 > Windows PE权威指南

内容全面,详尽地剖析了WindowsPE文件格式的原理及其编程技术,涉及安全领域的各个方面和Windows系统的进程管理和底层机制;实战性强,以案例驱动的方式讲解了WindowsPE文件格式在加密与解密、软件汉化、逆向工程 立即去当当网订购

OD不仅可以让我们对EXE文件进行反汇编和单步执行调试,还可以对目标EXE文件进行修改,后面的许多章节都会涉及这一 *** 作。下面我们对HelloWorldexe文件中的部分字节码进行更改,将显示信息“HelloWorld”更改为“HelloWorld-modifiedbyOD”。这种修改要成功,要求更改后的字符串长度不能超出EXE中数据段的范围。幸运的是,由于链接器在进行链接时是以200h字节对齐段长度,即数据段的长度要大于等于200h字节,所以这次修改一定可以成功。

在③区的“HEX数据”列中的第一个字节位置单击鼠标右键,选择“复制到可执行文件”,d出的内容已不再是内存的数据了,因为窗口中第一列显示的地址明显不是内存地址,而是文件的偏移量,如图1-14所示。

选中足够数量的字节,在选中区域单击鼠标右键,依次选择“二进制”→“编辑”,在d出的对话框的ASCII文本框中输入“HelloWorld-modifiedbyOD”。注意,“保持大小”一项要处在勾选状态。完成后单击“确定”按钮,如图1-15所示。

此时,数据尚未被保存到相应的EXE文件中,再次单击鼠标右键,选择“保存文件”,系统会有一些提示让你选择要保存的文件并提示是否覆盖,均选择确认按钮。至此,EXE文件字节码修改成功。运行HelloWorldexe,会发现提示信息已经被修改。

在这个例子中,我们只是给大家演示如何使用OD更改EXE文件字节码,而真正修改EXE文件字符串常量的方法很复杂,不能用以上方法替代。

如果说OD是一个擅长动态分析的软件,那么W32DASM则是一个擅长静态分析的软件。

后者可以标识整个EXE文件中指令间的调用关系,对于跟踪和识别指令之间的承前启后的关系有很大的帮助,该软件在随书文件中可以找到。

以下是使用W32DASM打开HelloWorldexe后的输出:

反汇编文件:D:\masm32\source\chapter1\HelloWorldexe

CodeOffset=00000400,CodeSize=00000200

DataOffset=00000800,DataSize=00000200

项目数量=0003(dec),Imagebase=00400000h

Object01:textRVA:00001000Offset:00000400Size:00000200Flags:60000020

Object02:rdataRVA:00002000Offset:00000600Size:00000200Flags:40000040

Object03:dataRVA:00003000Offset:00000800Size:00000200Flags:C0000040

+++++++++++++++++++菜单信息++++++++++++++++++

这个程序没有菜单资源

+++++++++++++++++对话框信息++++++++++++++++++

这个程序没有对话框资源

+++++++++++++++++++导入的函数++++++++++++++++++

NumberofImportedModules=2(decimal)

ImportModule001:user32dll

ImportModule002:kernel32dll

+++++++++++++++++++导入模块详细信息+++++++++++++++

ImportModule001:user32dll

Addr:0000205Chint(019D)Name:MessageBoxA

ImportModule002:kernel32dll

Addr:00002076hint(0080)Name:ExitProcess

+++++++++++++++++++导出的函数++++++++++++++++++

NumberofExportedFunctions=0000(decimal)

+++++++++++++++++++汇编代码列表++++++++++++++++++

//启动目标代码text

ProgramEntryPoint=00401000(D:\masm32\source\chapter1\HelloWorldexeFile

Offset:00001600)

//ProgramEntryPoint

:004010006A00push00000000

:004010026A00push00000000

#include <iostream>

#include <typeinfo>

using namespace std;

int main()

{

char a = 0;

auto c = a;

cout << typeid(c)name() << endl;

return 0;

}

使用captureScreen函数。

1、使用captureScreen函数来获取屏幕截图,并将其保存到指定的路径中。

2、如需要更复杂的实名认证,可以使用OCR识别技术,从中提取文字信息,并将其发送到服务器进行验证。

以上就是关于在UITableView的单元格里面怎么获取控件AutoLayout后的宽度全部的内容,包括:在UITableView的单元格里面怎么获取控件AutoLayout后的宽度、在c++中如何通过编译器获取auto对象的具体类型、auto.js如何获取图片并上传实名认证等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10079341.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存