自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 pj杂项

脱壳一般流程:查壳(PEID,FI,PE-SCAN)寻找OEP(OD)脱壳/Dump(LordPE,PeDumper,OD自带的脱壳插件、PETools)修复(Import REConstructor)F4:运行到所选择的那一行Ctrl+F9:运行至retn(一般到了retn之后接上F7返回)Alt+F9:运行直到返回到用户代码段。常用脱壳方法:单步跟踪法ESP定律法内存

2015-02-01 22:21:34 362

原创 COM杂项

复合文件,俗称“文件中的文件系统”。复合文件的特点:1.复合文件的中的“流对象”,是真正保存数据的空间。它的存储单位为512字节。也就是说,即使你在流中只保存了一个字节的数据,它也要占据512字节的文件空间。啊~~~,这也太浪费了呀?不浪费!因为文件保存在磁盘上,即使一个字节也还要占用一个“簇”的那空。2.不同的进程,或同一个进程的不同线程可以同时访问一个复合文件的不同部分而互不干

2015-02-01 22:16:59 320

原创 windowsPE 1-7

.386.model flat,stdcalloption casemap:noneinclude windows.incinclude user32.incincludelib user32.libinclude kernel32.incincludelib kernel32.lib .dataszText db 'HelloWorld',

2014-12-28 22:41:20 411

原创 java2

ajava静态导入:import static java.lang.Math.max;public class javatest{    public static void main(String[] args) {    int a = max(1, 3);    System.out.println(a);    }}可变参数和增强型fo

2014-11-23 08:53:03 256

原创 stl2

事实上SGI STL仍然提供了一个标准的配置器接口,只是把它做了一层隐藏。这个标准接口的配置器名为simple_alloc。SGI STL的配置器与众不同,也与标准规范不同,其名称是alloc而非allocator,而且不接受任何参数。换句话说,如果你要在程序中明白采用SGI配置器,则不能采用标准写法:vector > iv;必须这么写:vector iv;SG

2014-11-21 20:22:24 294

原创 stl1

如果你针对某个class进行operator()重载,它就成为一个仿函数。template //可以指定默认"参数"一般而言,我们所习惯的C++内存配置操作和释放操作是这样的:class Foo{...};Foo * pf = new Foo();delete pf;这其中的new算式内含两阶段操作:(1)调用::operator new 配置内存;(2)调

2014-11-20 21:00:00 254

原创 java1

synchronized(obj){}进入时,将obj设为非触发状态,退出时,将obj设为触发状态。synchronized函数锁定的对象是this对象。wait notify notifyAll查资料if(obj instanceof MyClass){}Properties类是Hashtable的子类。增加了将Hashta

2014-11-20 20:48:50 221

原创 null

