自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 JAVA设计模式一 创建型模式

一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两

2015-03-25 13:03:51 565

原创 Http与HTTP隧道技术

HTTP是一个客户端和服务端请求和应答的标准(TCP)客户端是终端用户,服务器端是网站。通过使用Web浏览器、网络爬虫或者其它的工具,客户端发起一个到服务器上指定端口(默认端口为80)的HTTP请求。(我们称这个客户端)叫用户代理(user agent)。应答的服务器上存储着(一些)资源,比如HTML文件和图像。(我们称)这个应答服务器为源服务器(origin server)。在用户代理和源服

2015-03-12 16:40:23 6791 1

转载 VS2010生成exe在别的机子上运行提示“丢失MSVCR100D.dll”

http://woshao.com/article/ab67bbe640f511e081e1000c2959fd2a/用vs2010编写的程序经常会发生的一个问题。在自己的机器上运行的好好的,但是在别的机器上就会发生没有找到MSVCR100D.dll。这是个很头疼的问题。对于一些代码量几百行的小程序,我不可能要求其他电脑也一定要配有MSVCR100D.dll这个dll。当然解决方法也有,但

2015-01-29 16:41:04 1002

转载 深入理解Java对象序列化

1. 什么是Java对象序列化Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比JVM的生命周期更长。但在现实应用中,就可能要求在JVM停止运行之后能够保存(持久化)指定的对象,并在将来重新读取被保存的对象。Java对象序列化就能够帮助我们实现该功能。使用Java对象序列化,在保存对象时,会把其状态保

2015-01-18 18:35:14 482

原创 JAVA与C++的多态异同

Java中的多态。将一个方法调用同一个方法主体(大多时候为派生类)关联起来被称做绑定。在程序执行前进行绑定,由编译器和链接程序实现称为前期绑定。后期绑定:也称动态绑定(在程序运行过程中动态实现绑定)如果一种语言想实现后期绑定,就必须具有某种机制,以便在运行时能判断对象的类型,从而调用适当的方法。 也就是说,编译器不知道对象的类型,但是方法调用机制能找到正确的方法体,并加以调用。后期绑定

2015-01-07 21:00:32 569

转载 使用Xshell连接Ubuntu

1先安装Xshell . 2然后在要链接的Ubuntu主机下开启SSH服务, 如果没有开启需要安装openssh-server: sudo apt-get install openssh-server    使用ps -e | grep ssh,如果只有ssh-agent表示还没启动,需要/etc/init.d/ssh start;有sshd说明已启动。3.打开Xshell,选

2014-12-29 16:51:07 595

转载 linux服务器系统CentOS、uBuntu、Gentoo、FreeBSD、Debian的比较

CentOS其实是Redhat的内核,感觉是会成熟稳定一点,相比旧Redhat,他多了一个yum的命令,学Debian一样自动安装软件;但我感觉CentOS的可以Yum的东西相比Debian或Ubuntu,实在太少了;CentOS游走在年轻与成熟之间,它比Ubuntu更注重安全性,你看他的CentOS5.0默认一装好就自带并打开防火墙就知道;而且有一个叫SELinux的东东在里面,让不同的程序之间

2014-12-29 16:31:55 1410

转载 C/C++浮点数在内存中的存储方式

任何数据在内存中都是以二进制的形式存储的,例如一个short型数据1156,其二进制表示形式为00000100 10000100。则在Intel CPU架构的系统中,存放方式为  10000100(低地址单元) 00000100(高地址单元),因为Intel CPU的架构是小端模式。但是对于浮点数在内存是如何存储的?目前所有的C/C++编译器都是采用IEEE所制定的标准浮点格式,即二进制科学表示法

2014-12-17 11:45:47 741

转载 JavaScript编码函数escape()、encodeURI()、encodeURIComponent()区别

escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 。1 escape()函数定义和用法 escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。语法 escape(string)参数  描述  string  必需。要被转义或编码

2014-12-05 15:27:04 471

原创 Unicode 笔记

