
VC++
文章平均质量分 71
dlyhlq
一个徘徊在新手和高手之间的人,强烈渴望和大家成为好朋友,让我们一起共同进步!
展开
-
用DETOURS库获取NT管理员权限
作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站 用DETOURS库获取NT管理员权限 陈志敏 ---- Detours是微软开发的一个函数库(源代码可在http://转载 2008-02-17 21:12:00 · 545 阅读 · 0 评论 -
windows privilege and Permission(WINDOWS特权、权限介绍)
sherwin 发表于: 2007-10-07 15:58 来源: 沙飞网 特权 A privilege is the right of an account, such as a user or group account, to perform various system-related operations on the local computer, such as shut转载 2008-02-18 00:04:00 · 4619 阅读 · 0 评论 -
非法探取密码的原理及其防范
作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站 一、非法获取Password的原理: Edit控件是Windows的一个标准控件,当把其Password属性设为True时,就会将输入的内容转载 2008-02-17 21:15:00 · 593 阅读 · 0 评论 -
Windows消息大全
作者:未知 来源:月光软件站 加入时间:2005-6-5 月光软件站 鼠标位置 end; 消息中有什么? 是否觉原创 2008-02-17 21:17:00 · 514 阅读 · 0 评论 -
管理员组获取系统权限的完美解决方案
关于管理员组(administrators)获取系统(SYSTEM)权限的方法其实已经有很多种了.小四哥就提到了一些:"MSDN系列(3)--Administrator用户直接获取SYSTEM权限"和"远程线程注入版获取SYSTEM权限".这里,我先踩在前辈的肩上列一些可行的方法:1. "利用ZwCreateToken()自己创建一个SYSTEM令牌(Token)" 2. HOOK掉创建进程的转载 2008-02-17 21:53:00 · 1121 阅读 · 0 评论 -
c++运算符优先级
http://www.cppreference.com/operator_precedence.html cppreference.com > C++ Operator Precedence C++ Operator Precedence转载 2008-02-14 22:00:00 · 535 阅读 · 0 评论 -
怎样在VC++中访问、修改注册表
作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站 Windows95/98/Me的注册表包含了Windows95/98/Me的系统配置、PC机的硬件配置、Win32应用程序和用户的其他设置信息。注转载 2008-02-17 21:14:00 · 840 阅读 · 0 评论 -
在 console mode 中使用 C/C++ 编译器
在 console mode 中使用 C/C++ 编译器侯捷 1999.04.08我总是鼓励 C/C++ 的学习者,在刚接触这个程式语言的时候,先以 console mode(DOS-like)程式为目标。换言之,不要一开始就想写 GUI 程式、想开视窗、想有眩目亮丽的画面 -- 那只是未走先飞,揠苗助长罢了。所谓 console 程式,就是文字模式的程式,我们可以在其中好好把 C转载 2008-02-18 21:02:00 · 489 阅读 · 0 评论 -
ring0检测隐藏进程
标 题: 【原创】ring0检测隐藏进程作 者: 堕落天才时 间: 2007-05-10,13:28链 接: http://bbs.pediy.com/showthread.php?t=44243//网上得到一篇好文章 Ring0下搜索内存枚举隐藏进程 ,但是拿里面的代码来使用的时候发现并没有太多效果//于是修改之,终于实现了最初的目标//由于直接搜索内存,跟系统调度没什么关系,所以能够枚举到各种转载 2008-02-20 01:56:00 · 1024 阅读 · 0 评论 -
消息钩子函数入门篇
Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的。而钩子是Windows系统中非常重要的系统接口,用它可以截获并处理送给其他应用程序的消息,来完成普通应用程序难以实现的功能。钩子可以监视系统或进程中的各种事件消息,截获发往目标窗口的消息并进行处理。这样,我们就可以在系统中安装自定义的钩子,监视系统中特定事件的发生,完成特定的功能,比如截获键盘、鼠标的输入,转载 2008-02-24 14:27:00 · 858 阅读 · 0 评论 -
编写小程序来获得进程的EPROCESS
2007-01-15 源自:ChinaITLab 收集整理每个Windows进程都有一个相对应的执行体进程(EPROCESS,也就是KTEB),EPROCESS不仅包括了进程的许多属性,还包扩了许多指向其他数据结构的指针,其中包含了大量有用的信息.本文仅讲述如何获得特定进程对应的EPROCESS,EPROCESS的作用及数据结构不在本文讨论范围之内. 绿盟高手flier在他的文章中提到,转载 2008-02-19 20:14:00 · 984 阅读 · 0 评论 -
[转贴]Administrator用户直接获取SYSTEM权限
来源:http://www.nsfocus.com作者:"scz" scz@nsfocus.com>标题: MSDN系列(3)--Administrator用户直接获取SYSTEM权限日期: 2003-06-21 21:51更新:--------------------------------------------------------------------------目录:转载 2008-02-19 22:00:00 · 2113 阅读 · 1 评论 -
如何获取Windows系统登陆用户名
本文示例源代码或素材下载一般用 GetUserName(或 GetUserNameEx )函数可得到当前登陆登陆用户名(但不总会得到,下面会分析),此系统函数在Win95、WinNT 及以后所有操作系统中都可用。代码如下:BOOL CSecurityTool::GetCurrProcessUser(CString& strName){ BOOL bRet(TRUE); strName转载 2008-02-23 18:33:00 · 3367 阅读 · 0 评论 -
ShellExecute和命令行
前段时间我在网上发现一篇帖子,专门讲用ShellExcute来使用cmd.exe里的ping命令,感觉很新鲜,于是试了一下。我将它做成了单击事件,使命令只需用手一点按钮就能执行!太方便了,还是非常实用的,我把具体过程写在下面:原帖: 使用 ShellExecute 来进行 Ping 操作今日原创 2008-02-24 00:21:00 · 2420 阅读 · 0 评论 -
隐藏任意进程,目录/文档,注册表,端口
来源: 作者: 发布时间:2007-05-24转载 2008-02-19 14:02:00 · 569 阅读 · 0 评论 -
取特定进程的CPU占用率
#include #include #include #include #include #pragma comment ( lib , "Pdh.lib" )#define MAXPATH 80int __cdecl _tmain (int argc, TCHAR **argv){ HQUERY hQuery; HCOUNTER *pCounterHandle转载 2008-02-25 18:52:00 · 800 阅读 · 0 评论 -
我设置属性表为非模态后,为什么我的确定,应用等按钮看不到了
我设置属性表为非模态后,为什么我的确定,应用等按钮看不到了? faq-it.org/perl/--------------------------------------------------------------- 让VC中的非模式属性表PropertySheet出现OK/Cancel/Apply按钮 北京商即通数码科技有限公司 张宏 很多VC程序员都遇到过这个问题,当转载 2008-02-26 22:31:00 · 1745 阅读 · 0 评论 -
模态属性与非模态属性页
在资源编辑器设置了属性页之后,就可以通过ClassWizard创建一个CPropertyPage派生类了,其方式与创建CDialog派生类非常相似,惟一的区别在于不是选择CDialog而是选择 CPropertyPage作为基类。为了创建和显示一个模态属性单,通常会在栈上声明一个CPropertySheet对象,并调用其DoModal函数(就像CDialog对象所做的那样)。但是,对于属性页则需要转载 2008-02-26 22:33:00 · 847 阅读 · 0 评论 -
发一个自己编的WINDOWS钩子枚举程序
发一个自己编的WINDOWS钩子枚举程序本程序检测的是windows消息钩子,而并非SSDT钩子.钩子检查可以发现一些常见的木马程序,如利用键盘钩子盗取密码的木马等.运行时会释放出一个驱动文件EnumHook.sys 到系统drivers目录然后加载运行.本程序不支持WIN98,XPSP1和 WIN2000下有些钩子模块可能无法取得.由于每个钩子都会在全局对象句柄表中分配一个表项,包转载 2008-03-02 10:46:00 · 1402 阅读 · 0 评论 -
基于Visual C++的Winsock API研究 (1)
为了方便网络编程,90年代初,由Microsoft联合了其他几家公司共同制定了一套WINDOWS下的网络编程接口,即Windows Sockets规范,它不是一种网络协议,而是一套开放的、支持多种协议的Windows下的网络编程接口。现在的Winsock已经基本上实现了与协议无关,你可以使用Winsock来调用多种协议的功能,但较常使用的是TCP/IP协议。Socket实际在计算机中提供了一个通信转载 2008-03-04 20:50:00 · 510 阅读 · 0 评论 -
防止全局钩子的侵入
Windows消息钩子一般都很熟悉了。它的用处很多,耳熟能详的就有――利用键盘钩子获取目标进程的键盘输入,从而获得各类密码以达到不可告人的目的。朋友想让他的软件不被别人的全局钩子监视,有没有办法实现呢?答案是肯定的,不过缺陷也是有的。 首先简单看看全局钩子如何注入别的进程。 消息钩子是由Win32子系统提供,其核心部分通过NtUserSetWindowsHookEx为用户提供转载 2008-03-02 11:01:00 · 1065 阅读 · 0 评论 -
如何修改VC编译后生成的EXE文件的图标
这个好像不用代码,你把想用的那个图标,在resource。h中define成一个所有图标中值最小的就可以了,我试过,它生产文件就是按数最小的那个来显示的。它默认是从IDR_MAINFRAME往上长的。#define IDR_MAINFRAME 128#define IDI_ICON1 129#define IDI_IC转载 2008-03-04 23:59:00 · 2119 阅读 · 3 评论 -
MFC下关于“建立空文档失败”问题的分析(转载)
这类问题的出现主要在bool CWinApp::ProcessShellCommand(CCommandLineInfo& rCmdInfo);函数的关键内容: "zj[v1K9-A BOOL bResult = TRUE; PzOnS switch (rCmdInfo.m_nShellCommand) t6l@ _x { /k8I6 case CComman转载 2008-03-02 13:43:00 · 4791 阅读 · 2 评论 -
MFC对WinSockt API的封装
MFC提供了两个类CAsyncSocket和CSocket来封装WinSock API,这给程序员提供了一个更简单的网络编程接口。CAsyncSocket在较低层次上封装了WinSock API,缺省情况下,使用该类创建的socket是非阻塞的socket,所有操作都会立即返回,如果没有得到结果,返回WSAEWOULDBLOCK,表示是一个阻塞操作。CSocket建立在CAsyncSocket的基转载 2008-03-04 20:48:00 · 687 阅读 · 0 评论 -
VC程序中实现控件的动态生成与响应(一)
一、创建动态控件: 为了对照,我们先来看一下静态控件的创建。 放置静态控件时必须先建立一个容器,一般是对话框,这时我们在对话框编辑窗口中,从工具窗口中拖出所需控件放在对话框中即可,再适当修改控件ID,设置控件属性,一个静态控件就创建好了,当对话框被显示时,其上的控件也会显示。 静态控件不需要调用Create()函数来创建。 而创建动态控件有很大不同,以下以按钮为例,看一下动态控件的创建过程转载 2008-03-05 22:23:00 · 654 阅读 · 0 评论 -
What"s New for MFC Developers?(翻译)
日期:2006-8-5 11:08:00 [uudo.net] 访问: What"s New for MFC Developers? By Anson Tsao and Walter Sullivan 翻译:依栏望海(kevin_kbh@21cn.com)【译者:因为时间关系,俺在一些省略了一些细节的翻译,不过俺还是都点到了。有兴趣的朋友 可以继续做。大家可以转载 2008-03-06 13:13:00 · 717 阅读 · 0 评论 -
字符串函数memcmp
原型:extern int memcmp(void *buf1, void *buf2, unsigned int count); 用法:#include 功能:比较内存区域buf1和buf2的前count个字节。 说明: 当buf1 当buf1=buf2时,返回值=0 当buf1>buf2时,返回值>0 举例:转载 2008-03-06 18:39:00 · 1041 阅读 · 0 评论 -
字符串函数memcpy
原型:extern void *memcpy(void *dest, void *src, unsigned int count); 用法:#include 功能:由src所指内存区域复制count个字节到dest所指内存区域。 说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。 举例: // memcpy.c #incl转载 2008-03-06 18:40:00 · 497 阅读 · 0 评论 -
字符串函数memset
原型:extern void *memset(void *buffer, int c, int count); 用法:#include 功能:把buffer所指内存区域的前count个字节设置成字符c。 说明:返回指向buffer的指针。 举例: // memset.c #include #include转载 2008-03-06 18:42:00 · 618 阅读 · 0 评论 -
字符串函数stricmp,strcmpi
原型:extern int stricmp(char *s1,char * s2); 用法:#include 功能:比较字符串s1和s2,但不区分字母的大小写。 说明:strcmpi是到stricmp的宏定义,实际未提供此函数。 当s1 当s1=s2时,返回值=0 当s1>s2时,返回值>0 举例: // s原创 2008-03-06 18:49:00 · 1030 阅读 · 0 评论 -
字符串函数strlen
原型:extern int strlen(char *s); 用法:#include 功能:计算字符串s的长度 说明:返回s的长度,不包括结束符NULL。 举例: // strlen.c #include #include main() { char *s="Golden Glob转载 2008-03-06 18:50:00 · 492 阅读 · 0 评论 -
字符串函数strlwr
原型:extern char *strlwr(char *s); 用法:#include 功能:将字符串s转换为小写形式 说明:只转换s中出现的大写字母,不改变其它字符。返回指向s的指针。 举例: // strlwr.c #include #include main() { cha转载 2008-03-06 18:51:00 · 1625 阅读 · 0 评论 -
字符串函数strrev
原型:extern char *strrev(char *s); 用法:#include 功能:把字符串s的所有字符的顺序颠倒过来(不包括空字符NULL)。 说明:返回指向颠倒顺序后的字符串指针。 举例: // strrev.c #include #include main() {转载 2008-03-06 18:58:00 · 648 阅读 · 0 评论 -
字符串函数strstr
原型:extern char *strstr(char *haystack, char *needle); 用法:#include 功能:从字符串haystack中寻找needle第一次出现的位置(不比较结束符NULL)。 说明:返回指向第一次出现needle位置的指针,如果没找到则返回NULL。 举例: // strstr.c转载 2008-03-06 18:59:00 · 721 阅读 · 0 评论 -
[转]编写自己的MSN机器人
概述现在各类即时通信软件琳琅满目,相信接触过INTERNET的人都会使用过其中的一部分。在中国就目前用户量而言,腾讯公司的QQ、微软公司的MSN Messenger以及网易公司的POPO排名在前三位。不过令人比较遗憾的是,腾讯公司和网易公司对于QQ以及POPO使用的通信协议并没有对外界公开,正是由于这样的技术壁垒,使得一些即时通信的开发者很难在这些用户群中开辟新的客户服务渠道。转载 2008-03-07 02:14:00 · 906 阅读 · 0 评论 -
最常见的20种VC++编译错误信息集合
1、fatal error C1010: unexpected end of file while looking for precompiled header directive。 寻找预编译头文件路径时遇到了不该遇到的文件尾。(一般是没有#include "stdafx.h") 2、fatal error C1083: Cannot open include file: R转载 2008-03-08 13:43:00 · 747 阅读 · 0 评论 -
字符串函数bcmp
原型:extern int bcmp(const void *s1, const void *s2, int n); 用法:#include 功能:比较字符串s1和s2的前n个字节是否相等 说明:如果s1=s2或n=0则返回零,否则返回非零值。bcmp不检查NULL。 举例: // bcmp.c #include #inclu转载 2008-03-06 18:09:00 · 1244 阅读 · 0 评论 -
字符串函数memccpy
原型:extern void *memccpy(void *dest, void *src, unsigned char ch, unsigned int count); 用法:#include 功能:由src所指内存区域复制不多于count个字节到dest所指内存区域,如果遇到字符ch则停止复制。 说明:返回指向字符ch后的第一个字符的指针,如果src前n个字节中不存在ch则返回转载 2008-03-06 18:12:00 · 604 阅读 · 0 评论 -
字符串函数movmem
原型:extern void movmem(void *src, void *dest, unsigned int count); 用法:#include 功能:由src所指内存区域复制count个字节到dest所指内存区域。 说明:src和dest所指内存区域可以重叠,但复制后src内容会被更改。函数返回指向dest的指针。 举例: // movm转载 2008-03-06 18:43:00 · 871 阅读 · 0 评论 -
字符串函数strncat
原型:extern char *strncat(char *dest,char *src,int n); 用法:#include 功能:把src所指字符串的前n个字符添加到dest结尾处(覆盖dest结尾处的/0)并添加/0。 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。 返回指向dest的指针。转载 2008-03-06 18:51:00 · 585 阅读 · 0 评论