DLL的默认基址是0x10000000,但EXE的默认基址是0x00400000.为什么EXE特别值?4 兆字节有什么特别之处它与x86上单页目录条目映射的地址空间量和1987年的设计决策有关.对EXE基地址的唯一技术要求是它是一个64KB的倍数.但基地址的一些选择比其他选择更好.选择基址的目的是最小化模块必须重新定位的可能性.这意味着不会与地址空间中已有的东西发生冲突(这将迫使您重新定位),也不会与稍后可能到达地址空间的东西发生冲突(迫使他们重新定位).对于可执行文件,不会与稍后可能到达的内容…
确保其Java代码是没有问题的,在IDEA常执行的,然后.按以下步骤: 步骤一:打开File -> Project Structure -> Artifacts,例如以下图 步骤二:点击"+",选择"Jar",选择Empty或From modules with dependencies 步骤三:设置一个主函数入口main class 如图: 完毕上面三步之后,点击完毕. 步骤四:回来idea主界面.点击Build -->Build Artfacts…
服务发现 kubernetes 提供了 service 的概念可以通过 VIP 访问 pod 提供的服务,但是在使用的时候还有一个问题:怎么知道某个应用的 VIP?比如我们有两个应用,一个 app,一个 是 db,每个应用使用 rc 进行管理,并通过 service 暴露出端口提供服务.app 需要连接到 db 应用,我们只知道 db 应用的名称,但是并不知道它的 VIP 地址. 最简单的办法是从 kubernetes 提供的 API 查询.但这是一个糟糕的做法,首先每个应用都要在启动的时候编写…
## (C) Copyright 2000 - 2008# Wolfgang Denk, DENX Software Engineering, wd@denx.de.## See file CREDITS for list of people who contributed to this# project.## This program is free software; you can redistribute it and/or# modify it under the terms of…
介绍 CabloyJS是一款免费开源的NodeJS全栈开发框架,采用前后端分离设计,具备开箱即用的后台管理系统 Cabloy-SDK是专门为Uniapp应用量身定制的前端SDK,用于便捷的访问CabloyJS提供的所有API接口,让Uniapp前端开发再无后顾之忧 特性 各个平台的小程序后端API系统,最复杂的就是账号体系对接.CabloyJS提供了一个模块化的生态,需要开发什么平台下的小程序应用,只需安装相应的模块即可 目前Cabloy-SDK支持以下平台小程序的开箱即用: 微信小程序 企业微…
前言 现在软件开发不仅要面对前端碎片化,还要面对后端碎片化.针对前端碎片化,CabloyJS提供了pc=mobile+pad的跨端自适应方案,参见:自适应布局:pc = mobile + pad 在这里,咱们重点要解决的是后端碎片化.比如要开发一个业务系统,既需要与微信.企业微信整合,又需要与钉钉整合,该如何设计整个架构呢? 其实,不论是微信.企业微信,还是钉钉,面向实际业务层面的API都不复杂,复杂的是各自独立的账号体系如何与业务系统打通的问题.当账号接口对接完成,后续的业务开发就很顺畅了 C…
前言 现在软件开发不仅要面对前端碎片化,还要面对后端碎片化.针对前端碎片化,CabloyJS提供了pc=mobile+pad的跨端自适应方案,参见:自适应布局:pc = mobile + pad 在这里,咱们重点要解决的是后端碎片化.比如要开发一个业务系统,既需要与微信.企业微信整合,又需要与钉钉整合,该如何设计整个架构呢? 其实,不论是微信.企业微信,还是钉钉,面向实际业务层面的API都不复杂,复杂的是各自独立的账号体系如何与业务系统打通的问题.当账号接口对接完成,后续的业务开发就很顺畅了 C…
前言 现在软件开发不仅要面对前端碎片化,还要面对后端碎片化.针对前端碎片化,CabloyJS提供了pc=mobile+pad的跨端自适应方案,参见:自适应布局:pc = mobile + pad 在这里,咱们重点要解决的是后端碎片化.比如要开发一个业务系统,既需要与微信.企业微信整合,又需要与钉钉整合,该如何设计整个架构呢? 其实,不论是微信.企业微信,还是钉钉,面向实际业务层面的API都不复杂,复杂的是各自独立的账号体系如何与业务系统打通的问题.当账号接口对接完成,后续的业务开发就很顺畅了 C…
0x01 找kernel32基地址的方法一般有三种: 暴力搜索法.异常处理链表搜索法.PEB法. 0x02 基本原理 暴力搜索法是最早的动态查找kernel32基地址的方法.它的原理是几乎所有的win32可执行文件(pe格式文件)运行的时候都加载kernel32.dll,可执行文件进入入口点执行后esp存放的一般是Kernel32.DLL 中的某个地址,所以沿着这个地址向上查找就可以找到kernel32的基地址.那么如何知道我们找到的地址是kernel32的基地址呢?因为kernel32.dll…
前言 平常我们通过Python写完一些小脚本之后,如果使用不频繁的话,一般会选择在DOS界面直接跑脚本,或者在IDE中运行.但当我们需要频繁使用某些脚本,或者在没有Python环境的机器上也能顺利运行时,我们需要怎么做呢? 一个好的办法,就是将脚本打包成exe可执行文件,打包成exe有以下好处: 1,可以方便他人使用自己的脚本或工具 2,方便自己,使用时直接点击执行exe文件即可 PyInstaller的安装 在这里,主要和大家介绍一下Python通过PyInstaller打包exe的方法. 本…