自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zuishikonghuan的博客

welcome to my blog ^_^

  • 博客(25)
  • 收藏
  • 关注

原创 让Socket穿透Windows防火墙

创建了ServerSocket以后,并不是没事了,其实上,为了系统安全考虑,创建服务器套接字后,只是创建成功了,但是在数据包入站的时候呢,会被防火墙过滤,因此,我们就收不到来自网络的数据了。因此,在系统的默认安全级别下,当一个程序第一次创建ServerSocket时,系统会弹出一个这样的对话框:除非用户同意,点“运行访问”,否则就没办法通信,而你的程序,收不到半点异常因为防火墙不是

2015-08-28 16:20:43 13495 1

原创 [Win32] Windows Sockets 2笔记(1)在开始之前

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:Winsock2(Windows Sockets 2)是Windows上的套接字,但是没有Raw Socket,从XP开始,应用程序就不能再使用完整的原始套接字了,只允许内核程序(比如设备驱动)使用。但是如果我们只想进行TCP、UDP的网络通信,Winsock2不一定最简单

2015-08-26 10:29:11 2817

原创 [Win32] API Hook(2)在64位系统上的实现

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:http://blog.csdn.net/zuishikonghuan/article/details/47979603本文是对上一篇的补充。关于apihook的原理,效果动画,代码分析,实现细节和32位hook的源码请见上一篇:[Win32] API Hook(1)在32

2015-08-25 17:19:11 12370 2

原创 [Win32] API Hook(1)在32位系统上的实现

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:API Hook技术,虽然很老了,但是依旧是很有用的技术,同时网上的资料往往不能直接拿过来用,c语言的太少。这回呢,我要用C语言来完整的编写一个Win32SDK编程的API Hook源码,但是我还是用cpp保存编译,为哈?因为微软对c语言标准支持的很不好,我不知道vs2013支持c

2015-08-25 14:57:52 9338 2

原创 [Win32] SCManager 服务控制管理器API(2)

