自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xum2008的专栏

专注成就专业!!!

  • 博客(57)
  • 资源 (9)
  • 收藏
  • 关注

原创 进制间的转换笔记

 今天发现电脑中的破解计算器似乎被病毒感染了,启动不了,于是乎,就有了今天的这篇笔记吧。。。说动手就马上动手写一个功能和它相同的计算器,方便以后的使用,就不会在去求助于别人的程序了。。。说道这里,我发现,其实计算器的实现,其实还是字符串与个进制的转换问题。。。因为,只要你从文本框获取数据或者是写入数据,不可避免的都要使用字符串的操作。。到底我们应该怎么样去做呢? 还是首先来

2009-11-29 18:04:00 506

原创 总结一下应用层上对注册表的操作

 注册表,对于系统来说,重要性不用多说,我们能够通过修改里边的数据来达到某种目的。。。对于它的处理,基本上也就是 增,删,改,查。。。  HKEY key = NULL;  LONG lResult = 0;  LPCSTR data_set = "SOFTWARE//Microsoft//Internet Explorer//Main";  int  len = st

2009-11-27 23:22:00 537

转载 在应用层上_注册表的_API

1:注册表操作常用API   API说明RegCreateKey创建一个KEY,并返回相应的HKEYRegOpenKey打开注册表,得到一个HKEY,用来作为下面这些函数的第一个参数。RegOpenKeyEx同RegOpenKey类似,一般很少用,增加了一个访问控制类型参数。RegSetValue设置一

2009-11-27 21:20:00 756

原创 同步处理_2

 #include #include #include   UINT WINAPI Thread(LPVOID para){ static int i = 1; printf("this is Thread  %d/n", i++); Sleep(5000); return 0;} int main(){ HANDLE handle[2]; handle[0]

2009-11-26 23:07:00 409

原创 使用等待对象的方法,实现多线程的同步处理。。

 #include #include     /* _beginthread, _endthread */这是一个创建线程的宏,必须在工程->设置->C/C++->Code Generation->Use run-time libray->选 Debug Multithread(多线程),或 Multithread才可以使用,不然会出现,没有定义的错误。。。#include

2009-11-25 23:51:00 747

原创 修改注册表,实现开机启动程序

 #include #include #include using namespace std;int main(){  HKEY key;                                                                                                           //注册表的句柄    LPCSTR 

2009-11-24 17:39:00 1327

转载 关于ACM错误提示的说明

 下面是一般JudgeOnline系统所有可能产生的结果,如果对返回的结果不明,看看解释吧Waiting: Your program is being judged or waiting to be judged. Accepted (AC): Congratulations! Your program has produced the correct output! Pr

2009-11-17 18:21:00 1134

原创 关于 NDIS 中间层驱动的实现方案。。。

 最近,打算写一个基于 中间层的驱动过滤程序,功能应该具有基本的防火墙的特点:可以对本机发出和接受的数据包进行过滤,达到一般的数据处理的功能,以后会继续完善里边的功能。。。具体的实现想法:1:在passthrough 的框架下2:能够提示数据的信息,达到内核与用户层的交互3:添加功能:对注册表写的禁止,对IE的保护。。。4:提高效率  

2009-11-16 18:05:00 505

原创 乘法口诀

 #include using namespace std;int main(){ int i, j, k, nArray[10] = {0}, l = 0; cin >> k; while (0 != k) {  nArray[l++] = k;  cin >> k; } k = 0; while ( k  {  cout   for (i = 1; i   {   fo

2009-11-16 18:01:00 414

原创 二叉树的非递归访问

 #include #include using namespace std;struct Infor{ char  word; int  nFlags; struct Infor *lchild, *rchild, *next;};class Test{public: Test(); void CreatTree(); void PreOrder(); void PrePassT

2009-11-16 18:01:00 486

原创 舞伴问题

 #include #include using namespace std;struct Infor{ char   szSex; string   strName; struct Infor *next;};class Test{public: Test(); void InterFace(); void CreatQuene(); void ShowResult();privat

