// 20171122_01.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "windows.h"
#include "stdlib.h"
#include "iostream.h"
#include <stdio.h>
struct Base{
virtual void Fn1()
{
printf("Base:Fn1111\n");
}
virtual void Fn2()
{
p...
// 20171122_01.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "windows.h"
#include "stdlib.h"
#include "iostream.h"
#include <stdio.h>
struct Base{
int a;
int b;
virtual void Fn1()
{
printf("1111\n");
}
virtual void Fn2...
好好挣钱
好好磨练自己的技术
我耐得住性子, 我想好好钻研计算机,
可我感觉自己走错了 路, 选错了方向!!
最近工作压力比较大,事情比较多!!
晚上去看了 sablog的个人博客, 想的有点儿多吧
自己也就一个菜鸟, 一个大牛被关进监狱, 自己能感慨些什么呢....
前天,Q说买房子的事情, 看看自己兜里的存款, 想想未来能给燕子带来什么, 我真的感觉有些无力!!
现在自己为未来真的没什么把握, 为了一些鸡毛蒜皮的小事,耽误了太多太多,
刷量平台已经建立起来了, 没有进行推广, 挣钱,, 挣钱, 技术,, 技术,,,
现在心里还是很慌很慌, 什么时候可以自己内心可以真正的不太慌呢...
好庞大的课程体系, 学期七个月
1. 指引篇 328课时(预计两个月)
此阶段主要侧重于培养学员发现问题的能力,并对各大平台各个操作系统有一个整体性认知,迅速建立起较高的计算机素养,并形成对于信息安全核心思想的初步探索及认知,为后续专项课程的学习建立起全局高度,以达到有的放矢的目的。
> C++基础............40课时(将零基础学生带入计算机语言的奇妙世界,此部分主要偏向于编程思想与基础语法)
> C++提高......
测试代码的效果,
只适用于 win自带的 程序
void TestPrintBindImportDirectory(LPSTR lpszFile)
{
LPVOID pFileBuffer = NULL;
pFileBuffer= ReadPEFile(lpszFile);
if(!pFileBuffer)
{
printf("文件读取失败\n");
return;
}
PIMAGE_DOS_HEADER pDosHeader = NULL;
PIMAGE_NT_HEADERS pNTHeader ...
导入表有些复杂,文件与内存中的格式不太一样
理解导入表的结构是关键
void TestPrintImportDirectory(LPSTR lpszFile)
{
LPVOID pFileBuffer = NULL;
pFileBuffer= ReadPEFile(lpszFile);
if(!pFileBuffer)
{
printf("文件读取失败\n");
return;
}
PIMAGE_DOS_HEADER pDosHeader = NULL;
PIMAGE_NT_HEADERS pNTHeader = NULL;
PIMAGE_FIL...
直接更改文件的ImageBase,进行的测试
void testUseReloc(LPSTR lpszFile)
{
LPVOID pFileBuffer = NULL;
pFileBuffer= ReadPEFile(lpszFile);
if(!pFileBuffer)
{
printf("文件读取失败\n");
return;
}
PIMAGE_DOS_HEADER pDosHeader = NULL;
PIMAGE_NT_HEADERS pNTHeader = NULL;
PIMAGE_FILE_HE...
很笨的方法
(写过才能知道,哪些地方,需要注意,开始想的很简单,就三部,写了 一个多小时!!)
void TestMoveRelocDirectory(LPSTR lpszFile)
{
/*
1 新增一个节
2 把重定位的表 移动到那个节中
3 更改标志位
*/
LPVOID pFileBuffer = NULL;
pFileBuffer= ReadPEFile(lpszFile);
if(!pFileBuffer)
{
printf("文件读取失败\n");
return;
}
PIMAGE_DOS_HE...
电脑显示未插入扬声器或耳机要怎么办呢?很多人都喜欢用电脑听歌或者看视频,但是最近有些用户反映说,自己的电脑没声音了,并且在桌面右下角出现了未插入扬声器或耳机的提示,这是怎么回事呢?今天U大侠小编就和大家说说电脑显示未插入扬声器或耳机的完美解决方法。
未插入扬声器或耳机
1、通过下列的操作检查电脑声音无法播放的状态设置,首先右键电脑桌面音量图标,打开了声音对话框;
2、在打开的对话框中,切换到“录制”标签页,在麦克风显示处查看是否显示“未插入”,线路输入处是否也显示“未插入”;
3、接着切换到“播放”标签页,查看扬声器R...
具体创建如何创建def类型的导出表可以直接自己测试
这里只贴 使用的代码
// 20171111_01.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <Windows.h>
#pragma comment(lib,"TestDef.lib")
/*
extern "C" __declspec(dllimport) __stdcall Plus(int x,int y);
extern "...
1 在DLL中新增一个节, 并返回新增的FOA
2 复制AddressOfFunctions 长度:4*NumberOfFunctions
3 复制AddressOfNameOrdinals 长度:NumberOfNames*2
4 复制AddressOfNames 长度:NumberOfNames*4
5 复制所有的函数名
长度不确定,复制时直接修复AddressOfNames
6 复制IMAGE_EXPORT_DIRECTORY结构
7 修复IMAGE_EXPORT_DIRECTORY结构中的
AddressOfFunctions
Ad...
了解表结构,输出信息,一个函数的实现
void printDirectoryRelocTable(LPSTR lpszFile)
{
LPVOID pFileBuffer = NULL;
pFileBuffer= ReadPEFile(lpszFile);
if(!pFileBuffer)
{
printf("文件读取失败\n");
return;
}
PIMAGE_DOS_HEADER pDosHeader = NULL;
PIMAGE_NT_HEADERS pNTHeader = NULL;
PIMAGE_FILE_HEADER pP...
网址:http://blog.csdn.net/reversalc/article/details/8022977
1 基本概念
下表描述了贯穿于本文中的一些概念:
名称
描述
地址
是“虚拟地址”而不是“物理地址”。为什么不是“物理地址”呢?因为数据在内存的位置经常在变,这样可以节省内存开支、避开错误的内存位置等的优势。同时用户并不需要知道具体的“真实地址”,因...
两个函数的具体实现
直接上代码了, 懒得讲了
// PEOperate.cpp: implementation of the PEOperate class.
//
//////////////////////////////////////////////////////////////////////
#include "PEOperate.h"
//////////////////////////////////////////////////////////////////////
// Constructi...