在上一篇博文“[Win32] SCManager 服务控制管理器API(1)”中(地址:http://blog.csdn.net/zuishikonghuan/article/details/47803033),讲到了打开服务控制管理器、创建服务、打开服务、删除服务、获取服务状态、启动服务、发送控制码,这一篇继续。9。枚举服务

2015-08-21 10:43:53 4092

原创 [Win32] SCManager 服务控制管理器API(1)

1。OpenSCManager 打开服务控制管理器函数原型:SC_HANDLE WINAPI OpenSCManager( _In_opt_ LPCTSTR lpMachineName, _In_opt_ LPCTSTR lpDatabaseName, _In_ DWORD dwDesiredAccess);lpMachineName:置NULLlpD

2015-08-20 15:40:25 5411

原创 [Win32] DLL注入技术

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:http://blog.csdn.net/zuishikonghuan/article/details/47781883DLL注入是什么?DLL注入是把指定的DLL加载到另一个进程的内存空间中去的技术。为何要注入DLL?完成一些特殊目的,病毒把恶意代码隐藏在正常的宿主进程中,瞒天过

2015-08-19 16:46:58 5954

原创 [Win32] DLL的开发和使用

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:为何要开发DLL:1。DLL可以在程序需要时加载或卸载,可以实现软件的“模块化开发”。2。可以达到一些特殊目的,比如通过DLL注入来进入另一个进程的空间,Hook它的函数,等等。所以不管怎么说,DLL是Windows开发中相当重要的一部分。DllMain

2015-08-19 15:41:41 3480

原创 [Win32] 获取进程完整路径

上两篇中,我们讲到了ToolHelp API,Process API和提升Debug权限,这一篇中来说说如何获取进程的程序路径。获取进程路径其实有很多方法。方法1。使用ToolHelp API枚举模块,其中,Module32First得到一个MODULEENTRY32 结构,结构中有一个szExePath成员,这个成员代表这个进程第一个模块的路径,也就是进程的路径(32位程序只能获取3

2015-08-18 10:35:49 11312

原创 [Win32] 启用进程Debug权限

在上一篇中,写过一个KillProcessAndWait函数,这个函数是用来终止一个进程并等待进程退出的函数,我们使用这个函数,可以关闭同一个用户下的进程,但是,即使以管理员权限运行程序,我们发现也无法终止系统的进程(比如系统桌面管理器dwm.exe)!这是为什么呢。另外,在写一篇中获取进程映像路径中,也会出现此问题。甚至只要是访问那些进程,即使是管理员权限都会出问题!其实,管

2015-08-18 08:57:21 7842 1

原创 [Win32] ToolHelp API 和 进程API 详解

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:

2015-08-17 15:38:32 4796

原创 [Win32] 服务程序开发(4)自定义控制码与服务通信

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:http://blog.csdn.net/zuishikonghuan/article/details/47720285在上几篇博文中,我演示了如何编写一个系统服务,介绍了如何穿透Session 0在当前用户的桌面上创建一个用户进程,也可以获取服务自己的权限令牌在用户的桌面上创建一

2015-08-17 09:35:07 3594

原创 [Win32] 服务程序开发(3)Session 0隔离(下)创建SYSTEM权限可交互进程

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:http://blog.csdn.net/zuishikonghuan/article/details/47662727在上上篇博文中,我说了如何编写一个系统服务,上一篇,介绍了如何穿透Session 0在当前用户的桌面上创建一个进程,但是缺陷很明显,如果UAC处于开启状态,创

2015-08-14 16:13:27 4882

原创 [Win32] 服务程序开发(2)Session 0隔离(上)

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:在上一篇博文中,我说了如何创建一个系统服务

2015-08-14 15:11:30 4317

原创 [Win32] 服务程序开发(1)基本概念和服务程序的框架

一。服务程序基本概念二。服务程序的编写框架1。StartServiceCtrlDispatcher函数BOOL WINAPI StartServiceCtrlDispatcher( _In_ const SERVICE_TABLE_ENTRY *lpServiceTable);函数功能:连接到服务控制管理器参数:一个SERVICE_TABLE_ENTRY结构的指针

2015-08-13 16:18:57 9746

原创 [Win32]打开文件/保存文件/选择文件夹对话框

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:1。打开文件对话框:GetOpenFileName函数函数原形:BOOL WINAPI GetOpenFileName( _Inout_ LPOPENFILENAME lpofn);参数:一个指向 OPENFILENAME 结构的指针,其中包含用于初始化对话框的信

2015-08-12 17:31:09 32610 3

原创 关于无边框窗口的兼容性问题

昨天在虚拟机(XP SP3)测试程序的时候,发现无边框窗口均无法正常显示窗口,之后我又去Win7下测试,发现在开启Areo的情况下,不管是不是开启了透明,窗口都可以正常显示(和Win8一样),如果没有开启Areo,即选择“Win7 Basic”主题,无边框窗口和在Xp下一样,无法显示,于是经过查资料研究,终于找到了一个解决方法。这是原来的窗口无边框的方法,核心是SetWindowLong修改了

2015-08-12 10:33:33 2552

原创 GdiplusFlat(10)自绘Edit Control边框的实现(附Edit Control垂直居中问题)

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:在上几篇中,我们说到了通过GdipCreateFromHDC函数将HDC(设备上下文句柄)装换成GDI+的Graphics对象,讲到了画笔和画刷的使用,演示了何利用GDI+Flat来画图片和画文字,讲到了双缓冲绘图和DC复制,并说了用GdiplusFlat来绘制按钮的两种方法。

2015-08-11 15:16:17 4141

原创 GdiplusFlat(9)自绘按钮的实现(方法2)

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:http://blog.csdn.net/zuishikonghuan/article/details/47398935在上几篇中,我们说到了通过GdipCreateFromHDC函数将HDC(设备上下文句柄)装换成GDI+的Graphics对象,讲到了画笔和画刷的使用,演示了何利用G

2015-08-10 16:19:31 2799

原创 GdiplusFlat(8)自绘按钮的实现(方法1)

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:在上几篇中,我们说到了通过GdipCreateFromHDC函数将HDC(设备上下文句柄)装换成GDI+的Graphics对象,讲到了画笔和画刷的使用,演示了何利用GDI+Flat来画图片和画文字,并讲到了双缓冲绘图和DC复制。这一篇博文中,我们来聊聊如何用GdiplusFla

2015-08-10 11:04:56 3507

原创 GdiplusFlat(7)双缓冲绘图和DC透明复制

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:在上几篇中,我们说到了通过GdipCreateFromHDC函数将HDC(设备上下文句柄)装换成GDI+的Graphics对象,讲到了画笔和画刷的使用,并演示了何利用GDI+Flat来画图片和画文字。其实,我们使用GdiplusFlat的根本目的并不是为了作图,而是为了做出

2015-08-07 10:07:20 4445

原创 GdiplusFlat(6)绘制文本

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:http://blog.csdn.net/zuishikonghuan/article/details/47296351在上几篇中,我们说到了通过GdipCreateFromHDC函数将HDC(设备上下文句柄)装换成GDI+的Graphics对象,讲到了画笔和画刷的使用,并演示

2015-08-05 16:43:18 4435

原创 GdiplusFlat(5)画图片

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:在上两篇篇中,我们说到了通过GdipCreateFromHDC函数将HDC(设备上下文句柄)装换成GDI+的Graphics对象,并讲到了画笔和画刷的使用,这一篇就来讲讲如何利用GDI+Flat来画图片。还是和以前一样,我们必须自己声明GDI+Flat函数,自己定义GD

2015-08-05 09:39:46 3077

原创 GdiplusFlat(4)单色画刷 和 线性渐变画刷

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:在上一篇中,我们说到了通过GdipCreateFromHDC函数将HDC(设备上下文句柄)装换成GDI+的Graphics对象,并讲到了画笔的使用,这一篇就来讲讲画刷。画刷和画笔差不多,就是画刷是画的实心的图形、其实画刷有很多种,这里只介绍最常用的两种,分别是单色画刷和

2015-08-04 10:26:59 3485

原创 GdiplusFlat(3)GdipCreateFromHDC函数 和 画笔(Pen)

本博文由CSDN博主zuishikonghuan所作,版权归zuishikonghuan所有,转载请注明出处:上两篇分别介绍了GDI+Flat编程是什么,意义和实现方法,以及对WM_PAINT,子类化和GDI编程中的DC做了简单介绍。今天,我们来看看用GDI+Flat如何进行绘图,在开始之前,首先给大家介绍一种新的颜色,ARGB颜色!想必大家都知道RGB()宏,一种颜色占8位,用R

2015-08-03 16:08:27 3618

空空如也

空空如也

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

TA关注的人

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