社区
工具平台和程序库
帖子详情
能不能让一个程序去修改它自身?
caohoujie
2003-12-16 04:51:43
能不能让一个程序去修改它自身?
例如
void main()
{
int i = 0;//第一次执行
//修改i的值(i=i+1),覆盖原来的程序
……;
}
...全文
118
11
打赏
收藏
能不能让一个程序去修改它自身?
能不能让一个程序去修改它自身? 例如 void main() { int i = 0;//第一次执行 //修改i的值(i=i+1),覆盖原来的程序 ……; }
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dft2000
2003-12-19
打赏
举报
回复
我以前看过一个 代码 但是记不清楚了 ,是一本什么nt技术内幕之类的书 ,一位高手给了一个 程序删除自身的例子,这好象和程序的出栈顺序有关,好象是把某个api 给xx掉 然后就可以对自己操作了。但是程序退出的时候会出问题!
cgsw12345
2003-12-19
打赏
举报
回复
修改之後是不是要編譯再運行!
caohoujie
2003-12-18
打赏
举报
回复
楼上的大哥能给个例子吗
等ing
lordor
2003-12-18
打赏
举报
回复
理论上完全可以的,这种技术叫SMC(代码自修改)
vagerent
2003-12-18
打赏
举报
回复
可以做个ini文件,从中读取阿。其他的方法不清楚。期待...
abitz
2003-12-18
打赏
举报
回复
病毒?
cutestar
2003-12-16
打赏
举报
回复
如果你了解汇编语言,就好办多了,先要知道i=0;这个语句的地址,在该程序启动后,创建一个该程序的副本,比如:a.exe,先拷贝自己成a .exe(注意有个空格),执行a .exe,则a.exe执行完毕,通过a .exe来修改a.exe事先知道的地址为你要的值。然后在执行a.exe,删除a .exe文件。在修改地址的时候,应该修改两个地方,一个是你要修改的i值,另一个是判断是否是执行拷贝自己还是正常执行的变量。
abitz
2003-12-16
打赏
举报
回复
有点象static int i=0; 的用法。
渔夫4797
2003-12-16
打赏
举报
回复
what are you doing?
lyr311
2003-12-16
打赏
举报
回复
好像有程序自杀一说,源程序原来见过,好像在那个什么200例(C的),记不清了。
skywarship
2003-12-16
打赏
举报
回复
比如你把源程序存为test.c,那么用fopen打开该文件,修改之
呵呵,开个玩笑,如果想修改程序自身,就意味着要在运行过程中修改代码段的内容,这在没有一定的权限的情况下是不被系统所允许的
如何确保
一个
集合
不能
被
修改
如果需要不可
修改
且线程安全的集合,推荐使用。
【JAVA】怎么确保
一个
集合
不能
被
修改
在本文中,我们探讨了在Java中确保集合不被
修改
的方法。通过使用方法,我们可以轻松地创建不可
修改
的集合视图,从而防止意外或不合法的
修改
操作。这种做法有助于提高代码的可靠性和可维护性,尤其在多线程环境或需要数据一致性的场景下更为重要。通过理解和应用这些技术,我们能够更好地设计出健壮而可靠的Java应用
程序
。
Qt
程序
打包成
一个
单独exe的方法,并
修改
exe图标
Qt
程序
打包成
一个
单独exe的方法,并
修改
exe图标 Qt
程序
发布及打包,同时
修改
可执行文件的图标。本教程使用Qt自带的 windeployqt 工具外加Enigma Virtual Box打包工具。首先需要知道的是,Qt
程序
发布需要的
程序
是用 Release 方式编译的。下面看一下具体的操作。 改变exe的图标 1、下载
一个
.ico格式的图标(如:exe_ico.ico),将exe_...
VMWARE去虚拟化
浏览到第一次安装的VM TOOLS,C:\back\VMware\VMware Tools\VMware\Drivers\video_wddm\vm3d。打开vmware目录,找到x64文件夹下的vmware-vmx.exe。备份好vmware-vmx.exe。往下面找:05 04 这是显卡ID 需要反着
修改
(显卡型号标识,看显卡ID大全.txt)3.替换后用winHex.exe打开
修改
后的 vmware-vmx.exe。1.使用 “资源编辑器.exe”打开vmware-vmx.exe。
怎么确保
一个
集合
不能
被
修改
怎么确保
一个
集合
不能
被
修改
我们很容易想到用final关键字进行修饰,我们都知道 final关键字可以修饰类,方法,成员变量,final修饰的类
不能
被继承,final修饰的方法
不能
被重写,final修饰的成员变量必须初始化值,如果这个成员变量是基本数据类型,表示这个变量的值是不可改变的,如果说这个成员变量是引用类型,则表示这个引用的地址值是
不能
改变的,但是这个引用所指向的对象里面...
工具平台和程序库
24,851
社区成员
27,330
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章