自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Civet148的专栏

Can't change ,but forget...

  • 博客(75)
  • 资源 (4)
  • 收藏
  • 关注

原创 对已经detach的线程采用pthread_kill检测线程是否存活时会有问题

在公司的某个项目中,启动了32个线程进行任务处理。其中只有3个线程真正执行了任务,其他线程都因没有任务直接退出了。在所有任务处理完成后,主线程使用phtread_kill进行线程存活检查时在Linux下会导致程序崩溃,但是在AIX下则无任何问题。(线程在执行函数中pthread_detach了)/*检查所有线程是否已经停止,对于没有停止的发送退出消息*/// for(i = 0;

2013-11-15 15:01:43 2220

转载 Linux下检测网线是否连接

<br />#include <net/if.h>  <br /><br />//如果网卡已插上网线,返回0,否则返回-1.<br />int check_nic(char*nic)<br />{<br />    struct ifreq ifr;<br />    int skfd = socket(AF_INET, SOCK_DGRAM, 0);<br /><br />    strcpy(ifr.ifr_name, nic_name);<br />    if (ioctl(skfd, SIOCGI

2010-09-25 11:08:00 2254

原创 VS2008下定义宏do{}while(0)时出错

<br /><br />/*return 1 : little-endian, return 0:big-endian*/ <br />#define CHECK_CPU_ENDIAN(l_endian) /<br />do/**/ {/<br />union/<br />{/<br />unsigned int a;/<br />unsigned char b;/<br />}c;/<br />c.a = 1;/<br />l_endian = (c.b == 1);/<br />} while (0)/

2010-08-27 14:38:00 1159

转载 C++调试堆

本节内容内存管理和调试堆 描述堆函数的“Debug”版本。这些函数解决两个最难处理的内存分配问题:改写已分配缓冲区的结尾和内存泄漏(当不再需要分配后未能释放它们)。 调试堆中的块类型 描述在调试堆中内存块所分配到的五种分配类型。出于泄漏检测和状态报告的目的,以不同方式对这些分配类型进行跟踪和报告。 调试堆 提供有关使用调试堆的信息。信息包括:哪些调用用于“Debug”版本,释放内存块时将发生什

2007-05-15 13:20:00 1824 1

转载 Win32调试API(3)

理论:如果你以前使用过调试器,那么你应对跟踪比较熟悉。当"跟踪"一个程序时,程序在每执行一条指令后将会停止,这使你有机会去检查寄存器/内存中的值。这种单步运行的官方定义为跟踪(tracing)。单步运行的特色是由CPU本身提供的。标志寄存器的第8位称为陷阱标志trap flag。如果该位设置,则CPU运行于单步模式。CPU将在每条指令后产生一个debug异常。当debug 异常产生后,陷阱标志自动

2007-05-06 20:10:00 1476

转载 Win32调试API(2)

理论:在前面一章中,我们学会了如何装载被调试的进程以及如何处理进程中发生的事件。为了有实际用途,我们的程序应具有修改被调试程序的能力。有好几个API函数用于这一目的。ReadProcessMemory该函数允许你去读指定的进程的内存。函数原型如下: ReadProcessMemory proto hProcess:DWORD, lpBaseAddress:DWORD, lpBuffer:DWO

2007-05-06 20:09:00 1596

转载 Win32调试API(1)

理论:Win32有一些供程序员使用的API,它们提供相当于调试器的功能. 他们被称作Win32调试API(或原语).利用这些API,我们可以:加载一个程序或捆绑到一个正在运行的程序上以供调试 获得被调试的程序的低层信息,例如进程ID,进入地址,映像基址等. 当发生与调试有关的事件时被通知,例如进程/线程的开始/结束, DLL的加载/释放等. 修改被调试的进程或线程 简而言之,我们可以用这些AP

2007-05-06 20:08:00 1758

转载 使用typeid和RTTI C++获取对象运行时类名称

typeid和RTTI C++- -Tag: typeid和RTTI    C++                                           观点有一些值得商榷的地方关于typeid和RTTI的问答 问:在c++里怎么能知道一个变量的具体类型,如:c#里的typeof.还有我怎么知道一个变量的类型是某个类型的子类,也就是实现关键字IS答:1。运行时获知

2007-04-30 11:04:00 14314 1

原创 简单HTTP服务器实现

最简单的http服务器实现版权所有 codesky.net 2003-2005发表时间:2004-6-1    关键字:不详 现在有很多功能强大的http服务器,APACHE,IIS我们应该都很熟悉其实众多的http服务器都有个最基本的工作流程:1.初始化工作环境,在固定端口(80)侦听外部请求2.接收请求3.建立连接4.发送响应头部5.发送响应内容6.中断

