精华内容
下载资源
问答
  • 软件添加代码

    万次阅读 2020-06-11 16:35:45
    代码节空白区域添加代码 1. 根据SizeOfRawData - VirtualAddress的值来判断剩余空间是否足以添加代码 2. 根据SizeOfRawData + PointerToRawData来到空余部分 3. 将汇编指令转为硬编码:此处添加的代码是...

    一. 代码节空白区域添加代码

    1. 根据SizeOfRawData - VirtualAddress的值来判断剩余空间是否足以添加代码

    2. 根据SizeOfRawData + PointerToRawData来到空余部分

    3. 将汇编指令转为硬编码:此处添加的代码是MessageBox,可以通过OD(走下角命令 bp MessageBoxA)来查看MessageBox的地址。

    6a 00 6a 00 6a 00 6a 00 e8 00 00 00 00 e9 00 00 00 00

    push 6a
    call   e8
    jmp  e9

    目标地址 = 下一行地址(运行时的地址) + 硬编码(命令后的地址)

    call :761a1060 - (01caad + 400000) = 75D8 45B3
    000193BE + 400000 = 4193be 目标地址 (EIP地址 + ImageBase)
    41cab2 下一行地址
    jmp :FFFF C90C‬ 硬编码

    4. 改EIP

    此时不用加上ImageBase

     

    二. 任意节空白区添加代码

    注意:在DOS后面是不可以直接作为程序入口添加硬编码的。

    其他内容基本同上。

     

    三. 增加节

    需要修改的数据

    1. 添加一个新的节(可以copy一份)

    2. 在新增节后面 填充一个节大小的000

    3. 修改PE头中节的数量

    4. 修改sizeOfImage的大小

    5. 再原有数据的最后,新增一个节的数据(内存对齐的整数倍).

    6. 修正新增节表的属性

     

    如果在最后一个节表以及40字节的空白区域之后不足以有四十个字节的空间(等长的0结构)添加一个节表,那么可以考虑将标准PE头到节表移动到DOS头结束的位置,即40H。注意复制粘贴的时候需要选中相同的行数。之后将节表末尾的数据清零即可。

     

    四. 扩大节

    如果SizeOfHeaders的空间不足以添加一个节表,那么就可以选择扩大最后一个节。
     

    1. 修改SizeOfImage :SizeOfImage += Ex    
        
    2. 将最后一个节的SizeOfRawData和VirtualSize改成N    
        
        SizeOfRawData = VirtualSize = N    
        
        N = (SizeOfRawData或者VirtualSize 内存对齐后的值) + Ex    

     

    五. 合并节

    合并节可以节省几个节表的空间,从而可以在剩余的位置添加新节表。

    1. VirtualAddress和PointerToRawData两个起点位置不用修改。

    2. SizeOfRawData = VirtualSize = SizeOfImage - VirtualAddress 或 (最后一个节的VirtualAddress + SizeOfRawData、VirtualSize中较大的那一个)。

    3. 将第一个节的属性改为包含所有节的属性

    4. 修改节的数量为1 :NumOfSection = 1

     

    展开全文
  • 让你在游戏战无不胜,攻无不克(也可以有其他用途)。江湖行 (GamePaladin).搜索速度极快我的收藏夹 提供快速装载游戏的方式 内存修改 内存数值高阶和低阶的搜索以及编辑 存档编辑 存档文件的数值高阶和低阶的搜索...
  • 写出来的程序默认只能被管理员权限调用该怎么办?怎么在代码里解决兼容性?不是在电脑上更改设置 windows系统
  • 更改jar包代码

    万次阅读 2017-08-24 20:10:53
    1、将class文件改成java文件(如果你的jar包中是包含源代码的,即包含java文件,请跳过此步) 先将jar包通过winrar或者快压等解压缩软件将jar包解压缩,再通过一些专门的Java反编译工具将class文件转换为java文件...

    1、将class文件改成java文件(如果你的jar包中是包含源代码的,即包含java文件,请跳过此步)

    先将jar包通过winrar或者快压等解压缩软件将jar包解压缩,再通过一些专门的Java反编译工具将class文件转换为java文件(本博主是使用的是JD-GUI这个软件)。

    2、更改java源文件

    将java文件放入自己专门的开发工具中(eclipse、myeclipse等),需要注意的是,应该是将需要改动的java文件放入java project中,并且要创建对应的package,再将原本的jar导入,此时可能还报错,需要导入一些相应的jar包。当项目不报错之后,就可以做你所需要的修改了。

    3、导出jar包

    将现在的java project导出为jar包,然后将原本jar包中相应的class文件替换掉(如果是jar包中含有java源文件,也需要将java文件也需要替换)。


    至此,jar包修改成功。大家如果有什么问题,可以直接问我或者在下方留言,本人qq:924325679。

    展开全文
  • 修改软件是任何一个开发人员所面对的问题,软件是否容易修改,被修改后的软件是否变得更好,是每一个开发人员都知道必须关注但是在实际开发过程中却往往忽视的问题。有多少人在接手一个新项目时抱怨新项目的遗留代码...

    一、修改软件的起因及其本质。

    修改软件是任何一个开发人员所面对的问题,软件是否容易修改,被修改后的软件是否变得更好,是每一个开发人员都知道必须关注但是在实际开发过程中却往往忽视的问题。有多少人在接手一个新项目时抱怨新项目的遗留代码质量太低?又有多少人愿意或者说有能力去将一个让人崩溃的代码逐步改善?

    我在去年,将我所在上一家公司的业务处理程序进行的全面的重写,以达到我想要的容易阅读、容易修改的目的。但是假如面对着一份只能考虑修改,不能考虑重写的,但是混乱不堪的代码,如果将其逐步改善,这是我在刚进入的公司所面对的问题。这也是我准备在未来一段时间里,细致的研究《修改代码的艺术》这本书的目的所在:我希望能够将一个已经非常庞大而且混乱不堪的项目从现状中摆脱出来,让为这个程序做开发的人员对开发感到安心,而不是担忧。

    这里从书中列出的软件修改的四个主要起因开始:

    1. 添加新特性。
    2. 修正bug。
    3. 改善设计。
    4. 优化资源使用。

    添加新特性和修正bug的含义不难理解,但是有时候因为对需求的理解不同,表面上看上去是修正bug的行为实际对于开发人员来说确实添加一个新特性。关于这一点,这里把这样一种行为划分到添加新特性的范围中,而不认为是修正bug。

    改善设计指的是改变程序的结构,令软件更加容易维护,通常也意味着,我们希望改善设计的过程中不应该改变程序的行为。这种不改变程序行为而改善设计的举动称为重构。(书中指出重构背后的理念:如果我们编写测试确保现有行为不变,并在重构的每一步中小心验证其行为的不变性,我们就可以在不改变程序行为的前提下通过重构使其更具维护性)

    优化和重构类似,但是目的却不同,重构的目标是程序的结构更容易维护,而优化的目标却是针对程序所使用的资源,比如CPU时间和内存占用等。

    一般而言,当对一个系统做修改之后,有三个方面可能会发生改变:结构、功能以及资源占用。为了把上述的bug修改和添加新特性区分出来,我们把功能也分为对旧有功能的修改和新功能。于是综合起来,我们可以得到一个表格:

      添加特性 修正bug 重构 优化
    结构 改变 改变 改变 ——
    新功能 改变 —— —— ——
    功能 —— 改变 —— ——
    资源使用 —— —— —— 改变

    当然,准确来说,前三种举动也可能会导致资源使用的改变,但是因这三种情况下资源使用的变化往往只是副作用,所以表中还是列为不变。

    在这所有的情况里面,有一点是非常重要的:我们对程序的改动相比我们希望保持的程序行为相比,我们希望保持的程序行为要多得多。所以在对程序修改中,如何保证不导致不想改变的东西被改变,是重中之重。

    二、修改中存在的问题

    对大部分的开发人员来说(起码我遇到过的大部分开发人员),一般并不愿意对软件进行修改。有了新的需求,需要添加新特性;有了bug,需要做修正;这样的修改不得不做。但是改善设计提高维护性,确实大部分人不愿意的。

    为什么会这样?当然不是因为开发人员懒,那么多的代码都写了,没道理不愿意为了以后维护方便,多写一些。关键在于,我们都担心只是为了改善结构的修改行为,对系统造成了严重的破坏。

    “避免修改”算是我们对于已经跑在线上的程序的一种降低软件问题的策略。“既然跑的好好的,那还是别改了”。如果一个程序永远不用改动,那或许这种策略有一定的可行性。但是,除非对于一个已死的项目,改动总是不可避免的。当团队每次都以看上去最简单的方式将新代码添加到系统中,原有的方法、原有的类就会越来越庞大,修改的难度也会越来越大,最终造成质量不断下滑。

    为了减小风险,有三个问题需要注意:

    1. 我们要进行哪些修改?
    2. 我们如何确保正确完成了修改?
    3. 我们如何确保没有破坏任何既有的东西?
    以上三个问题是重中之重,也是接下来我希望从《修改代码的艺术》这本书中得到行之有效答案的问题。
    展开全文
  • 工作中,开发代码使用的是vscode软件,提交代码时,我习惯使用git。具体使用步骤如下: 开发代码前先进行git pull拉取 每次开发前,都进行一下。如果没有push到远程服务器,则不进行git pull操作。 git pull 输入...

    git 提交代码

    工作中,开发代码使用的是vscode软件,提交代码时,我习惯使用git。具体使用步骤如下:

    开发代码前先进行git pull拉取

    每次开发前,都进行一下。如果没有push到远程服务器,则不进行git pull操作。
    git pull 输入码云账户及密码,然后拉取代码。
    如果当前的分支与远程分支不一致,则需要切换分支。

    添加文件至暂存区

    修改后的文件,需要通过 git add . 的方式将文件存储到暂存区。
    注意这个 . 的意思就是:全部修改的文件。

    添加文件到本地代码库

    git commit -m “描述信息”
    提交代码需要有个文字说明,一般我这边的描述信息都是:姓名+日期+修改内容。

    git pull 拉取远程分支最新代码

    此时为了避免出现冲突,应该进行git pull拉取操作,防止在你本地开发代码的同时,有其他同事推送新的代码块。

    如果同事更改的内容,跟你是同一个文件,则会有提示说:有冲突。

    git status 查看有冲突的文件

    git status 可以对比终端代码与你本地代码库中的代码冲突。会列出文件名称及路径。

    此时为了更好的解决冲突,确定是使用你的代码还是同事的代码块。可以借用webstorm软件打开代码。

    打开webstorm软件
    在这里插入图片描述
    双击下面的冲突文件
    在这里插入图片描述
    选择需要保留的代码,如果操作有误想回退,可以使用ctrl + z或command + z分步回退:
    在这里插入图片描述

    最后git push推送即可

    展开全文
  • 用设计器设计一个表后,在自己的软件代码里用什么命令来修改SQL查询命令和参数呢?
  • 视频压缩编码参考软件代码入门

    千次阅读 2019-01-07 21:55:17
    代码学习0:参考软件的使用视频压缩编码标准参考软件获取参考软件的使用参考软件使用方法 之前对视频压缩编码的学习主要停留在原理文本的学习上,18年9月份新学期才开始尝试深入一点了解代码。第一次面临这么大工程...
  • 代码和0代码平台,到底哪个更适合企业开发管理软件? 低代码平台,一种高生产力开发平台。 低代码平台。可以让开发者依托平台快速的搭建起企业信息化的系统。 这种新型的软件开发方式,较之传统的代码开发,开发...
  • 代码大全》软件工程项目

    千次阅读 2013-10-22 14:21:11
    进行软件开发时,总想着迫不及待地去写代码。在软件开发的过程中,这种做法正确吗?编写代码之前还应该做些什么? A1.我曾经一度认为,软件就是代码堆砌的结果。通过程序员的不懈努力,有朝一日一定能写出一套大型...
  • 软件测试人员需要懂代码吗?如果软件测试人员会代码,那还有软件开发人员的事吗?既能测试又能敲代码的人是不是很牛? 不管是外行人还是内行人,对一份与自己无关的职业的认识往往缺乏基本的认知,比如今天要说的...
  • 什么是BeyondCompare? Beyond Compare 是一款不可多得的专业级的文件夹和文件比对工具。使用它可以很方便的比对出两个...为什么要进行代码比对?...每个站长或多或少都会对文件进行一些代码修改,打
  • sublime text 3 for Mac(高级代码编辑器)代码设计师必备软件 sublime text mac破解版是专为mac用户设计的一款功能全面的代码编辑器,Sublime Text mac集合窗口分组、项目管理、扩展工具、代码折叠等功能,是程序员...
  • 修改代码浅析

    千次阅读 2010-05-25 20:11:00
    修改代码浅析 收藏 相信大家都在程序调试或者分析中碰到过自修改代码的情况吧。所谓自修改代码,就是程序自我保护的一种机制。它使我们的反汇编调试器看起来相当地无助。因为我们看到的所谓的反汇编代码并非执行...
  • Codeblocks 、Visual Studio 都出现此问题:修改代码 无法立即执行 ,就是:cannot open output file "D:\xxxxx......\Debug\NEW.exe" permission denied! 一般是因为窗口是关闭了,但是 进程没有完全退出,如果...
  • 在《GitHub 漫游指南》指南,我们提到过《如何在GitHub“寻找灵感(fork)”》,但是并不是关于阅读源码的好文章。我们并不建议所有的读者都直接看最新的代码,正确的姿势应该是: clone某个项目的代码到本地 查看这...
  • 似乎提到开源软件,往往给人一种错觉——我拿到了软件代码,接下来我是不是可以大刀阔斧为所欲为?其实非也!开源软件不等于免费软件,开源也不等于免费。“Ctrl+C/V 撸起键盘就是干,开源协议要先看”,在你决定...
  • Quiver是一款专为程序员设计的代码笔记软件。它允许您轻松地将文本,代码,Markdown和LaTeX组合在一个注释中,使用令人印象深刻的代码编辑器编辑代码,Live Preview Markdown和LaTeX,并通过全文搜索即时查找任何...
  • 修改JSP或者类文件之后,无论是make,build,重启debug,退出程序再打开,重装软件,死活就是不生效。求指导。 下面是我tomcat的设置,请问是不是哪里设置出问题 ![图片说明]...
  • svn查看当前工作区改动的文件和代码修改svn查看当前工作区改动的文件通过鼠标的右键菜单进行,并且点出这个菜单的位置很重要,在代码的总入口——文件夹项目直接点出该功能,就可以看整个项目改动的文件,如果在...
  • 原PRQA静态测试软件产品线(包括QAC、 QAC++、QA-Verify等),统一更名为“Helix QAC”,PRQA的代码静态分析工具能够帮助企业开发团队提高代码的质量和安全,缩短软件开发所需的时间,HelixQAC是作为其主打产品目前已...
  • 在 GitHub For Windows 客户端软件里面显示中文是乱码的。解决办法:Step 1 . 将 README.md 文件使用 Notepad++ 软件打开。 (如果你的电脑上没有 Notepad++ 软件,你可以参考这篇博客来下载安装它。)Step 2 . ...
  • 代码不朽:编写可维护软件的10大要则(Java版) 因为本科并非软工和计算机专业,...可维护性解释这本书解释了可维护软件中的“维护”的意思:可维护性是软件质量的一个标准,代表一个系统可被修改的难易程度。所以它
  • VB代码颜色修改的两种方法 ❤修改VB代码颜色,可以通过:“工具——选项——编辑器格式——代码颜色”,修改不同类型文本的前景色和背景色,可以查看我之前写过的一片博客:...
  • 上一节讲述了在没有MMU的CPU(如80251、MIPS M控制器系列、ARM cortex m系列)上实现虚拟内存管理的集成硬件设计方法,新设计的内存管理管理单元要实现虚拟内存管理还需要操作系统、代码分块(Bank)的支持。Bank设计是...
  • 软件自动化测试—代码覆盖率

    千次阅读 2009-12-19 23:15:00
    软件自动化测试—代码覆盖率在中提到了代码覆盖率,我很久没有去书店了,不知道是不是出了新的版本,觉得书里面关于代码覆盖率方面的知识有些地方没有讲,在这里补充一下。先回顾一下如何查看代码覆盖率 创建一个C#...
  • 没有经验的开发者朋友第一次申请的时候难免会遇到因代码文档格式不正确、代码里含有其他版权信息等原因被要求补正的问题,从而导致拿证时间延误。为了帮助开发者朋友一次性顺利通过软件著作权登记的审查,下面为大家...
  • PyCharm 软件的版本:PyCharm 2016.1.4 Git For Windows版本:Git-2.10.0-64-bit GitHub For Windows软件版:GitHub For Windows 3.0.5.2 参考网站:How to Use PyCharm with Github在 JetBrains PyCharm 软件上使用...
  • 开放源代码的数学软件

    千次阅读 2005-02-10 13:13:00
    开放源代码的数学软件周超 白峰杉(清华大学数学科学系,北京 100084) 1 开放源代码---一个值得注意的趋势 开放源代码在20世纪最后几年的发展给人以耳目一新的感觉。开放源代码软件,开放源代码模式,开放源代码...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 533,096
精华内容 213,238
关键字:

修改软件里面的代码