自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(182)
  • 资源 (5)
  • 收藏
  • 关注

原创 C++ 非托管COM在C#下调用的问题

最近打算使用新思的触摸板开发包实现一个手势软件整个SDK主要由以下几部分组成:说明文档样例代码.dll动态链接库文件.lib库文件.h头文件新思的SDK是已经有超过10年没有更新了,整个SDK只提供了C++和VB的接口而我的软件使用的是C#编写的,这就涉及到一个问题,我怎样才能实现在C#中调用SDK呢?第1种解决办法:由于SDK提供了

2016-08-24 16:52:12 434

原创 python各编码转换方法

1、latin转unicodestr('string')string表示:latin格式的字符串2、bytes转unicode(b'string').decode(type='utf-8')string前的b表示:string作为bytestype='utf-8'表示默认转化为utf-8,此项可不填3、unicode转bytes('string').

2016-05-07 23:08:25 1315

转载 PHP_$_SERVER中QUERY_STRING,REQUEST_URI的用法

$_SERVER存储当前服务器信息,其中有几个值如$_SERVER["QUERY_STRING"],$_SERVER["REQUEST_URI"],$_SERVER["SCRIPT_NAME"],$_SERVER["PHP_SELF"]常常容易混淆,以下通过实例详解$_SERVER函数中QUERY_STRING,REQUEST_URI,SCRIPT_NA

2016-05-07 12:08:17 865

转载 js中return false(阻止)的用法

return false 阻止表单提交不起的问题困扰我很久,关于onsubmit=return false有以下几点要注意的地方,感兴趣的各位可以参考下return false 阻止表单提交不起今天这个问题困扰了我很久,在网上找了很多资料,基本上关于onsubmit=return false有以下几点要注意的地方:1. return 的返回值问题,函数中return一旦有返回值

2016-05-05 09:38:51 1405

转载 【Linux开发技术之常见问题】一个建立线程时常见的问题:invalid conversion from `void*' to `void*(*)(void*)

