Lv.的博客

随笔分类 -  c++

摘要:关于sleep函数,我们先来看一下他的作用:sleep函数是使调用sleep函数的线程休眠,线程主动放弃时间片。当经过指定的时间间隔后,再启动线程,继续执行代码。sleep函数并不能起到定时的作用,主要作用是延时。在一些多线程中可能会看到sleep(0);其主要目的是让出时间片。sleep函数的精度... 阅读全文
posted @ 2015-09-14 10:40 Avatarx 编辑
摘要:[cpp]view plaincopy//将exe作为资源加入,然后再释放出来,并运行try{HRSRChRes=FindResource(NULL,MAKEINTRESOURCE(IDR_EXE1),_T("EXE"));if(NULL==hRes)return;DWORDdwSize=Sizeo... 阅读全文
posted @ 2015-09-09 17:15 Avatarx 编辑
摘要:典型进程隐藏技术1 基于系统服务的进程隐藏技术在 W I N 9X 系列操作系统中, 系统进程列表中不能看到任何系统服务进程, 因此只需要将指定进程注册为系统服务就能够使该进程从系统进程列表中隐形在win9x下用RegisterServiceProcess函数隐藏进程,NT架构下用不了 即win20... 阅读全文
posted @ 2015-09-09 15:32 Avatarx 编辑
摘要:将多个文件合并成一个最终可执行文件,运行这个最终文件时,就相当于运行了合并前的多个文件。这种程序在木马程序合并中会经常用到,你想知道它是怎么用程序实现的么?下面我就用我用VC6.0做的一个文件捆绑器的例子代码来告诉你,程序运行后界面如下:图一基本组成思想:其实,其中的构成思想非常简单。建立一个新的二... 阅读全文
posted @ 2015-09-09 14:25 Avatarx 编辑
摘要:众所周知,在微软的操作系统下编写应用程序,最主要的还是通过windows所提供的api函数来实现各种操作的,这些函数通常是可以直接使用的,只要包含windows.h这个头文件。 今天我们主要介绍的是几个常用的api函数,通过它我们可以获取用户磁盘的相关信息。 示例程序:请点击附件下载。 其... 阅读全文
posted @ 2015-09-08 11:27 Avatarx 编辑
摘要:今天,我们来了解一下,在应用程序中,如何启动一个进程,然后把这个进程结束掉。实现这一功能有替代方案,即使用.NET库中的System::Diagnostics::Process类来完成。在Win32中,启动一个进程可以理解为创建进程,所以可以调用CreateProcess函数,结束进程则调用Term... 阅读全文
posted @ 2015-09-07 17:49 Avatarx 编辑
摘要:CreateFile打开文件要对文件进行读写等操作,首先必须获得文件句柄,通过该函数可以获得文件句柄,该函数是通向文件世界的大门。ReadFile从文件中读取字节信息。在打开文件获得了文件句柄之后,则可以通过该函数读取数据。WriteFile向文件写入字节信息。同样可以将文件句柄传给该函数,从而实现... 阅读全文
posted @ 2015-09-07 13:31 Avatarx 编辑
摘要:开源代码:http://www.zlib.net/zlib使用手册:http://www.zlib.net/manual.htmlzlib wince版:http://www.tenik.co.jp/~adachi/wince/在这里,你可以查看基于各种操作系统平台的压缩与解缩代码实现。<<<<<<... 阅读全文
posted @ 2015-09-07 13:24 Avatarx 编辑
摘要:当前的存储器,多以byte为访问的最小单元,当一个逻辑上的地址必须分割为物理上的若干单元时就存在了先放谁后放谁的问题,于是端(endian)的问题应运而生了,对于不同的存储方法,就有大端(big-endian)和小端(little- endian)两个描述。字节排序按分为大端和小端,概念如下大端(b... 阅读全文
posted @ 2015-07-01 10:17 Avatarx 编辑
摘要:1.微秒级的延时肯定不能基于消息(SetTimer函数),因为一出现消息堵塞等就会影响精度,而且setTimer单位才是毫秒.实际响应时间可能要到55毫秒左右.2.微秒级的延时也不能不能基于中断,VxD最快的时钟服务程序Set_Global_Time_Out函数才能保证1毫秒的精度.其他挂接int ... 阅读全文
posted @ 2015-06-05 09:34 Avatarx 编辑
摘要:上一篇文章也讲过,find()函数只能处理简单类型的内容,也就是缺省类型,如果你想用一个自定义类型的数据作为查找依据则会出错!这里将讲述另外一个函数find_if()的用法这是find()的一个更强大的版本。这个例子演示了find_if(),它接收一个函数对象的参数作为参数, 并使用它来做更复杂的评... 阅读全文
posted @ 2015-05-27 16:02 Avatarx 编辑
摘要:C++中将string类型转换为int, float, double类型 主要通过以下几种方式:# 方法一: 使用stringstreamstringstream在int或float类型转换为string类型的方法中已经介绍过, 这里也能用作将string类型转换为常用的数值类型。Demo:[cpp... 阅读全文
posted @ 2015-05-19 10:50 Avatarx 编辑
摘要:分类:C/C++2012-08-30 21:402017人阅读评论(2)收藏举报任何管理某资源的类比如智能指针需要遵循一个规则(The Rule of Three):如果你需要显式地声明一下三者中的一个:析构函数、拷贝构造函数或者是拷贝赋值操作符,那么你需要显式的声明所有这三者。拷贝构造函数和析构函... 阅读全文
posted @ 2015-05-19 10:25 Avatarx 编辑
摘要:dll 文件可以导入变量,函数,和C++类,但是导入变量会使执行程序与dll紧耦合,而C++类导入则需要两个文件的开发商所用的编译器相兼容,所以做好只导入函数;创建dll :头文件:#ifdef MYLIBAPI //在dll源文件中必须定义这个宏为导出宏#else //因为执行文件中必然没有定义这... 阅读全文
posted @ 2015-05-14 23:34 Avatarx 编辑
摘要:前言TinyXML是一个开源的解析XML的解析库,能够用于C++,能够在Windows或Linux中编译,使用TinyXML进行C++ XML解析,使用简单,容易上手。这个解析库的模型通过解析XML文件,然后在内存中生成DOM模型,从而让我们很方便的遍历这棵XML树。DOM模型即文档对象模型,是将整... 阅读全文
posted @ 2015-05-14 21:56 Avatarx 编辑
摘要:对于xml文件,目前的工作只是集中在配置文件和作为简单的信息文件来用,因此我不太喜欢使用msxml这种重量级的xml解析器,特别是使用msxml解析xml涉及到复杂的com类型转换,更是令人感觉繁琐。因此对于简单的xml文件的解析,我更愿意使用开源的TinyXml。首先介绍一下TinyXml吧。Ti... 阅读全文
posted @ 2015-05-14 21:55 Avatarx 编辑
摘要:█ 选择(select)模型是Winsock中最常见的 I/O模型。核心便是利用 select 函数,实现对 I/O的管理!利用 select 函数来判断某Socket上是否有数据可读,或者能否向一个套接字写入数据,防止程序在Socket处于阻塞模式中时,在一次 I/O 调用(如send或recv、... 阅读全文
posted @ 2015-05-14 18:43 Avatarx 编辑
摘要:在socket编程中,服务器端accept()等待一个客户端的连接,当连接成功后,accept拷贝客户端的地址信息到sin_addr里面,我们如何从sin_addr取得此客户端的Ip地址和端口号呢?实际上,当sockaddr_in.sin_family = AF_INET时,sockaddr =so... 阅读全文
posted @ 2015-05-14 13:13 Avatarx 编辑
摘要:accept()不是监听,accept()是接受新连接。listen()是进入监听状态,表示愿意接收连接请求。listen之后有连接请求就将其放到队列中,accept()时把新连接请求从队列中取出,建立新的socket。 阅读全文
posted @ 2015-05-14 10:39 Avatarx 编辑
摘要:win32线程池代码(WinApi/C++)健壮, 高效,易用,易于扩, 可用于任何C++编译器//说明, 这段代码我用了很久, 我删除了自动调整规模的代码(因为他还不成熟)/**************************************************************... 阅读全文
posted @ 2015-05-13 23:47 Avatarx 编辑

点击右上角即可分享
微信分享提示