2009-11-16 18:00:00 716 1

原创 判断某日是该年第几天

 #include using namespace std;struct Infor{ int nYear; int nMonth; int nDay; int nNum; struct Infor *next;};int main(){       // 1 2   3   4   5     6   7    8    9  10    11   12 const int nArray

2009-11-16 18:00:00 477

原创 一元多项式的运算

 #include using namespace std;struct Infor{ int coef; int exp; struct Infor *next;};int main(){ int  i = 0, j, k; char word; struct Infor *p1 = new struct Infor; struct Infor *p2 = p1; struct In

2009-11-16 17:58:00 635

原创 判断闰年的另类条件

 #includeusing namespace std;int main(){// freopen("1.txt", "r", stdin); long int i; cin >> i; while (0 != i) {  bool  bRet = false;  if ((0 == i % 172800) && (0 == i % 86400))  {   bRet = true;

2009-11-16 17:58:00 518

原创 数组输出

 #include using namespace std;#define MAXSIZE 100int main(){ freopen("1.txt", "r", stdin);  int  word; int  nArray[MAXSIZE], i, j = 0, k, l; cin >> word;  for (; 0 != word; ) {  nArray[j++] = word

2009-11-16 17:56:00 339

原创 打印方阵

 #include using namespace std;int main(){ int i, j, k; cin >> i; for (j = 0; j  {  for (k = 0; k   {   if (0 == j || j == i - 1 || 0 == k || k == i - 1)   {    cout    }   else if (j == i/2 && k =

2009-11-16 17:56:00 399

原创 AC WA or PE

 #include #include using namespace std;struct Infor{ string str; int  nFre;};int main(){ int    i, j, k = 0; string   strWord; struct Infor array[100];  cin >> i;  while (0 != i) {  int   nSum = 0

2009-11-16 17:56:00 766

原创 计算二叉树的结点个数

 #include using namespace std;extern int gNum = 0;struct Infor{ char word; struct Infor *lchild, *rchild;};class Test{public: Test(); void CreatTree(); void PreTree();private: struct Infor *

2009-11-16 17:55:00 1601

原创 二叉树的建立和访问的方法

 #include #include #include using namespace std;struct Infor{ int nNum; struct Infor *lChild, *rChild, *next;};class Test{public: Test(); void creatTree(); void PreTree(); void MidTree(); void Las

2009-11-16 17:54:00 390

原创 集合的运算

 #include using namespace std;class Test{public: Test(); void InterFace(); void ShowDef(); void ShowSame(); void GetArrayA(); void GetArrayB();protected:private: int  m_nArray_1[20], m_nArray_2[20

2009-11-16 17:53:00 419

原创 队列的顺序存储结构与操作

 #include using namespace std;templateclass Test{public: Test(); void InterFace(); void GetIntoQue(); void CleanQuene(); void GetQueueHead(); void DeleteQueueHead(); void Exit();private: T m_t[100

2009-11-16 17:52:00 515

原创 队列的链式存储结构与操作

 #include using namespace std;struct Infor{ char temp; struct Infor *next;};templateclass Test{public: Test(); void InterFace(); void GetIntoQueue(); void GetTopStack(); void Exit(); void Delete

2009-11-16 17:52:00 559

原创 栈的顺序存储结构与操作

 #include using namespace std;struct Infor{ char   word;};templateclass Test{public: Test(); ~Test(); void InterFace(); void GetIntoStack();   //入站 void OutputStack();    //出站不删除 void ShowStack();

2009-11-16 17:51:00 407

原创 栈的链式存储结构与操作

 #include using namespace std;struct Infor{ char   temp; struct Infor *next;};templateclass Test{public: Test(); ~Test(); void InterFace(); void Exit(); void GetIntoStack(); void GetOutStack(); 

2009-11-16 17:51:00 391

原创 线性表的链式存储结构与操作

 #include using namespace std;struct Infor{ int  nLocal; char szWord; Infor *next;};class Test_2{public: Test_2(); ~Test_2();  void InterFace(); void BuildList(); void SearchOne(); void DeleteOne(

