随笔分类 - Windows C++
windows C++ 相关知识积累!
摘要:一 数据类型**************************************************************************************************十进制二进制十六进制 000000100011200102300113401004501015601106701117810008910019101010A 111011B 121100C 131101D 141110E 151111F 161,000010D B H十进制的2 2D二进制的2 0010B十六进制2 2H***********************************
阅读全文
摘要:1. 把你的虚拟网卡VMnet8设置为自动获得IP、自动获得DNS服务器,启用。2. 把你虚拟机中操作系统的“本地连接”也设置为自动获得IP、自动获得DNS服务器(在虚拟机中,右键“本地连接”-双击“Internet 协议”,看看是不是自动的吧!固定IP的也在这里改!) 3.当然是将虚拟机的上网方式选为NAT咯。 右键你要设置的虚拟机选“设置”(因为有的不止虚拟一台),在“硬件”中选“以太网”, 将右边的网络连接改为NAT-确定。 4.点菜单栏里的“编辑”-选“虚拟网络设置”,先将“自动桥接”给去掉(去掉钩钩),再选“DHCP”开启DHCP服务,点“开始”-应用,再按同样的方法开启“NAT”的
阅读全文
摘要:修改访问权限使用CreateRemoteThread植入DLL时,必须应用程序的权限。插入的程序每次操作目标进程的虚拟空间,调用CreateRemoteThread 的时候,都先调用OpenProcess打开这个进程,将PROCESS_ALL_ACCESS 标志作为参数传递,得到这个进程最大的访问权限。所有受限的进程都是操作系统的一部分,普通的应用程序不应该有权去操作OS。要访问,调用的进程必须有调试的特权。逻辑描述:(1) 获取进程的访问令牌的句柄(OpenProcess(PROCESS_ALL_ACCESS,FALSE, dwProcessID)来打获得任意进程的句柄.并且指定了所有的访问
阅读全文
摘要:问:什么是网络安全? 答:网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭到破坏、更改、泄露,系统可以连续可靠正常地运行,网络服务不被中断。 问:什么是计算机病毒? 答:计算机病毒(Computer Virus)是指编制者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或者程序代码。 问:什么是木马? 答:木马是一种带有恶意性质的远程控制软件。木马一般分为客户端(client)和服务器端(server)。客户端就是本地使用的各种命令的控制台,服务器端则是要给别人运行,只有运行过服务器端的计算机才能够完全受控。木
阅读全文
摘要:OLLYDBG 附加到一个正在运行的进程上----------------------------------------------------------------------------------------------------------------原理: (1)利用DebugActiceProcess 函数可以将调试器捆绑到一个正在运行的进程上,如果成功,就类似于CreateProcess创建的新进程。附加后程序会暂停到Ntdll.dll的DebugBreakpoint处,按F9或Shift + F9键程序调试.(2)如果隐藏进程,就不能用上面的附加方法了。Ollydbg 有
阅读全文
摘要:下面通过一个应用程序实例来说明在实际编程中如何处理键盘消息。#include <windows.h>#include <stdio.h>// 全局变量RECT rc; //记录滚屏的矩形区域int xChar, yChar; //文本输入点坐标WNDCLASSEX wnd; //窗口类结构变量char szAppName[] = "键盘消息监视程序"; //窗口类名//函数声明LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);BOOL MyRegisterClass(HINSTANCE hIns
阅读全文
摘要:虚拟内存的实现方法和过程:(1) 当一个应用程序被启动时,操作系统就创建一个新的进程,被给每个进程分配2GB的虚拟地址(不是内存,只是地址)(2) 虚拟内存管理器将应用程序的代码映射到那个那个应用程序的虚拟地址中的某个位置,并把当前所需要的代码读取到物理地址中(注意: 虚拟地址和应用程序代码的物理地址内存中的位置是没有关系的).(3) 如果使用动态链接库DLL,DLL 也被映射到进程的虚拟地址空间,在需要的时候才会被读到物理内存。(4) 其他项目(数据,堆栈等)的空间是从物理内存中分配的,并被映射到虚拟内存空间中。(5) 应用程序通过使用他的虚拟地址空间中的地址开始执行,然后虚拟内存管理器把每
阅读全文
摘要:我目前用的是VC++6.0含SP6中文版+英文版.VC6SP6.ISO (485 MB)Windows 2003 DDK.iso(230 MB) 其实别的版本DDK也可以的,我们要的是一些结构&头文件用来编译 知道名字后可以xunlei下把上面的安装好后Tools->Options->DirectoriesInclude files:D:\SOFTWARE\WINDDK\3790.1830\INC\DDK\W2KD:\SOFTWARE\WINDDK\3790.1830\INC\CRTD:\SOFTWARE\WINDDK\3790.1830\INC\WXPLibrary fi
阅读全文
摘要:一、瑞星产品安装在哪个目录了?目录里面的许多.EXE文件是做什么的? A:瑞星产品默认安装的目录是X:Program Files\rising下(X为系统安装分区),在这个文件夹下还有rav和rfw两个子文件夹。其中rav目录是瑞星杀毒软件所在目录,rfw目录为瑞星防火墙所在目录. 1.rav文件夹 这是瑞星杀毒软件文件夹,根目录下有以下文件(仅介绍主要可执行文件): (1)AddrBook.exe 瑞星短信通信地址簿,主要用于保存一些短信联系人的信息。 (2)CCenter.exe 瑞星信息中心,就是杀毒软件主界面右边的那个窗口。 (3)MakeDisk.exe 瑞星软件维护工具,如果您已经
阅读全文
摘要:#include <windows.h>#include <stdio.h>#define MAC_FILENAMELENOPATH 256void FindFileInDir(char* rootDir, char* strRet)//第一个参数是输入的目录名,第二个参数是存放所有文件的缓冲{ char fname[MAC_FILENAMELENOPATH]; ZeroMemory(fname, MAC_FILENAMELENOPATH); WIN32_FIND_DATA fd; ZeroMemory(&fd, sizeof(WIN32_FIND_DATA))
阅读全文
摘要:如果是32 位的OS,一般HANDLE 是一个4个字节,所以每次移动只能4个字节,速度表较慢,能不能更快呢?下面让我们看一下文件映射的优势。(1) (CreateFileMapping) 创建一个文件映射内核对象。(2) (MapViewofFile) 将一个文件映射对象映射到当前应用程序的地址空间。---------------------------------------------------------------------------------------------------------CreateFileMapping : 创建一个新的文件映射内核对象。HANDLE Cr
阅读全文
摘要:DirectX9.0 SDK 开发包版本较多,DirectX9.0b 版本之前的SDK 包基本是完整的, DirectX9.0c 版本的SDK 包大多是升级包,里面并未附带DirectShow 部分,故不能 单独使用。 微软DirectX9.0b SDK 完整包的下载地址: http://download.microsoft.com/download/b/6/a/b6ab32f3-39e8-4096-9445-d38e6675de8 5/dx90bsdk.exe 完整的安装过程: 1. 解压并运行dx90bsdk.exe,按默认设置完成资源文件的安装。 2. 用Visual C++编译Dire
阅读全文
摘要://---------------------------------------创建进程流程---------------------------------------------call kernel32!CreateProcessABOOL WINAPI CreateProcess(LPCTSTR lpApplicationName,LPTSTR lpCommandLine,LPSECURITY_ATTRIBUTES lpProcessAttributes,LPSECURITY_ATTRIBUTES lpThreadAttributes,BOOL bInheritHandles,DWO
阅读全文
摘要:1. BC++ 程序启动反汇编A1 A8534BB00 MOV EAX,DWORD PTR DS:[4B53A8]C1E0 02 SHL EAX,2A3 AC534B00 MOV DWORD PTR DS:[4B53AC],EAX57PUSH EDI51 PUSH ECX33C0 XOR EAX,EAXBF 88DA4C00 MOV EDI,BC++.004CDA88B9 C0358D00 MOV ECX,BC++.008D35C03BCF CMP ECX,EDX76 05 JBE SHORT BC++.004010242BCF SUB ECX,EDIFC CLD...............
阅读全文
摘要:1.什么是句柄. 句柄是应用程序建立或使用的对象所使用的一个唯一的整数值(通常是32位),Windows要使用各种各样的句柄来标识诸如应用程序实例,窗口,图标,菜单,输出设备,文件等对象. Windows是一个以虚拟内存为基础的操作系统,这种环境下,Windows内存管理器经常在内存中来回移动对象,依次满足各种应用程序的需要,对象被移动了,意味着地址就变.因此,Windows操作系统用一块内存地址,用来专门登记各种应用对象在内存中的地址变化,而这个地址(存储单元的位置)本身是不变的,Windows内存管理器在移动对象在内存的位置后,把对象新的地址告知这个句柄保存,这样我们只需记住这个句柄地址就
阅读全文
摘要:用户态轻松ntdll中的native api 调用方式一(一般方式):第一步:声明函数指针 比如我们需要调用NtCreateFile函数,那么我们就需要根据NtCreateFile的定义来声明一个相同类型的函数指针(这样做会让编译器比较高兴)typedefNTSTATUS(*MyNtCreateFile)(OUTPHANDLEFileHandle,INACCESS_MASKDesiredAccess,INPOBJECT_ATTRIBUTESObjectAttributes,//OUTPIO_STATUS_BLOCKIoStatusBlock,OUTPVOIDIoStatusBlock,INPL
阅读全文
摘要:用户、认证和对象安全Windows系统具有很完善的安全和认证机制,称作访问控制机制。程序的执行主体(线程)在访问对象(文件、事件等)时,系统会根据线程的“权限”和线程需要访问的对象所具有的访问控制列表(ACL)中的“安全描述符”是否匹配来进行认证,决定一个线程是否可以操作一个对象。1. 关于权限、访问控制列表、安全描述符等在安全认证中所依赖的数据结构,并重点讲解安全认证的过程A需要访问(Access)B,A就是访问的主体,B就是访问的客体。A的“访问令牌”和B的安全描述符共同决定了A是否可以访问B.访问的主体是进程。在系统中,线程才是程序执行的流程,因此只有线程才能操作对象。每个线程都是属于一
阅读全文
摘要:Wnndows 用户1.1 创建用户NetUserAdd API函数可以实现在系统中创建用户的功能,函数原型如下:NET_API_STATUS NetUserAdd( LPCWSTR servername, //用户的主机名,如果是本机设置为NULL DWORD level, //设置为1,2,3,4决定buf参数的结构 LPBYTE buf, //USER_INFO_1, USER_INFO_2, USER_INFO_3, USER_INFO_4 LPDWORD parm_err//);typedef struct _USER_INFO_1 { LPWSTR usri1_name; LPWS
阅读全文
摘要:1. 数据类型 LIST_ENTRY说明:内核使用该结构将所有对象维护在一个双向链表中。一个对象分属多个链表是很常见的, Flink 成员是一个向前链接指向下一个 LIST_ENTRY 结构, Blink 成员则是一个向后链接,指向前一个 LIST_ENTRY 结构。通常情况下,这些链表都成环形,也就是说,最后一个 Flink 指向链表中的第一个 LIST_ENTRY 结构,而第一个 Blink 指向最后一个。这样就很容易双向遍历该链表。如果一个程序要遍历整个链表,它需要保存第一个 LIST_ENTRY 结构的地址,以判断是否已遍历了整个链表。如果链表仅包含一个 LIST_ENTRY 结构,那
阅读全文
摘要:校验和(Checksum)PE的可选映像头(IMAGE_OPTION_HEADER)里面,有一个Checksum字段,是该文件的校验和,一般EXE文件可以使0,但一些重要的和系统DLL及驱动文件必须有一个校验和.Windows 提供了一个API函数MapFileAndCheckSum 测试文件的Checksum,它位于IMAGEHLP.DLL链接库里,其原型:ULONG MapFileAndCheckSum{ LPSTR FileName, // 文件名 LPDWORD HeaderSum, // 指向PE文件头的CheckSum LPDWORD new_checksum // 指向新计算出的
阅读全文
浙公网安备 33010602011771号