热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

x64dbg调试器使用vs2015进行编译

首先x64dbg调试器默认是使用vs2013的。这里我选择使用的是vs2015进行编译,区别就是QT使用的是5.9.0版本。x64dbg项目构成1)

首先x64dbg调试器默认是使用vs2013的。这里我选择使用的是vs2015进行编译,区别就是QT使用的是5.9.0版本。


x64dbg项目构成

1)主体:x64dbg-development(GitHub:https://github.com/x64dbg/x64dbg)

2)附属开源库:

1>x64dbg-development\deps(GitHub:https://github.com/x64dbg/deps/tree/3b911145d643a54475c8ec1bcdf292589b12f2be)

2>x64dbg-development\src\gui\Translations(GitHub:https://github.com/x64dbg/Translations/tree/7414d65c468803dbd548e2f12998624d66a12bc0)

3>x64dbg-development\src\zydis_wrapper\zydis(GitHub:https://github.com/x64dbg/zydis/tree/7c4e7d7daf3a6fe3ed237fa487b4da3e429eabf2)

4>x64dbg-development\src\dbg\btparser(GitHub:https://github.com/x64dbg/btparser/tree/d5034cf6d647e98cb01e9e1fc4efa5086f8fc6a5)

3)QT界面,这里使用qt5.9.0版本(官网:https://download.qt.io/archive/qt/5.9/5.9.0/qt-opensource-windows-x86-5.9.0.exe)


开始编译

1)安装QT时记得选qt的编译器msvc2015,里面有32位和64位的,都选上(个人比较懒10+G的编译环境都装了,也是防止以后再装)。因为x64dbg两个都要编译。

2)安装vs2015,这个自行搜就可以了,建议下载社区版的(Community),因为可以免费用。

3)当你打开x64dbg-development/x64dbg.sln时,会提示你升级到vs2015的工程,升级就可以了。所有的编译都是配置好的,可以直接编译成功。

这里需要注意一点,就是上面提到的4个附属的开源库。上面标记了库的路径,你下载的x64dbg-development里面这4个目录都是空的,你需要把从github上下载的源码拷贝进去。

官方的GitHub里面都有连接。就像下面这个图上一样,可以点进去跳转。如果本文上面的github地址失效了,可以自己到官方的Github上自己找,4个库都可以点进去下载。

4)这4个源码下载好了,就可以完美的编译通过了。

5)编译后的文件在x64dbg-development\bin\x32目录中,

6)编译好后是无法运行的,因为没有依赖环境的dll文件,这时候需要运行x64dbg-development\setupdeps.bat文件,他可以把一些需要的环境复制到编译好的目录中。

7)接下来需要编译UI,也就是QT该上场了。负责UI引擎的dll叫x32gui.dll。这个文件是QT负责编译的。

首先用QT打开x64dbg-development\src\gui\x64dbg.pro。这个就是QT的工程文件了。

可能会由很多人没用过QT,甚至连打开都不知道怎么打开。这里就简单讲一下。

1>运行Qt Creator字眼的exe,启动QT。

2>打开x64dbg.pro

3>菜单栏第三个build构建或者左下角有个锤子,也是build的意思。

4>锤子上面有个小电脑,可以选择编译32位还是64位。选择好了就可以编译了。

5>如果这里面没有,工具->选项。

这些就是一开始安装勾选的编译环境。我这个是全√的。如果有问题,建议重装。

6>qt编译好后,他会自动把编译好的x32gui.dll文件复制到x64dbg-development\bin\x32中,不需要手动处理。

7>所有的dll编译完成后,还需要做的一件事就是替换qt的文件,用5.9.0的文件替换bin\x32中的,一共有5个。

这些文件在qt的安装目录里找,比如我的:Qt5.9.0\5.9\msvc2015\bin。记得release和debug的名字不一样的。debug后面都多了个d。

8)好了,这样就可以运行了x32dbg.exe了。有什么想要修改的内容就随心所欲的改吧。

最后,最好从先下载个官方的,里面有些配置文件需要拷贝过来,比如说语言,你编译的是英文的。


推荐阅读
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • 本文记录了作者对x265开源代码的实现与框架进行学习与探索的过程,包括x265的下载地址与参考资料,以及在Win7 32 bit PC、VS2010平台上的安装与配置步骤。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 使用在线工具jsonschema2pojo根据json生成java对象
    本文介绍了使用在线工具jsonschema2pojo根据json生成java对象的方法。通过该工具,用户只需将json字符串复制到输入框中,即可自动将其转换成java对象。该工具还能解析列表式的json数据,并将嵌套在内层的对象也解析出来。本文以请求github的api为例,展示了使用该工具的步骤和效果。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • CEPH LIO iSCSI Gateway及其使用参考文档
    本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ... [详细]
  • 本文分析了Wince程序内存和存储内存的分布及作用。Wince内存包括系统内存、对象存储和程序内存,其中系统内存占用了一部分SDRAM,而剩下的30M为程序内存和存储内存。对象存储是嵌入式wince操作系统中的一个新概念,常用于消费电子设备中。此外,文章还介绍了主电源和后备电池在操作系统中的作用。 ... [详细]
  • 本文介绍了连接库的定义和使用方法。连接库是通过编译生成的dll文件,例如php_mysql.dll。在使用扩展时,需要去掉配置文件中的分号,并通过phpinfo查看是否正确加载了mysql连接库。详细内容请参考链接:https://www.cnblogs.com/xiaobiaomei/p/7654750.html。摘要字数:180字。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • GSIOpenSSH PAM_USER 安全绕过漏洞
    漏洞名称:GSI-OpenSSHPAM_USER安全绕过漏洞CNNVD编号:CNNVD-201304-097发布时间:2013-04-09 ... [详细]
author-avatar
幸福璞子难_197
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有