作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/void main_thread ( void *ptr ) {   char *message1 = "Thread 1";   char *message2 = "Thread 2";   pthread_t thread3, thread4;   int iret3, ire

2016-04-29 20:17:12 1571

转载 "Cannot declare member function ...to have static linkage"错误

基本的语法错误,郁闷了我半天,相关的资料可以参考:http://cplusplus.syntaxerrors.info/index.php?title=Cannot_declare_member_function_%E2%80%98static_int_Foo::bar()%E2%80%99_to_have_static_linkage 英文解释:if you declare a me

2016-04-28 21:56:20 805

转载 如何使 类的成员函数作为回调函数

原来...如何使 类的成员函数作为回调函数如果试图直接使用C++的成员函数作为回调函数将发生错误,甚至编译就不能通过。其错误是普通的C++成员函数都隐含了一个传递函数作为参数,亦即“this”指针,C++通过传递this指针给其成员函数从而实现程序函数可以访问C++的数据成员。这也可以理解为什么C++类的多个实例可以共享成员函数却-有不同的数据成员。由于this指针的作用,使得

2016-04-28 21:46:39 310

原创 linux使用心得

1、用命令行的文件操作时可以用tab键补全输入文件名时按tab键可以根据你已经输入的文件名自动补全后面的,如果有一个以上的可选项,系统会列出可以输入的文件名。2、linux 第三方软件源安装centos自带的软件源软件好少,可以安装rpmforge和epel这两个软件源,这样装软件的时候就很方便了,而且也不容易安装出错3、通过源代码安装软件进入到下载的软件源码所

2016-04-20 11:57:58 292

转载 强大的vim配置文件,让编程更随意

花了很长时间整理的,感觉用起来很方便,共享一下。我的vim配置主要有以下优点:1.按F5可以直接编译并执行C、C++、java代码以及执行shell脚本,按“F8”可进行C、C++代码的调试2.自动插入文件头 ,新建C、C++源文件时自动插入表头:包括文件名、作者、联系方式、建立时间等,读者可根据需求自行更改3.映射“Ctrl + A”为全选并复制快捷键,方便复制代码4.按“F

2016-04-12 22:16:52 296

原创 OD使用心得

1、对于找不到下断的地点的程序:可以先直接运行,随意输入序列号,按确定,等待程序弹窗停下。返回到OD,按F12暂停,此时点工具栏中的“k”,会出现当前的调用堆栈,找到需要找的函数名,右键->显示调用,即可显示出该函数的程序领空所在位置。此方法可适用于VB的P-code方式编译的程序未完待续。。。。

2016-03-25 22:33:59 876

转载 c++中冒号(:)和双冒号(::)的用法

转载于:http://fengqing888.blog.163.com/blog/static/3301141620100623933512/1.冒号(:)用法(1)表示机构内位域的定义(即该变量占几个bit空间)typedef struct _XXX{unsigned char a:4;unsigned char c;} ; XXX(2)构

2016-03-25 17:41:19 737

转载 utf-8和unicode的区别:字符编码的辨析

总的来说就是一句话:utf-8是变长的,作为文件存储时用,unicode是定长的,将文件读取到内存时用我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制1111

2016-03-24 21:49:08 460

原创 linux下使用Qt库进行开发心得

一、在qtcreator中使用其他的c++开发库在安装好Qt后,直接在命令行中输入qtcreator可以直接打开Qt的IDE在使用qtcreator的过程中,常常需要把其他的一些开发库包含进来,这里我需要使用到一个抓包的库:libpcap。但网上的教程大都是编译时在命令行中加入 -lpcap  其中  -l是固定的,pcap为你在qt程序中#include这个头文件名。在Qtc

2016-03-24 13:49:43 2280

转载 ACM之Java输入输出

一、Java之ACM注意点1. 类名称必须采用public class Main方式命名2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错误,所以在我看来好多OJ系统做的是非常之垃圾3. 有些OJ上的题目会直接将OI上的题目拷贝过来,所以即便是题目中有输入和输出文件,可能也不需要,因为在OJ系统中一般是采用标准输入输出,不需要文件4. 在有多行

2016-03-06 22:03:19 422

转载 关于符号位扩展你又知道多少

转载请注明出处http://blog.csdn.net/pony_maggie/article/details/37535577作者:小马先看两段代码, 一个是C,一个是java。 [cpp] view plain copy int _tmain(int argc, _TCHAR* argv

2016-01-24 17:33:51 1899

转载 PE文件详解(七)--资源表

我们知道,Windows 将程序的各种界面定义为资源,包括加速键(Accelerator)、位图(Bitmap)、光标(Cursor)、对话框(Dialog Box)、图标(Icon)、菜单(Menu)、串表(String Table)、工具栏(Toolbar)和版本信息(Version Information)等。为了吸引大家的兴趣和目光,咱先来做个学前试验,然后再憧憬一下我们将来学

2016-01-12 14:42:51 1704

转载 PE文件详解(六)--基址重定位

这一节对于讲来研究病毒原理的研究影响比较大,大家务必要深入理解~但是吧,咱的权威教材看雪的《加密与解密》在这一节的讲解上实在不给力,很多初学者看得云里雾里的。大家意见一致啵 ?!为了让大家能够更容易的接受,小甲鱼决定通过自问 - 自答循环渐进的模式给大家讲解基址重定位的原理和应用。问题一:什么是基址重定位?答:重定位就是你本来这个程序理论上要占据这个地址,但是由于某

2016-01-12 14:42:04 748

转载 PE文件详解(五)--导出表

当PE 文件被执行的时候,Windows 加载器将文件装入内存并将导入表(Export Table) 登记的动态链接库(一般是DLL 格式)文件一并装入地址空间,再根据DLL 文件中的函数导出信息对被执行文件的IAT 进行修正。基础补充:很多朋友可能看到这里会有点懵,各位看官请允许小甲鱼啰嗦一下,照顾初学者。我们都明白Windows 在加载一个程序后就在内存中为该程序开辟一个单独的虚拟

2016-01-12 14:41:11 491

转载 PE文件详解(四)--导入表2

在此之前,我们已经对这个输入表进行了一些实践和理解,这有助于大家对这个概念更进一步的加深认识。小甲鱼觉得,越是复杂的问题我们应该越是去动手操作它,认识它,这样才容易熟悉它!在上一节课我们像小鹿一样的乱撞,终于撞到了输入表里边包含的函数名称,嘿嘿,不过地址,我们还是没能找着……这节课我们将深入来剖析输入表的结构,通过结合实例分析来帮助大家理解输入表的工作原理。输入表结构回

2016-01-12 14:40:40 440

转载 PE文件详解(四)--导入表1

捷径并不是把弯路改直了,而是帮你把岔道堵上!走得弯路跟成长的速度是成正比的!不要害怕走上弯路,弯路会让你懂得更多,最终还是会在终点交汇!岔路会将你引入万劫不复的深渊,并越走越深……在开始讲解输入表(导入表)概念之前,请允许小甲鱼童鞋用简短的几句话来总结之前我们学过的内容,并做进一步的思想综合提升,注意咯!首先,我们知道PE 文件中的数据被载入内存后根据不同页面属性被划分

2016-01-12 14:39:43 381

转载 PE文件详解(三)--区块描述、对齐值以及RVA

各种区块的描述:很多朋友喜欢听小甲鱼的PE详解,因为他们觉得课堂上老师讲解的都是略略带过,绕得大家云里雾里~刚好小甲鱼文采也没课堂上的教授讲的那么好,只能以比较通俗的话语来给大家描述~通常,区块中的数据在逻辑上是关联的。PE 文件一般至少都会有两个区块:一个是代码块,另一个是数据块。每一个区块都需要有一个截然不同的名字,这个名字主要是用来表达区块的用途。例如有一个区块叫.rdata

2016-01-12 14:38:51 622

转载 PE文件详解(二)--节表和节

PE文件到内存的映射在执行一个PE文件的时候,windows 并不在一开始就将整个文件读入内存的,二十采用与内存映射文件类似的机制。也就是说,windows 装载器在装载的时候仅仅建立好虚拟地址和PE文件之间的映射关系。当且仅当真正执行到某个内存页中的指令或者访问某一页中的数据时,这个页面才会被从磁盘提交到物理内存,这种机制使文件装入的速度和文件大小没有太大的关系。

2016-01-12 14:37:32 4137

转载 PE文件详解(一)--数据结构字段

DOS MZ头IMAGE_DOS_HEADER STRUCT :IMAGE_DOS_HEADER STRUCT{+0hWORDe_magic //Magic DOS signature MZ(4Dh 5Ah) DOS可执行文件标记+2h WORD e_cblp //Bytes on last page of file+4hWORD e_cp

2016-01-12 14:36:43 1467

转载 windows PE结构解析

1 基本概念下表描述了贯穿于本文中的一些概念:名称描述地址是“虚拟地址”而不是“物理地址”。为什么不是“物理地址”呢?因为数据在内存的位置经常在变,这样可以节省内存开支、避开错误的内存位置等的优势。同时用户并不需要知道具体的“真实地址”,因为系统自己会为程序准备好内存空间的(只要内存足够大)镜像文件包含以EXE文件为代表的“可执行

2016-01-12 14:26:33 2108

转载 PE文件结构分析(代码)

PE文件格式(Portable Executable File Format)是windows下的可执行文件的格式, 从某种意义上讲,它反映了windows操作系统的工作方式, 对于它的了解, 可以帮助我们更加了解windows操作系统,对于windows下的编程,好处也是大大的。在本文中, 我并不打算大讲特讲PE文件的构成是什么,每个字段是什么意思, 这些资料可以说在网上是浩瀚如海,

2016-01-12 13:17:25 540

转载 变形PE头添加节形式感染

前言:  今天我们讲的主题是“变形PE头添加节形式感染”。因为大部分的添加节过程,在对节表结构尾部空隙不够写入一个新的节表结构时,都处理的不是很恰当。今天我来给大家带来一种思路,通过变形PE头来让我们有足够的空隙写入一个新的节表结构。1. 变形PE头原理:  这里的变形PE头的思路是用的比较方便的方法,就是将结构融合起来。聪明的你是否已经想到了? 就是将IMAGE_DO

2016-01-12 13:13:14 373

转载 windows消息机制

一 Windows中有一个系统消息队列,对于每一个正在执行的Windows应用程序,系统为其建立一个“消息队列”,即应用程序队列,用来存放该程序可能创建的各种窗口的消息。应用程序中含有一段称作“消息循环”的代码,用来从消息队列中检索这些消息并把它们分发到相应的窗口函数中。 二 Windows为当前执行的每个Windows程序维护一个「消息队列」。在发生输入事件之后,Windows将

2016-01-12 13:10:36 231

转载 匈牙利命名表

前缀类型描述实例arrArray静态数组arrPointbBOOL布尔值bEnabledbyunsigned char(BYTE)8位无符号字符byWeekchChar 8位字符chGradetch

2016-01-12 13:06:30 425

转载 windows的体系结构

了解了windows的体系结构才知道reactos到底要干什么,以及如何干,因为reactos的目标是兼容windows。下面是windows的体系结构: 这是整个windows的体系结构的总览。从图上可以看出系统被分成内核模式和用户模式。内核模式的构成文件是系统的核心文件她包含:1.hal

2016-01-12 12:16:18 1064

转载 PE文件格式详解(下)

预定义段  一个Windows NT的应用程序典型地拥有9个预定义段,它们是.text、.bss、.rdata、.data、.rsrc、.edata、.idata、.pdata和.debug。一些应用程序不需要所有的这些段,同样还有一些应用程序为了自己特殊的需要而定义了更多的段。这种做法与MS-DOS和Windows 3.1中的代码段和数据段相似。事实上,应用程序定义一个独特的段的方法是使

2016-01-12 10:08:07 271

转载 PE文件格式详解(上)

Windows NT 3.1引入了一种名为PE文件格式的新可执行文件格式。PE文件格式的规范包含在了MSDN的CD中(Specs and Strategy, Specifications, Windows NT File Format Specifications),但是它非常之晦涩。    然而这一的文档并未提供足够的信息,所以开发者们无法很好地弄懂PE格式。本文旨在解决这一问题,它会对整个

2016-01-12 10:05:30 490

原创 2015 ACM/ICPC 沈阳赛区网络赛 1010.Jesus Is Here (HDOJ5459)

把s[i]分为s[i-1]的内部组合,s[i-2]的内部组合,以及s[i-1]和s[i-2]的内部组合这三部分,接下来推出递推公式就可以了#include#define N 250000#define mod 530600414long long a[N],b[N],c[N],d[N],s[N],k[N],v[N];int main(){ s[3]=0; s[4]=0; s[5]

2015-09-21 22:30:26 781

原创 简单词法分析器实现

编写分析器有两种方法,一种是通过DFA对单词进行识别,二是通过直接编写程序进行识别。本程序采用DFA对单词进行识别。DFA的实现方法,大概思想和书上一致,在程序中,则是用二维数组代表状态转换矩阵,用一维数组表示终态。一个词法编辑要实现的功能主要包括以下几点:能够识别标识符、关键字、数字和运算符,对注释进行过滤,同时还能识别出程序错误。使用说明:本程序的输入由当前目录下的in.t

2015-06-23 20:51:17 2325

原创 javascript学习

以前学的js都只是一些基本语法,今天系统地学习了一下整个框架首先:JavaScript 是属于 web 的语言,它适用于 PC、笔记本电脑、平板电脑和移动电话。JavaScript 被设计为向 HTML 页面增加交互性。js的基本语法就不说了,接下来说说js的一些高级应用JS HTML DOMjs可以用于操作所有的html元素及其

2015-06-18 21:33:44 604

转载 codeblocks 使用汇总

codeblocks 使用汇总集成本帖提到的所有补丁,非官方,双编译器(VC9、MinGW4.4.3)绿色版,解压密码:csdn   >> http://portablecb.googlecode.com/files/LoveDEV.7z由于集成VC9,所以请试用后24小时内删除!官方公告:http://forums.codeblocks.org/index.php

2015-06-18 11:26:36 870

原创 HDU 3535 AreYouBusy

分组背包最多取一个的组,则对于该组来说,每一个状态只可能由前一组的状态过来,分不取和取两种至少取一个,则没了不取的选择,即没有dp[i][j]=dp[i-1][j]的递推式任意取,即01背包,取法包括由前一组不取或取一个,或由该组取一个dp[i][j]表示前i组,消耗j时间所能取得的最大值初值赋为-1,表示该状态不可达,对于dp[0],初值赋为0,即什么都没有的时候最大的快乐值

2015-06-04 22:22:15 615

原创 SPOJ QTREE Query on a tree

树链剖分把边权的模板也敲了一下关键在于弄明白点和边的对应关系#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define out(x) cout<<#x<<": "<<x<<e

2015-06-04 22:12:10 491

原创 2013湘潭赛

XTU1168 Alice and Bob因为数据只有10000范围,直接递推就可以了#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define out(x) cout<<#x<

2015-06-03 22:21:01 467

原创 2015上海邀请赛

这次上海邀请赛差一点就能拿到牌子了,好可惜。。。。。Game回来写了下,刚开始把重链写成了最大权子树,无限WA,然后一直在调。。。。。发现我一旦提交上去错了就始终在找程序BUG,从来没想过是不是思路哪里错掉了。。。。其实这种交上去WA之后应该先去找思路上的错误,而不是怀疑题目有陷阱什么的。。。#include#include#include#include#include#i

2015-06-02 10:02:23 1138

原创 HDU 3966 Aragorn's Story

把树链剖分搞了一下,树链剖分就是把某树按重链和轻链映射到某一线性的数组上去,这样对于某条路径的查询和修改就变成了树状数组和线段树的事了。这道题在HDU上要加个爆栈的,而且还要用c++,g++也会栈溢出#pragma comment(linker, "/STACK:1024000000,1024000000")#include#include#include#include#inc

2015-05-31 20:39:23 420

AXMLPrinter2修正版(低积分)

修复之前的 java.lang.ArrayIndexOutOfBoundsException: 128 at android.content.res.StringBlock.getShort(StringBlock.java:231) at android.content.res.StringBlock.getString(StringBlock.java:91) at android.content.res.AXmlResourceParser.getName(AXmlResourceParser.java:140) at test.AXMLPrinter.main(AXMLPrinter.java:56) 修复AXMLPrinter2反编译573的错误

2019-08-01

2014组网技术第02课_Linux系统安装

2014组网技术第02课_Linux系统安装 可以看一看

2014-09-16

离散数学屈婉玲版课后答案

离散数学屈婉玲版课后答案,里面有各习题答案,不过有些习题的答案略了

2014-09-16

EX1.1 Linux入门

关于Linux的授课教程PPT,想要自学的或者想上课用的老师可以下载来看看

2014-03-21

空空如也

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

TA关注的人

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