自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小米的修行之路

是日已过,命亦随减;如少水鱼,斯有何乐?当勤精进,如救头燃!但念无常,慎勿放逸。

  • 博客(25)
  • 资源 (62)
  • 收藏
  • 关注

原创 控制台程序使用GDI+

由于需要得到图片的宽、高以及所占的字节数大小,所以上网百度了一下,发现GDI+可以很简单的满足我的功能。以下结合自己的程序,介绍下GDI+的使用方法。1、包含GDI+的头文件、库文件以及命名空间1包含GDI+的头文件、库文件以及命名空间#define ULONG_PTR unsigned long#include using namespace Gdiplus;#pragma

2016-12-29 10:33:01 1187

原创 为控件添加Tip提示功能CToolTipCtrl

为控件增加Tip提示功能,首要的工作是创建一个CToolTipCtrl控件,这是提示信息的载体,因为提示信息是要显示在此控件上的。MFC上说的很清楚,创建CToolTipCtrl控件要分为两步:You construct aCToolTipCtrl in two steps. First, call the constructor to construct theCToolTipCtr

2016-12-25 13:17:37 2377

原创 为图片控件加载位图+为鼠标加载图标

1、为图片控件加载位图(bmp格式):这里只讲动态加载情况。首先都要导入BMP资源到程序里面;其次添加代码动态加载:1动态加载:1)HBITMAP hBitmap=::LoadBitmap(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDB_BITMAP3)); m_BitmapStatic.SetBitmap(hBitmap); //

2016-12-24 19:57:49 605

原创 SendInput模拟鼠标消息的发送

1实例://获取一个对话框dialog的句柄 HWND hWnd=::FindWindow(_T("#32770"),_T("MsgTest")); if (hWnd!=NULL) { ::ShowWindow(hWnd,SW_SHOWNORMAL); ::SetForegroundWindow(hWnd); //获取dialog上一个Button按钮的句柄 HWND h

2016-12-23 15:05:33 6727

原创 SendInput模拟键盘事件控制暴风影音的播放和停止

1This function synthesizes keystrokes, stylus and mouse motions, and button clicks.UINT SendInput( UINT nInputs, LPINPUT pInputs, int cbSize ); ParametersnInputs Specifies how many str

2016-12-23 14:37:18 1003

转载 利用Keybd_event()函数模拟键盘输入

