分类: |
  • 1

Linux系统下C语言编程工具详细介绍

Linux的发行版中包含了很多软件开发工具。 它们中的很多是用于 C 和 C++应用程序开发的。 本文介绍了在 Linux 下能用于 C 应用程序开发和调试的工具。 本文的主旨是介绍如何在 Linux 下使用 C 编译器和其他 C 编程工具, 而非 C 语言编程的教程。在本文中你将学到以下知识:

查看更多...

Tags: linux c语言 编程

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 8423

c语言winsock 实现域名解析

  1. #include   <stdio.h>   
  2. #include   <Winsock2.h>   
  3. #include   <windows.h>      
  4.   
  5. typedef struct _DNSHEAD{        //dns 头部   
  6.         USHORT ID;   
  7.         USHORT tag; // dns 标志(参数)   
  8.         USHORT numQ;        // 问题数   
  9.         USHORT numA;        // 答案数   
  10.         USHORT numA1;       // 权威答案数   
  11.         USHORT numA2;       // 附加答案数   
  12. }DnsHead;   

查看更多...

Tags: dns解析 c语言

分类:c/c++ | 固定链接 | 评论: 0 | 查看次数: 12820

Keyboard Hook

Hook is a mechanism, by which a function can intercept events before they reach an application. The function can act on events, modify or discard them. Functions which receive the events are called Filter Functions, every Filter Function is classified by its type. Hooks provide powerful capabilities: Procces or modify every message; Record or play back keyboard and mouse events; Prevent another filter from being called; And many more capabilities... Generally, there are two types of hooks: System-wide, and Thread-specific. The System-wide hook is used for filtering messages of all applications(IE: when writing a key logger). And the Thread-specific hook is used for filtering messages of a specific thread. In this tutorial, I'll cover just System-wide keyboard hook. To set a System-wide hook we need a DLL.

A DLL is an indirectly executable which doesn't have a message loop to receive user input. DLLs are seperate files containing functions(not only) that can be called by programs and other DLLs. To the end-user a DLL is a program that can't be executed directly from the Program Manger(or other Shells), but from the system's point of view, there are two differences between DLLs and applications: DLLs cannot have multiple running instances loaded in memory. and DLLs attach themselves to processes, only application instances are processes. DLL stands for Dynamic-Link Library. Dynamic-Link is a mechanism to link libraries to applications at run time. These libraries(DLLs) reside in their own executable files(.dll) and are not copied into applications' executable files(.exe) as with Static-Link libraries. It's important to understand that a .DLL is loaded into the address space of the specified linking application and not into the global heap! The advantages of using dynamic linking method are:
They can be updated without requiring applications to be recompiled or relinked.
When several applications use the same .DLL, the .DLL is just loaded once for all applications(reducing memory and disk space).

查看更多...

Tags: c语言 代码 windows api vc hook

分类:c/c++ | 固定链接 | 评论: 0 | 查看次数: 8816

VC++网络编程

一、Windows Sockets API简介 
VC++对网络编程的支持有socket支持,WinInet支持,MAPI和ISAPI支持等。其中,Windows Sockets API是TCP/IP网络环境里,也是Internet上进行开发最为通用的API。最早美国加州大学Berkeley分校在UNIX下为TCP/IP协议开发了一个API,这个API就是著名的Berkeley Socket接口(套接字)。 
在桌面操作系统进入Windows时代后,仍然继承了Socket方法。在TCP/IP网络通信环境下,Socket数据传输是一种特殊的I/O,它也相当于一种文件描述符,具有一个类似于打开文件的函数调用-socket()。 
可以这样理解:Socket实际上是一个通信端点,通过它,用户的Socket程序可以通过网络和其他的Socket应用程序通信。Socket存在于一个“通信域”(为描述一般的线程如何通过Socket进行通信而引入的一种抽象概念)里,并且与另一个域的Socket交换数据。Socket有三类。第一种是SOCK_STREAM(流式),提供面向连接的可靠的通信服务,比如telnet,http。第二种是SOCK_DGRAM(数据报),提供无连接不可靠的通信,比如UDP。第三种是SOCK_RAW(原始),主要用于协议的开发和测试,支持通信底层操作,比如对IP和ICMP的直接访问。
二、Windows Socket机制分析 

查看更多...

Tags: c语言 代码 网络 windows api vc

分类:c/c++ | 固定链接 | 评论: 0 | 查看次数: 8185

彻底改掉进程名

写了个改进程名的东西,跟大家分享!技术含量不高,大牛飘过。

先总结一下,一个进程的名字有可能从以下部位获取(参考小伟同学的《伪造进程初探》一文):

一、EPROCESS中:

查看更多...

Tags: c语言 系统 代码 文件 windows

分类:破解调试 | 固定链接 | 评论: 0 | 查看次数: 12208

c语言编写3k下载者

本文摘自网络,原创不容易,转载请注明出处http://hi.baidu.com/prodiary/blog/item/35d567a28e898aa9cbefd081.html


下面分享一款C语言编写的穿墙下载者的源码,仅为研究,希望别用作违法的事。

查看更多...

Tags: 下载者 c语言 3k

分类:c/c++ | 固定链接 | 评论: 0 | 查看次数: 8168
  • 1