2009-11-16 17:50:00 608

原创 简单的括号匹配问题,只有 ( 和 )。。。其实原理就是开栈最后的状态。。。

 #include using namespace std;templateclass Test{public: Test();  void GetIntoStack(T temp, int nSize); private: int m_nLeft;};templateTest::Test(){ m_nLeft   = 0;}templatevoid Test::GetIntoStac

2009-11-16 17:48:00 361

原创 线性表的顺序存储结构与操作

#include#define MaxSixe 20using namespace std;struct Infor{ char szWord; Infor *next;};class Test_1{public: Test_1(); ~Test_1();  void InterFace(); void InsertNum(); void CreateList(); void Show

2009-11-16 17:46:00 458

原创 驱动程序的基本结构

 对于 DriverObject:它是驱动的核心部分,每一个驱动程序,都会对应有一个驱动对象,每一个驱动对象都会派生出一个或对个的设备对象。。。也可以说“设备对象重属于驱动对象”  对象又可以分成3类:1:文件对象2:设备对象3:驱动对象 设备对象(DeviceObject)它的flags 有几个域在过滤程序中经常用到。。。DO_BUFFERED_IO(

2009-11-12 23:03:00 610

原创 帮朋友搭建好了开发环境。。。

 今天,帮朋友搭建好了驱动的开发环境,总是有点感触。。。对于内核方面,入门真的是比较难的,就连一个环境就得让初学者忙活半天,想想当初,自己也是弄了好久,虽然我还是菜鸟,但是,对于刚刚入门的时候,总是感觉到时有那么得难,毕竟,没有人能给自己指点,确实经常会比较郁闷的了。。。不过,这是一种历练吧,只有那一段时间过后,你才能上升到另一个高度。。。

2009-11-12 22:26:00 379

原创 this 指针的运用实例

 #include using namespace std; class Point { public: Point( ); Point( int a, int b ); void display( ); void display( int a1, int b1 ); private: int a1; int b1; }; Point::P

2009-11-12 11:18:00 408

原创 5种常见语言特征区段

 Borland C++ 00401000 > $ A1 A8534B00 MOV EAX,DWORD PTR DS:[4B53A8] 00401005 . C1E0 02 SHL EAX,2 00401008 . A3 AC534B00 MOV DWORD PTR DS:[4B53AC],EAX 0040100D . 57 PUSH EDI 0040100E .

2009-11-12 11:17:00 764

原创 构造函数

 在构造函数时,先构造基类,然后才是子类。 但是,析构时,正好相反。。。 函数的覆盖是发生在父类与子类之间的。。 函数的重载是发生在一个类中的函数与函数之间的。。 看内存类型是否可以转换关键看内存模型; 执行强制转换时: 如果是内存模型小的转换成大的,则不会发生折断; 否者就会发生精度上的丢失; 多态性;一种迟后联编技术 如果想利用多态性,则可以将基类中

2009-11-12 11:17:00 461

原创 手脱 Armadillo 3.78 - 4.xx -> Silicon Realms Toolworks

 手脱 Armadillo 3.78 - 4.xx -> Silicon Realms Toolworks 这是一个穿山甲的壳。。。当运行它后,在任务窗口,只发现有一个进程, 那么我们就用常规的方法来处理它。。。 首先,用OD载入, 下 GetModuleHandleA+5 这个断点,然后 shift+F9 运行。 观察堆栈窗口 001292A4 /0012EBB0

2009-11-12 11:16:00 2532

原创 脱ACProtected的壳的过程

 004254C9 55 push ebp 004254CA 8BEC mov ebp,esp 004254CC 83EC 44 sub esp,44  脱ACProtected的壳的过程: 当拿到它的时候,用PEID查壳UltraProtect 1.x -> RISCO Software ,用OD载入后,运行后,记事本直接打开,然后重新开始,右键 分析代码 ,shif

2009-11-12 11:16:00 764

原创 手脱 UltraProtect 1.x -> RISCO Software Inc

 手脱 UltraProtect 1.x -> RISCO Software Inc. 用PEID 查壳 用OD 载入。。。 分析代码。。。。 不选非法访问内存!!! 可以用ESP定律来取得它的入口地址。。 当然首先应该看一下它是否被抽取了入口代码,将它们隐藏起来了。。 载入后后,可以对代码进行分析,用最后一次异常的方法来到那个 ret 然后打开内存镜像,在代码处内

2009-11-12 11:15:00 1532

原创 ESP定律和内存断点

 1.ESP定律的原理是什么? 堆栈平衡原理。 2.ESP定律的适用范围是什么? 几乎全部的压缩壳,部分加密壳。只要是在JMP到OEP后,ESP=0012FFC4的壳,理论上我们都可以使用。但是在何时下断点避开校验,何时下断OD才能断下来,这还需要多多总结和多多积累。 数据窗口跟随----硬件访问---DWORD 3.内存断点: 在所执行的代码的当前地址的一个字

2009-11-12 11:15:00 1579

原创 手脱 ASProtect 1.22 - 1.23 Beta 21 -> Alexey Solodovnikov

 手脱 ASProtect 1.22 - 1.23 Beta 21 -> Alexey Solodovnikov 并修复的过程; OD忽略出内存和添加的访问的所有异常; 还是运用最后一次异常的方法,达到程序OEP 达到脱壳的目的; 当达到后,打开内存镜像,在CODE 段下断点,运行。。达到OEP。。 脱壳,修复。。。不能运行。。。 为什么??因为程序中还有还有问

2009-11-12 11:14:00 1275

原创 不脱壳破解 ASProtect 2.0x Registered -> Alexey Solodovnikov 加壳程序

 不脱壳破解 ASProtect 2.0x Registered -> Alexey Solodovnikov 加壳程序 e2h-dist.exe。。 首先用 OD 载入程序。忽略出 int3 外的所有异常。。 运行它。。出现注册对话窗口。。 填入假码和注册信息。。。确定,,出现一个对话框 “invalidus code” 记住它。。暂停后,分析一下代码,搜索-》所有文

2009-11-12 11:14:00 1760

原创 手动查找 IAT 的方法!!!

 一个这样的壳: MoleBox 2.x.x -> Mole Studio 是用 汇编写的;  ***************************** 运用 ESP 定律 达到程序的 OEP (如果在这个过程中,程序出现异常,就将它们添加进异常,继续运行程序,到达OPE,当看到 -jmp后,F7 进入就到了),正常脱壳后,发现程序无法运行。。修复时,有两个无效的指针。用

2009-11-12 11:13:00 3003

原创 手动去自校验!!

 快速去掉自校验的思路: 用od 将壳脱掉后,没有什么其他的问题,然而程序仍然不能运行,可能就是程序中 存在自校验了。。。 当然,你可以用双 OD 的方法,慢慢的比较他们的不同,现在,我们来用一种更快的方法去掉它。。 将程序载入后,查找--当前模块的标签--》找到 ExitProcess... 因为程序的退出都是由它来完成的。。 怎么样来退出程序呢?? 肯定是通过一

2009-11-12 11:13:00 1114

广州多益网络2013校园招聘上机题目2

广州多益网络2013校园招聘上机题目2

2013-01-21

2011广州多益上机题

2011广州多益上机题 2011广州多益上机题 2011广州多益上机题

2013-01-21

自己动手写内核 源码

自己动手写内核 源码,一个很好的例子,希望大家喜欢

2011-02-27

编译技术期末考题-199502005

编译技术期末考题-199502005

2011-01-04

经典的课程设计,帮你解决一切!!

你还在为课程设计苦恼吗???再也不会了,我这有,完整的带注释!!!

2008-12-19

机器人足球教程,给每个热爱机器人足球的人!!!!!!!!!!

真是非常好的教学资料!!!!!!!!!!!!!

2008-12-06

链表问题,真的很有用!!!!!!!

为新手解决指针问题,真的很实用!!!!! 想从菜鸟成为老鸟吗?那就下吧,让你成功!!!!!!!!

2008-11-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除