' or 1=1--" or 1=1--or 1=1--' or 'a'='a" or "a"="a') or ('a'='a") or ("a"="a在ASP下的工具有NBSI,啊D,明小子的Domain在PHP下有工具有PHP-Mysql注射分析器,CASI,HDSI猜解表名:http://www.xxx.com/xx.asp?i

2014-11-18 23:38:17 255

原创 windows核心编程 22

SetWindowLongPtr(hWnd, GWLP_WNDPROC,MySubclassProc):所有发到或发往hWnd窗口的消息,应该由MySubclassProc来处理,而不是由该窗口的标准窗口过程来处理. 1.      使用注册表来注入DLL当User32.dll被映射到一个新的进程时,会收到DLL_PROCESS_ATTACH通知.当User32.dll对它进行处理的时

2014-07-19 22:04:07 412

原创 windows核心编程20-21

HMODULE LoadLibrary(PCTSTR pszDLLPathName);函数返回的HMODULE值表示文件映像被映射到的虚拟内在地址.BOOL FreeLibrary(HMODULE hInstDll);VOID FreeLibraryAndExitThread(HMODULEhInstDll, DWORD dwExitCode); 系统会在每个进程中为每个DLL

2014-07-08 22:06:13 303

原创 windows核心编程 19

DLL能够包含诸如对话框模板、字符串、图标以及位图之类的资源。多个应用程序可以使用DLL来共享这些资源。 在所有的源文件编译完成之后,链接器会像链接应用程序的可执行文件那样,对它们进行链接,但在创建DLL的时候,我们必须给链接器指定/DLL开关。这个开关会使链接器在生成的DLL文件映像中保存一些与可执行文件略微不同的信息,这样操作系统的加载程序就能够将该文件映像识别为DLL,而不会将它识别

2014-07-06 22:07:49 383

原创 poj 1163 The Triangle 数字三角形问题

#include #include using namespace std;int dat[101];void solve(){ int n, i, j, t, tmp; cin >> n; for (i = 0; i < n; i++) { for (j = 0; j < i + 1; j++) { cin >> tmp; t = n - i + j - 1

2014-07-06 21:53:08 339

原创 设置超时,处理cookie,多线程

import socketimport urllibfrom urllib import requestimport http.cookiejarimport threadingsocket.setdefaulttimeout(10)cj = http.cookiejar.CookieJar()opener = urllib.request.build_opener(urllib.r

2014-07-05 17:20:07 519

原创 迭代器与生成器

class Fib: def __init__(self, mx): self.a, self.b = 1, 1 self.mx = mx def __iter__(self): return self def __next__(self): self.a, self.b = self.b, self.a +

2014-07-05 12:13:53 254

原创 poj1129 m着色

#include#include#includebool G[256][256];int x[256];int ans;bool NextColor(int m, int n, int k){ int i; while(1) { x[k] = (x[k] + 1) % (m + 1); if(0 == x[k]) return false; for(i =

2014-07-03 14:00:28 316

原创 stl heap sort

#include#include#includeusing namespace std;vector dat;void print(int n){ int i; for(i=0;i<n;i++){ cout<<dat[i]<<' '; } cout<<endl;}int main(){ dat.push_back(1); dat.push_back(3); dat.

2014-07-02 23:37:57 284

原创 windows核心编程13-16 18

用户模式分区:进程无法通过指针来读取、写入或以任何方式,访问驻留在这一分区中其他进程的数据。对所有应用程序来说,进程的大部分数据都保存在这一分区。由于每个进程都有自己的数据分区,因此一个应用程序破坏另一个应用程序的可能性就非常小,从而使得整个系统更加坚固。在Windows中,所有.exe和运态链接库都载入到这一区域。每个进程都有可能将这些DLL载入到这一分区内的不同地址(虽然这种可能性很小

2014-07-02 23:22:29 331

原创 sumofsub

#include #include #include using namespace std;int x[256], w[256];int M, n;void print(int n){ int i; for (i = 1; i <= n; i++) { if (x[i]) { cout << w[i] << ' '; } } cout << endl;

2014-07-02 12:04:24 1398

原创 全排列

#includeusing namespace std;const int MAXN = 100;int x[MAXN];int ok(int k){ int i; for (i = 0; i < k; i++) { if (x[i] == x[k]) return 0; } return 1;}void print(int n){ int i; for (

2014-07-01 23:07:06 280

原创 HDU 1166树状数组

#include#includeconst int MAXN= 50001;int dat[MAXN];int n; inline int Lowbit(int x) { return x & (-x);} inline void Update(int pos, int val) { while (pos <= n) { dat[pos] += v

2014-06-24 23:09:41 274

原创 rails

http://hz.wkjsj.org/oj/problem.php?id=1011

2014-06-24 21:32:28 338

原创 HDU 1166线段树

敌兵布阵Time Limit: 2000/1000 MS(Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 9271    AcceptedSubmission(s): 3904Problem DescriptionC国的死对头A国这段时间正在进行军事演习,所以C国间谍

2014-06-22 23:08:02 386

原创 python读文件

with open('cmps.py') as f: for i in f: print(i.rstrip())

2014-06-21 23:19:16 341

原创 高数上1-3

第一章:函数与极限在某过程中数值保持不变的量称为常量,而数值变化的量称为变量。常量与变量是相对过程而言的。通常用字母a,b,c等表示常量,用字母x,y,z等表示变量。 有限区间包括开区间、闭区间、两种半开区间。无限区间 绝对值运算性质:   函数的定义域,函数的值域,都是针对函数来讲的。 函数的两要素:定义域和对应法则。 

2014-06-20 23:19:34 383

原创 askopenfilename

import reimport osimport tkinterroot = tkinter.Tk()ifile = tkinter.filedialog.askopenfilename(filetypes = [('TXT', 'txt')])root.destroy()ofile = ifile + 'out.txt'if o

2014-06-09 23:15:13 8622

原创 windows核心编程9笔记

在进程内核对象的内部有一个布尔变量,当系统创建内核对象的时候会把这个变量的值初始化为FALSE(未触发)。当进程终止的时候,操作系统会自动把相应的内核对象中的这个布尔值设为TRUE,表示该对象已经被触发。线程内核对象也遵循同样的规则,与进程内核对象相同,线程内核对象绝对不可能回到未触发状态。Windows提供了专门用来帮助我们进行线程同步的内核对象:事件、可等待计时器、

2014-06-01 10:55:46 468

原创 杨3-8

inc dec 指令不影响 CF标志位汇编语言中可以有表达式,表达式又分为数值表达式和地址表达式数值表达式分为:常数算术运算符(+ - * / mod)关系运算符(eq ne lt gt le ge)逻辑运算符(and or xor not shl shr)操作符:high low length size seg offset type width mask

2014-05-31 11:06:59 767

原创 max sum

http://acm.hdu.edu.cn/showproblem.php?pid=1003

2014-05-25 02:06:53 345

原创 字典树

http://acm.hdu.edu.cn/showproblem.php?pid=1251#include#include#include#include#include#includeusing namespace std;class Node{public: Node(char c) { s = c; prefix = 0; isword = false

2014-05-22 23:50:26 280

原创 无题

#include #include #include #includeusing namespace std;const int MAXN = 5;int a[MAXN] = {1, 3, 5, 7, 9};int b[MAXN];void print(int a[], int n){ int i; for(i = 0; i < n; i++) cout << a[i]

2014-05-20 09:06:25 323

原创 随机生成和为S的N个数

#include #include #include #includeusing namespace std;const int n = 10;int total = 1000;int x[n];void fn(){ srand(time(NULL)); int i; for(i = 0; i < n - 1; i++) { x[i] = rand() % tota

2014-05-19 14:18:57 387

原创 n皇后

#include#includeint x[100];int place(int k){ int i=1; while(i<k){ if(x[i]==x[k] || abs(k-i)==abs(x[k]-x[i])) return 0; i++; } return 1;}void nQueens(int n){ x[1]=0; int k=1; int i;

2014-05-18 23:15:20 285

原创 urllib test

import timefrom urllib import parse, requesturl = "http://221.176.1.142:8001/selfservice/account/applypwd"postdata = {'mobile':'','acName':''}def solve1(mobile): postdata['mobile'] = mobile

2014-05-15 14:15:51 634

原创 二叉搜索树 二叉查找树 二叉排序树

#include using namespace std;struct Node{ int data; Node * left, * right;};void Insert(Node * & p, int data){ if(NULL == p) { p = new Node(); p->data = data; p->left = p->right = NULL

2014-05-14 14:04:33 308

原创 数组中只出现1次的两个数字

在一个数组中除两个数字只出现1次外,其它数字都出现了2次, 要求尽快找出这两个数字。

2014-05-13 14:21:30 271

原创 杨1-2

指令中不使用物理地址,而是使用逻辑地址,由总线接口单元BIU按需要根据段值和偏移自动形成20位物理地址。寄存器相对寻址方式中,基址或变址寄存器名一定要放到方括号中,而位移可不写在方括号中。下面两条指令源操作数的寻址方式是相同的,表示的形式等价:mov ax, [si + 3]mov ax, 3[si]对于基址加变址寻址方式,下列表示形式等价:mov ax,

2014-04-28 21:00:16 594

原创 下载文件对话框

#!/usr/bin/python# HTTP Headerprint "Content-Type:application/octet-stream; name=\"FileName\"\r\n";print "Content-Disposition: attachment; filename=\"FileName\"\r\n\n";# Actual File Content will

2014-04-28 16:09:07 291

原创 堆排序

void maxHeap(int a[], int n, int i){ int left = i * 2, right = i * 2 + 1; if(left > n) return; int large = left; if(right a[large]) large = right; if(a[i] < a[large]) { swap(a[i], a[larg

2014-04-26 14:59:36 289

原创 二分查找

int bsearch(int a[], int n, int x){ int s = 0, e = n - 1; int mid; while(s <= e) { mid = (s + e) / 2; if(a[mid] == x) return mid; else if(a[mid] > x) e = mid - 1; else s = mid +

2014-04-26 11:21:18 283

原创 王爽15-17

一般将按下一个键时产生的扫描码称为通码,松开一个键产生的扫描码称为断码。扫描码长度为一个字节,通码的第7位为0,断码的第7位为1.即:断码=通码+80H键盘的输入到达60H端口时,相关的芯片就会向CPU发出中断类型码为9的可屏蔽中断信息。CPU检测到该中断信息后,如果IF=1,则响应中断,引发中断过程,转去执行int 9中断例程。int 9中断例程由BIOS提供。int 9中断例程的主要

2014-04-26 10:07:13 364

空空如也

空空如也

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

TA关注的人

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