字节和字符的区别  字节(octet)是一个八位的存储单元,0-255 , 标准的assic,  字符(character或者word)为语言意义上的符号,范围就不一定了。UCS-2中定义的字符范围为0~65535,它的一个字符占用两个字节。big-endian和Littl Endian一个字符可能占用多个字节,多个字节的存储方式在x86架构下采用little-endian(小端,

2014-12-02 11:23:57 666

转载 JS判断浏览器是否为IE 以及屏幕分辨率

var dstURL = "http://www.baidu.com"if(-[1,]){ //alert("this is not ie"); //window.location.href = "http://www.baidu.com"}else{ //alert("this is ie"); var width = window.screen.width; if(w

2014-11-28 15:34:44 1187

原创 MakeFile 学习笔记一 核心内容

linux下的make , windows下的nmake头文件中。为了避免重复包含使用#ifndef FILE2_H_#define //条件编译 ...#else ...语句2#endif//以及ifdef用它隔离一些与特定头文件,程序库和其他文件版本有关的代码。#ifdef 语句1 //常常测试是否定义 __DEBUG //程序2 #define .

2014-11-04 10:53:02 656

转载 windows 下的C标准库, C运行库(CRT ,run-time), windows API 解释. 以及linux C扩展

C运行库和C标准库的关系

2014-10-31 10:29:08 2507

转载 Sublime Text 使用介绍/全套快捷键及插件推荐

开始使用Sublime Text:Sublime Text有Dev版本,推荐使用,下载地址,一般推荐下载便携版本(Portable version),这样拿来拿去很方便,也不用安装,而且插件和主体在一个目录下,便携。Sublime Text快捷键:Ctrl+Shift+P:打开命令面板Ctrl+P:搜索项目中的文件Ctrl+G:跳转到第几行Ctrl+W:关闭当前打开文件

2014-10-15 16:47:34 546

转载 WordPress模板常用函数汇总

一)WordPress基本模板文件一套完整的WordPress模板应至少具有如下文件:123456789101112style.css : CSS(样式表)文件 index.php : 主页模板 archive.php : Archive/Category模板 404.php : Not Found 错

2014-10-14 22:06:31 969

转载 Zend Studio的一些常用配置和使用帮助手册

或许你可以用Dreamweaver、Notepad++或者Editplus这样的东西完成你的系统,但所谓“工欲善其事,必先利其器”,偶认为一个给力的IDE对于新手还是很必要的,而Zend作为PHPer们公认的最前IDE,自然成为了我的选择,我安装的版本是7.2.1,本文就介绍一下自己对于这个“新”工具的改造吧,最后留几个问题让高手们给解决下。1.更改Zend工作目录 2.更改Zen

2014-10-08 14:36:23 1194

转载 LDR链调试手记(TEB获取动态函数地址)

转自看雪LDR链调试手记   无论是编写ShellCode还是外壳程序,都需要动态的获取各个api的实际地址,最通用的方法之一,莫过于通过得到各个DLL模块的基址,再遍历其导出表。其中,获得各个模块基址中,通过PEB结构来获取的方法尤为的精简和通用。这里是我之前调试和学习时碰到的一些问题的总结,于是就有了这一篇手记。

2014-09-28 10:14:51 2334

转载 深入剖析PE文件

一、 基本结构。

2014-09-25 11:16:35 901

转载 内存偏移(RVA)与文件偏移(offset)相互转换

写此文源于前一阵写一个PE修改工具,需要用到内存偏移向文件偏移转化。

2014-09-19 11:26:20 3792 1

转载 IPC链接

只是做个记录:

2014-09-17 15:26:13 724

转载 开源安全工具汇总

数据丢失预防篇OpenDLP针对的商用软件:RSA数据丢失防护套件、CheckPoint DLP Software Blade和赛门铁克数据丢失防护产品系列OpenDLP具有集中管理、大规模分发的特点,它可以同时识别驻留在成千上万个基于Windows或UNIX的系统上的敏感数据。它既提供了基于代理的扫描功能,又提供了无需代理的扫描功能,还包含一个易于使用的、基于Web的界面。支持的

2014-09-17 14:54:03 2022

转载 WinXP/Win7/Win8通用shellcode

转自http://hi.baidu.com/egodcore/item/c13e67fe197c940fc6dc45f5众所周知,在windows xp时代未启用ASLR(Address space layout randomization,堆栈地址随机分布),我们在编写shellcode可以利用硬编码法,将地址写入shellcode,但是这种方法的缺点很明显--不具备通用性。在xp sp

2014-09-17 14:17:17 1314

转载 VC++检测VM、VPC虚拟机代码 .

C++检测VM、VPC虚拟机代码,添加后只需要调用IsVirtualMachine即可判断是否在虚拟机运行!AntiVM.h

2014-09-17 09:54:14 1187

转载 shellcode转换成汇编代码

方法1:提取ShellCode中的机器码---->把机器码粘贴到WinHEX并保存成exe文件---->用C32Asm反汇编---->得到反汇编码。方法2:提取ShellCode中的机器码---->用OllyDBG随便打开一个exe程序---->把机器码直接二进制粘贴到OllyDBG---->得到反汇编码。

2014-09-16 16:24:26 4974

转载 C++代码反汇编后的函数调用过程,堆栈寄存器EBP和ESP

栈是从高地址向低地址生长的。  ebp始终指向当前栈帧的栈底部 ,

2014-09-15 11:24:34 1363

转载 PE文件基址重定位

PE文件基址重定位(Base Relocation),程序编译时每个模块有一个优先加载地址ImageBase,这个值是连接器给出的,因此连接器生成的指令中的地址是在假设模块被加载到ImageBase前提之下生成的,

2014-09-01 14:29:00 1225

转载 关于#pragma code_seg

在所有的预处理指令中,#pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma 指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的, 且对于每个编译器都是不同的。其格式一般为: #Pragma Para 其中Para 为参数,下面来看一些常用

2014-08-25 11:52:33 1648

原创 VIM笔记

w e G f t x dd yy p u 都可以配合数字键 以及移动的j k h l从当前光标移动b ( ) { } 快速扫描复习:0 ^ g_ $ (ctrl+r) NG gg G .% * #v 0y$ gu gU guwf t dt"vi" v2)0 I-- [ESC] (windows vi 块操作) 自动补齐:split 和:vsplit }

2014-08-15 23:52:42 734

原创 PEB结构的获取

PEB结构----枚举用户模块列表。PEB

2014-08-15 10:44:59 3453

原创 C# 中使用的一些日期转换

1:String转DateTimestring mytime = "2005-6-7 12:23:34";   IFormatProvider culture = new CultureInfo("zh-CN", true);     //期望的时间格式为月,日必须为两位,不足两位,左边应该填0补充   string[] expectedFormats = {"yyyy-MM-dd

2014-08-14 19:59:53 591

转载 sublime text2使用教程

免费无限制无限期的试用权

2014-08-12 20:21:18 1262

转载 SQL中Case语句用法讨论

Case具有两种格式。简单Case函数和Case搜索函数。 --简单Case函数             CASE sex             WHEN '1' THEN '男'             WHEN '2' THEN '女'             ELSE '其他' END --Case搜索函数             CASE WHEN sex =

2014-08-12 11:02:16 532

原创 c++ 使用map文件查找程序崩溃原因(通过VA定位源程序行号)

一般程序崩溃可以通过debug,找到程序在那一行代码崩溃了,最近编一个多线程的程序,都不知道在那发生错误,多线程并发,又不好单行调试,终于找到一个比较好的方法来找原因,通过生成map文件,由于2005取消map文件生成行号信息(vc6.0下是可以生成行号信息的,不知道microsoft怎么想的,在2005上取消了),只能定位在那个函数发生崩溃。这里可以通过生成cod文件,即机器码这一文件,具体定位

2014-07-08 09:38:00 1974

转载 Python之os.walk和os.path.walk

一、os.walk()函数声明:os.walk(top,topdown=True,onerror=None)(1)参数top表示需要遍历的顶级目录的路径。(2)参数topdown的默认值是“True”表示首先返回顶级目录下的文件,然后再遍历子目录中的文件。当topdown的值为"False"时,表示先遍历子目录中的文件,然后再返回顶级目录下的文件。(3)参数oner

2014-05-21 09:21:03 547

转载 Delphi中的Windows API调用

为了能在Windows下快速开发应用程序,Delphi对Windows的控件都进行了很好的封装,这样,我们就可以直接使用Delphi的控件来编写程序,而不用使用格式、调用控制复杂的API来进行开发,为我们节省了大量的开发时间。如何在Delphi中调用数据类型不兼容的API呢

2014-05-20 16:06:58 1614

转载 Delphi的学习笔记——内存操作函数

给字符串分配指针,我们马上可以联想到有以下这些函数可供选择:GetMem AllocMem ReallocMem FreeMem GetMemory ReallocMemory FreeMemory New Dispose NewStr DisposeStr StrNew StrAlloc StrDispose

2014-05-19 15:30:51 719

转载 Delphi的学习笔记——格式化输出函数(总结的很全面)

第一部分:var s: string; begin //指令类型 type s := Format('最大整数是: %d; 最小整数是: %d',[MaxInt,Low(Integer)]); //返回: 最大整数是: 2147483647; 最小整数是: -2147483648 { 提示: 格式指令必须以 % 开始, 不区分大小写, %d 代表一

2014-05-19 15:22:25 711

转载 Delphi学习笔记——文件路径相关的字符串操作(综合)

uses HTTPApp, Masks; procedure TForm1.Button1Click(Sender: TObject); var ss,s: string; begin //先提取一个文件名的字符串 ss := Application.ExeName; ShowMessage(ss); //C:\Documents and

2014-05-19 15:20:44 671

转载 C/C++沉思-----多态时一定要将父类(基类)的析构函数定义为虚函数

//test.cpp #include using namespace std; class father { public: father() { mPtr = new int; } ~father() { delete mPtr; cout

2014-05-19 14:33:19 816

转载 Delphi学习笔记——方法

和其他语言一样,Object Pascal语言的方法是属于一个给定对象的过程和函数。构造器和析构函数也是方法。一、方法的类型方法的类型包括静态(static)、虚拟(virtual)、动态(dynamic)或消息处理(message)。

2014-05-19 14:29:11 927

空空如也

空空如也

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

TA关注的人

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