一下来自VC++驿站:点击打开VC++驿站链接1代码实现:HWND hWnd=::FindWindow(_T("Notepad"),_T("新建文本文档.txt - 记事本")); if (hWnd!=NULL) { ::ShowWindow(hWnd,SW_SHOWNORMAL); ::SetForegroundWindow(hWnd); BOOL bToggle

2016-12-23 13:50:44 4869

原创 GetKeyState函数详解

11函数原型:SHORT GetKeyState( int nVirtKey );   函数只有一个参数,即虚拟键码。返回值为SHORT类型,即短整型。GetKeyState函数是用来获取指定的虚拟键码的按键的状态。得到的状态表示按键是按下了还是弹起的,还是状态切换(大小写状态、数字键盘锁状态)。一、判断按键是否被按下。通过高位来进行判断,高位为1表示按键按下,高位为0表示按键

2016-12-23 12:57:59 30776 2

原创 VC++鼠标、键盘的模拟操作

一、鼠标事件模拟使用的函数是mouse_event()函数,对于鼠标事件我们应该确定两个问题:1.鼠标点击了哪个键:左键、中键、右键?  2.鼠标点击的位置。mouse_event()函数常常配合SetCursorPos();函数来使用。mouse_event():1234567VOID mou

2016-12-23 10:15:33 5597

转载 Windows API详解——GetWindowThreadProcessId 获得窗口所在进程ID和线程ID

在得到窗口句柄后我们可以通过GetWindowThreadProcessId这个函数来获得窗口所属进程ID和线程ID,从而判断创建窗口的进程和线程。函数原型:DWORD GetWindowThreadProcessId(HWND hWnd,LPDWORD lpdwProcessId);参数说明:hWnd:传入的窗口句柄;lpdwProcessId:返回的进程ID地址

2016-12-22 11:03:30 19070

原创 寻找包含一个点的最小窗口:WindowFromPoint

1搜寻包含一个点的最小窗口/************************************************************************// SmallestWindowFromPoint// Find the smallest window still containing the point// WindowFromPoint returns th

2016-12-22 10:51:17 601

原创 SetROP2设置绘图模式

一、函数原型:int SetROP2( HDC hdc, int fnDrawMode);二、返回值:函数调用成功后返回调用前的模式,调用失败则返回零。三、参数:​1、R2_BLACK//Pixel is always black. 所有绘制出来的像素为黑色2、R2_WHITE//Pixel is always white. 所有绘制出来的像素为白色

2016-12-21 15:24:39 2307

转载 理解SetCapture、ReleaseCapture、GetCapture

正常情况下,鼠标指针位于哪个窗口区域内,鼠标消息就自动发给哪个窗口。如果调用了SetCapture,之后无论鼠标的位置在哪,鼠标消息都发给指定的这个窗口,直到调用ReleaseCapture或者调用SetCapture设置另一个窗口为止。很多时候,窗口或控件在鼠标按下后,需要知道鼠标移动和放开的情况,例如按钮在鼠标按下后会变为“按下”状态,鼠标移出按钮区域时“弹起”,所以按钮控件需要在鼠标按下

2016-12-21 14:33:30 1135

转载 windows程序窗口层次Z-order,顶层窗口,前台窗口,后台窗口,兄弟窗口,活动窗口

窗口Z次序:表明了重叠窗口堆中窗口的位置,这个窗口堆是按照一个假象的轴定位的,这个轴是从屏幕向外伸展的Z轴,上面的窗口覆盖下面的窗口。Windows系统管理三个独立的Z次序----一个用于顶层窗口、一个用于兄弟窗口、还有一个用于最顶层窗口,最顶层窗口覆盖其他非最顶层窗口,而不管它是不是活动窗口或是前台窗口。应用程序通过设置WS_EX_TOPMOST风格创建最顶层窗口。一般情况下,W

2016-12-21 13:29:57 12646

转载 RegisterWindowMessage与BroadcastSystemMessage

文章来自:点击打开链接和点击打开链接1、在WNDOWS中消息分系统消息和自定义消息。系统消息定义从0到0x3FF,使用0x400到0x7FFF定义自己的消息。Windows把0x400定义为WM_USER。如果想定义自己的一个消息,可以在WM_USER上加上一个值:#define WM_CONTROLPRINT WM_USER+1001另一种自定义窗口消息的方法是用Regi

2016-12-20 14:20:45 1740

原创 程序只运行一个实例(五)

全局变量共享节法:11、定义共享节:#pragma data_seg("Shared")HWND hPreWnd = NULL;#pragma data_seg()#pragma comment(linker, "/Section:Shared,RWS")22、利用共享节进行判断:if (hPreWnd == NULL) { hPreWnd = m_hWnd;} el

2016-12-20 11:03:59 480

转载 dll和exe的共享节------多进程共享dll/exe全局变量

我们都知道同一个应用程序的多个实例之间并不会影响各自的变量,虽然他们的地址空间都是被该应用程序的映像内的物理存储器所提交,他们的数据和代码都是指向了该应用程序的映像,但是他们还是不会影响各自的变量,因为采取了copy-on-write机制,当有一个实例去修改共享的那个数据区的时候,那么操作系统会另外分配一个内存块,该内存块就是存放这个实例修改的数据,所以并不会影响其他的应用程序实例。那么可

2016-12-20 10:57:09 1545

原创 程序只运行一个实例(四)

采用Mutex+FindWindow方法来实现:1TCHAR str[]=_T("TESTAPP"); HANDLE hdle=NULL; hdle=CreateMutex(NULL,FALSE,str); if (hdle!=NULL&&(GetLastError()==ERROR_ALREADY_EXISTS)) { AfxMessageBox(_T("已经运行一个实例"))

2016-12-20 10:12:41 562

原创 程序只运行一个实例(三)

采用 SetProp()设置窗口属性,并用EnumWindows()进行窗口的遍历:11、加入全局变量的定义及枚举窗口函数:TCHAR g_szPropName[] = _T("{12AA5160-5215-435b-AE3C-60C9E65615CE}");HANDLE g_hValue = (HANDLE)9527;BOOL CALLBACK EnumWndProc(HWND h

2016-12-19 16:26:30 441

原创 程序只运行一个实例(二)

通过 FindWindow 进行窗口的查找,若发现窗口已经存在则说明已经运行过一个实例,并将其窗口激活:HWND hWnd = ::FindWindow(_T("#32770"), _T("Test"));if (hWnd != NULL) { AfxMessageBox(_T("已经有一个实例正在运行中……")); ::ShowWindow(hWnd, SW_NORMAL); ::S

2016-12-19 15:35:40 421

原创 程序只运行一个实例(一)

使用互斥体方法:hMutex=CreateMutex(NULL,FALSE,"DevStateMSGAPP"); if (hMutex && (GetLastError() == ERROR_ALREADY_EXISTS)) { CloseHandle(hMutex); hMutex = NULL; AfxMessageBox(_T("已经有一个实例正在运行中……"));

2016-12-19 14:19:09 631

原创 VC++进行窗口枚举

借鉴内容来自VC++驿站:VC驿站①、使用 GetWindow 进行窗口枚举:This function retrieves the handle to a window that has the specified relationship to the specified window. HWND GetWindow(   HWND hWnd,   UINT uCm

2016-12-19 10:13:11 2982 1

原创 单文档中其它类反调视图类中函数的方法

一个单文档框架的程序,包含这几个类:CServMgrDoc、CServMgrView 、CServMgrApp、 CMainFrame。在视图类中通过右击产生一个对话框窗口,并将此对话框窗口关联一个类:CTFDS2TDlg。    现在ServMgrView.cpp中有一个消息映射函数OnRRefresh(),起到对视图进行刷新的功能,我想实现的功能是:点击TFDS2TDlg对话框上的 “X”

2016-12-14 10:00:59 424

原创 解决ORA-00020:maximum number of processes (150) exceeded 错误

问题原因:对于数据库的进程数超过最大值,只有资源打开之后,没有及时的关闭,或者说资源打开之后不正常的关闭界面造成数据库中的process处于inactive,没有释放,需要修改数据库的进程数据。解决方法:一、更改最大连接数有三种方法:1、运行cmd   1)sqlplus/nolog   2)conn sys/system@tfds as sysdba   3)alter

2016-12-04 10:24:45 7131

原创 OnOK()与OnCancel()

首先OnOK是对ID_OK的响应, OnCancel是对IDCANCEL的响应. 前者对应键盘的Enter, 后者对应Esc.MFC:1、Called when the user clicks the OK button (the button with an ID ofIDOK).2、The framework calls this member function when

2016-12-02 11:21:10 11154 1

原创 使用WM_SETTEXT消息改变程序框架的标题

1.在MainFrm.h中声明消息响应函数:afx_msg LRESULT OnSetText( WPARAM wParam, LPARAM lParam);2.在MainFrm.cpp中建立消息WM_SETTEXT和响应函数OnSetText的映射:                                                     BEGIN_MESSAGE_MAP

2016-12-01 15:24:10 2292

mqtt+VS2017+V141.zip

mqtt+VS2017+V141.zip

2021-11-25

ModelViewDemo.zip

ModelViewDemo.zip

2021-09-26

instantclient64位oracle免安装客户端.zip

64位的oracle11g免安装客户端

2021-08-20

PageSelect.zip

qt 分页查询

2021-08-05

C++ActiveMQDemo.rar

Vs2013编译的ActiveMQ库文件,64位的,包含Release版本和Debug版本

2021-01-26

ActiveMQ相关编译源程序.rar

ActiveMQ编译使用的相关源程序,全都打包好了,需要自己去编译

2021-01-26

instantclient_11_2.rar

instantclient_11_2.rar

2021-01-21

tinyxml.rar

解析XML文档的开源库

2021-01-06

信号槽开源库.rar

C++ 编写的轻量级 信号槽 开源库,老外的杰作 包含源码(头文件)和 使用说明。和一个简单的使用例子

2020-11-23

occi连接Oracle数据库——库文件.rar

occi连接Oracle数据库,包含dll、lib、h文件,不需要安装oracle客户端,采用occi方式连接

2020-06-10

opencv_4.3.0.rar

这是opencv4.3.0的源码包,需要自己编译,根据需要可以编译成32位和64位。切记需要自己用cmake进行编译

2020-04-15

zzc_libjpeg.rar

资源包含vs2010编译的64位和32位libjpeg库,vs2017编译的32位和64位libjpeg库。

2020-04-07

QLocalServer_QLocalSocket.rar

实现qt程序之间的进程间通信,采用的方式是QLocalServer和QLocalSocket.其方式是通过加载dll的方式。动态链接库里封装了服务端和客户端的功能。

2020-02-18

QT实现橡皮擦功能.rar

QT实现的,环境是QT Creater 4.10.1 对应的QT版本是qt5.13.2.实现的功能是打开图片,画笔功能,橡皮擦功能,保存图片

2020-02-13

ServerSyc.rar

代码非常详细,框架保证可用,自己亲自写的网络通信用的,如果有问题可以随时联系我,目前有一点小问题就是程序退出的时候,会有内存不能释放。

2020-01-14

zlib-1.2.11.tar.gz

下载的别人的挺好用的,传上来共享下。

2019-05-24

opencv2.4.4库(.h/.lib/.dll)

下载的大侠们请注意这不是opencv的安装程序,是opencv2.4.4使用时所需的库,包括.h/.lib/.dll文件,在VS中进行相关的配置后就可以使用opencv开发了。具体的配置方法详见本人的博客。

2019-02-22

Libevent学习资料(代码+文档)

里面有本人学习Libevent时使用过的文档,包括中文手册。还有本人写的基于Libevent多线程的服务器框架

2018-11-19

qt基于libev的多线程服务端

qt_eventdispatcher_libev 是基于 libev 的 Qt 事件调度器。 libev是高性能事件循环/事件模型的网络库,并且包含大量新特性。

2018-10-31

qt多线程服务器文件传输

qt实现的服务端,可以同时接收多个客户端的连接,同时接收多个客户端的文件传输任务。

2018-10-31

QT文件传输

qt实现的文件传输,程序既包含客户端又包含服务器端。。。

2018-10-17

QT tcp 聊天室

QT 实现的聊天室,基于tcp连接,功能:群聊、私聊、收发信息、收发文件。

2018-09-21

QT全局快捷键第三方开源库

QT的注册全局快捷键的第三方库,使用方法简单,自己使用过非常好用!

2018-07-31

qt截图工具

QT实现的截图软件,基本的截图功能,保存所接图片的功能

2018-06-04

Vs2010 + QT4.8.6 安装文件及配置详解

Vs2010 + QT4.8.6 安装文件及配置详解,里面的文档配置很全的。不过一下子上传不上来,还需要下载另外几个,我稍后传上来 qt-opensource-windows-x86-vs2010-4.8.6

2018-04-26

Vs2010 + QT4.8.6安装配置

Vs2010 + QT4.8.6 安装文件及配置详解,里面的文档配置很全的。

2018-04-26

CAsyncSocket和CSocket

使用CAsyncSocket和CSocket的一种通信模型,模型通信稳定,可以挪为己用。

2018-03-22

windows图像组件 wic_x86_chs.exe

windows图像组件,在2003服务器上安装vs2010旗舰版时是必须安装的

2018-01-24

批量图像增强工具

进行批量的图片的增强,自己测试的灰度图没有任何问题

2017-12-14

网络聊天室

基于Socket的网络聊天室,自定义消息长连接,模型值得学习

2017-12-14

CListBox自绘

自绘的实现,以此为基础画出自己的控件。实现自己的需求

2017-11-15

CTreeCtrl自绘

自绘的实现,以此为基础画出自己的控件。实现自己的需求

2017-11-15

CComboBox自绘

CComboBox自绘的实现,以此为基础画出自己的控件。实现自己的需求

2017-11-15

CMenu自绘实现

菜单自绘的实现,以此为基础,开发满足自己需求的各种功能的菜单

2017-11-15

ClistCtrl自绘

ClistCtrl控件进行自绘。以此为基础自绘自己的控件。开发自己的

2017-11-15

图片缩放工具

目前测试可以缩放灰度图片的大小。对于彩色图片没有进行测试

2017-11-13

账号管理的实现

两种代码,自定义结构体保存账号信息,使用CARCHIVE类保存账号

2017-11-13

画图软件的实现

采用图层软件架构实现的画图软件,你可以在此基础上不断的进行完善

2017-11-13

HTTP多线程下载

http实现的多线程下载。可以实现功能。作为学习HTTP的代码资料

2017-11-13

FTP通信的实现

基于FTP实现的文件的上传、下载、删除、等等操作。涉及到的

2017-11-13

空空如也

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

TA关注的人

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