2006-09-15 14:02:00 3340

转载 VC常用技巧集锦

(1) 如何通过代码获得应用程序主窗口的 指针?主窗口的 指针保存在CWinThread::m_pMainWnd中,调用AfxGetMainWnd实现。AfxGetMainWnd() ->ShowWindow(SW_SHOWMAXMIZED)//使程序最大化.(2) 确定应用程序的路径Use GetModuleFileName 获得应用程序的路径,然后去掉可执行文件名。

2006-08-24 20:21:00 1893

转载 端口复用劫持

安全焦点(http://www.xfocus.net)FLASHSKY([email protected])文章-------------------------------------------------因为在winsock的实现中,对于服务器的绑定是可以多重绑定的,在确定多重绑定使用谁的时候,根据一条原则是谁的指定最明确则将包递交给谁,而且没有权限之分,也就是说低级权限的

2006-08-08 09:47:00 3254

原创 Directshow中的视频捕捉

Directshow中的视频捕捉作者:aoosang<!--google_ad_client = "pub-4911831409822175";google_alternate_color = "FFFFCC";google_ad_width = 300;google_ad_height = 250;google_ad_format =

2006-07-20 14:54:00 2044

原创 Directshow中的视频捕捉

Directshow中的视频捕捉作者:aoosang<!--google_ad_client = "pub-4911831409822175";google_alternate_color = "FFFFCC";google_ad_width = 300;google_ad_height = 250;google_ad_format

2006-07-20 14:35:00 2807

转载 STL标准函数find进行vector list链表查找

#include #include #include class example{public:example(int val){i = val;}bool operator==(example const & rhs){return (i == rhs.i) ? true : false;}private:int i;};using namespace std;int main(void){ve

2006-06-16 16:31:00 6373 1

原创 Window 消息大全使用详解

消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时的坐标。这个记录类型叫做TMsg,它在Windows单元中是这样声明的:type

2006-06-05 21:28:00 1789

原创 AcceptEx函数的示例代码

2. 关于AcceptEx  使用此函数时,要包含头文:Mswsock.h,同时要链接:Mswsock.lib。可在源程序中加入下面的语句,这样在编译时,将自动链接Mswsock.lib。  #pragma comment(lib,” Mswsock.lib”)    下面是使用AcceptEx函数的示例代码:  #define STRICT  #define _WIN32_WINNT 0x050

2006-06-03 21:48:00 9816 1

原创 AcceptEx函数与完成端口的结合使用例子

这是在学《Windows网络编程(第二版)》第六章时制作的一个例子由于书中没有给出简洁的例子,本人在学这里时就费了很多时间。现在把完成的代码贴出来,供大家参考。下面包括了主程序部分,工作线程在(2)中贴出,由于代码太长。本程序在VS2003编译器编译运行。在6.0下可能需要稍加修改。#include #include #include

2006-06-02 19:28:00 8432

原创 使用IOCP进行客户socket与完成端口关联操作

typedef struct _OVERLAPPEDPLUS {OVERLAPPED ol;SOCKET s, sclient;int OpCode;WSABUF wbuf;DWORD dwBytes, dwFlags;// other useful information} OVERLAPPEDPLUS;#define OP_READ 0#define OP_WRITE 1#define OP_

2006-06-02 17:39:00 1993

原创 IOCP投递进行读操作

IOCP投递读操作当前位置:开发语言频道 > 开发语言 > VC/MFC > 网络编程 > 为什么我的IOCP投递读操作,却收不到数据???wqrz 发表于 2006-4-18 5:37:37 UINT CIocp::IoWorkerThread(LPVOID lParam){CIocp* pThis = reinterpret_cast(lParam);ASSERT(

2006-06-02 17:17:00 2340

原创 于完成端口的数据接收问题

DWORD   __stdcall       CompletionRoutine(LPVOID   Param)     {     CompletionPortModel*   pCP   =   (CompletionPortModel*)Param;     DWORD   dwNumberBytes;     PPER_HANDLE_CONTEXT   lpHandleContext  

2006-06-01 02:49:00 4695

原创 完成端口与套接字绑定的OVERLAPPED结构释放问题

1楼  hxzb7215191   (天行健,君子以自强不息)  回复于 2005-01-09 11:56:56  得分 10 很简单的     只要这样         CloseHandle(m_ComPortItemArray[Index].ovRead.hEvent);         然后你使用之前需要把这个结构清空一次. Top2楼  kingzai

2006-06-01 02:47:00 6106

原创 windows网络编程之 (三) - Winsock非阻塞select模式服务器

/************************************ 作者:  wangweixing2000 Revision By: 0.01 Revised on 2005-6-29 11:52:03 Comments: SelectModeWinSock 该程序中存在bug,没有处理多线程数据访问的冲突和判断客户端断开的有效处理!哪位有兴趣可以加上!***************

2006-06-01 00:41:00 7567 1

原创 密集型server/socket/多路复用/select

作一个tcp的服务程序,同时可能有大量的客户端连上来,希望分别记住各个socket谁有数据过来,就读出来,放到一个请求队列--这些事情用一个线程完成另外有一个结果队列,如果结果里包含了socket的编号,用一个线程专门:取出来按编号找回原来发送者socket,发回给原来的客户端还有一个就是处理线程(池),它取出请求队列里的一个请求,进行处理,把处理结果放入结果队列不知道有没有现成的框架?网上只找到

2006-05-31 23:50:00 3328

原创 在Windows中编译OpenH323(下)---------编译OpenH323

 前言:       本文只提供VC6.0的编译说明,如果想知道VC.Net下的编译过程请参看原文原文:       http://www.voxgratia.org/docs/openh323_windows.html作者 :Craig Southeren翻译  : Richard原文更新日期:2004年11月16日1.介绍     这是一篇彻底讲解如何用MSVC6.0建立Openh323的

2006-05-31 18:09:00 1211

原创 在Window下编译OpenH323(上)---------编译PWLib

前言:        本文只提供VC6.0的编译说明,如果想知道VC.Net下的编译过程请参看原文。原文 :         http://www.voxgratia.org/docs/pwlib_windows.html#msvc_headers作者 :Craig Southeren翻译  : Richard原文更新日期:2004年11月16日正文:1.简介  在OpenH323.org上所写的

2006-05-31 18:07:00 1321

原创 TCP在P2P技术中如何实现NAT

以下内容引用自:http://blogs.impx.net/dragonimp/p2p:TCP穿透NAT防火墙 原文:Establishing TCP Connections Between Hosts Behind NATshttp://www.andrew.cmu.edu/user/ggw/natblaster.pdfNATBLASTER:Establishing TCP Connecti

2006-05-20 21:30:00 3818

原创 只运行一个实例并激活以启动实例

BOOL CDBMApp::InitInstance(){  //////////系统代码 hMutexApp=::CreateMutex(NULL,FALSE,"Only One"); if(hMutexApp!=NULL) {   UINT WM_ACT=::RegisterWindowMessage("ACTIVEWINDOW");      if(GetLastError()==ERROR

2006-03-23 16:20:00 1404

原创 无标题栏对话框的拖动

 void CDBMDlg::OnLButtonDown(UINT nFlags, CPoint point) {    SendMessage(WM_SYSCOMMAND,0XF012,0);  CDialog::OnLButtonDown(nFlags, point);}

2006-03-23 16:07:00 1104

原创 WTS APIs(Windows终端服务API)获取进程信息

 Windows XP 有一个新特性叫做“快速用户转换——Fast User Switching”,这个特性允许多个用户同时在一台机器上登陆。当一个用户登陆后,另一个用户启动的进程仍然能够运行。这个神奇的特性所倚仗的是 WTS APIs。如果你想了解更多有关 WTS 的内容,可以参考 MSJ Oct99 的一篇文章:“Windows NT和 Windows 2000 终端服务APIs介绍”,作者是

2006-01-20 15:25:00 4101 2

原创 “黑客之门”后门的魅力:感染与加载(1)

 “黑客之门”介绍   黑客之门采用的目前一些先进的后门技术,它只有一个Dll文件,通过感染系统文件启动自身,被感染的系统文件大小和日期都不会改变;同时采用线程插入技术,本身没有进程;本身不开端口,而是重用系统进程开的任意一个端口,如80,135,139,445等,因此它的隐藏性非常好,而且穿透防火墙也是很容易的事。这个版本文件不大,只提供一些很有用的命令。目前还没有发现如何工具能查到这个后门,象

2006-01-03 21:44:00 1549

原创 NtQuerySystemInformation需相应级别的权限一览(含枚举代码)

2006-01-03 21:02:00 1695

原创 永恒的记忆-爱情与奇迹

我相信 这个世界有奇迹!更有永恒的爱情我也相信 奇迹不会在我身上发生,而永恒的爱情相悖的更多是无奈与心酸!痛苦是一种过程,而放弃却意味着结局!看着她的笑 我心在流泪!我该替她高兴的 不是吗!是的,我该开心的,该的....为什么我却一直无法在心脏的剧烈疼痛中作出笑脸?抽着令自己讨厌的白沙 痛苦丝毫未见减少~ 我发誓,等到她幸福了 我就会离开 我不知道将来会怎么样 我只知道 在写这段文字的时候!心  

2006-01-01 23:27:00 1215 2

原创 内核级利用通用Hook函数方法检测进程

创建时间:2005-05-10文章属性:原创文章提交:LionD8 (liond8_at_126.com)内核级利用通用Hook函数方法检测进程作者:    LionD8QQ:    10415468Email: [email protected]:    http://blog.csdn.net/LionD8     or http://liond8.126.com介绍通用Hook的一点思想:

2006-01-01 03:20:00 1031

原创 浅析本机API

创建时间:2005-03-09文章属性:转载文章提交:cisocker (cisocker_at_163.com)by sunwear [E.S.T]  2004/10/02   [email protected]此文只能说是一篇笔记,是关于本机API的.本机API是除了Win32 API,NT平台开放了另一个基本接口。本机API也被很多人所熟悉,因为内核模式模块位于更低的系统级别,在那个级别上

2006-01-01 01:21:00 1125

原创 管理员组获取系统权限的完美解决方案

创建时间:2005-04-28文章属性:原创文章提交:suei8423 (suei8423_at_163.com)管理员组获取系统权限的完美解决方案Author : ZwelLBlog   : http://www.donews.net/zwellDate   : 2005.4.28    关于管理员组(administrators)获取系统(SYSTEM)权限的方法其实已经有很多种了.小四哥就提

2005-12-30 17:54:00 1525 1

原创 使用CImageList控件

 图像列表控制(CImageList)是相同大小图像的一个集合,每个集合中均以0为图像的索引序号基数,图像列表通常由大图标或位图构成,其中包含透明位图模式。可以利用WINDOWS32位应用程序接口函数API来绘制、建立和删除图像,并能实现增加、删除、替换和拖动图像等操作。图像列表控制提供了控制图像列表的基本方法,这些方法在WINDOWS95及以后版本才能实现。    (一)图像控制的对象结构   

2005-12-28 23:46:00 1202

原创 利用NATIVE API列举系统进程

利用NATIVE API列举系统进程楓 发表于 2005-9-25 23:46:00编写列举系统进程的程序,传统的方法为利用tlhelp api系统快照的方式进行列举。其实还用一种方法,即利用ntdll中的NtQuerySystemInformation函数。下面给出代码,很简单。 NTSTATUS  NtStatus; DWORD dwReturnLength; DWORD dwBuffSize

2005-12-27 08:51:00 1479

原创 利用未公开函数枚举进程及其关联的端口系列之(二)

 .flyoutMenu { background-color: #FFFFFF; border-color: #6699cc; border-width: 1px 1px 1px 1px; border-style: solid;}.flyoutMenu TD.flyoutLink { border-color: #F0F0F0; border-width:

2005-12-27 08:36:00 1936

原创 rootkit资料

Rootkit For Windows************************************************************转载请保留文章完整,谢谢! *Date:2005/9/11 祝童童生日快乐。也纪念世贸大厦 *作者:sunwear [E.S.T] *ps:很多人问我[E.S.T]是什么……其实就是一个技术小组 :) *E-mail:shellcoder[0

2005-12-27 00:43:00 1435

原创 利用未公开函数枚举进程及其关联的端口系列之(-)

通过前述可知,枚举出系统中所有进程以及它们所打开的端口,这完成木马病毒的检测与清除工作的关键任务。要做到这一点方法有多种,但最简单的就是调用NTDLL.dll中的几个未公开API,如NtQuerySystemInfomation,NtQueryInfomationProcess。其中NtQuerySystemInfomation函数提供了一个简单的途径以获得系统中所有的HANDLE(句柄),只要找

2005-12-27 00:22:00 3218

Effective STL 中文版,学习STL的好帮手

Effective STL 中文版,学习STL的好帮手。对于理解STL中各种容器类型及关联,指导STL新手如何更高效更正确地使用STL中提供的容器。

2008-12-25

VC++6.0写的一个DES加密解密模块

华为一同学做的一个DES加密解密的dll 。没有测试过,但是可以做参考。

2008-12-23

开源围棋源码GUNGO v3.6

开源围棋源码GUN GO . 在围棋游戏开发上有很重要的研究价值。其棋谱保存格式也是很多商业围棋软件都兼容的。

2008-12-23

GUILib.1.5

开源GUI图形库,修正了网上的版本很多编译错误,完全支持UNICODE 。内含已编译好的exe及lib文件。

2008-12-23

空空如也

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

TA关注的人

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