自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hurryboylqs的专栏

勇者无惧

  • 博客(29)
  • 资源 (20)
  • 收藏
  • 关注

原创 中文字符串转utf8 八进制形式

std::string strxx = unicode_2_utf8(L"中文utf8转8进制"); CString strOct; for (int i = 0; i < strxx.length(); i++) { int b1 = strxx.at(i); if (b1 < 0) { ...

2020-04-16 13:53:59 2166

原创 VC++把某个窗口带到前台(设为前景窗口)

一看标题以为还不简单嘛,SetForegroundWindow不就OK了吗?或者以下中某一个?1.  ::ShowWindow(m_hWnd, SW_SHOWNORMAL);2.  ::SetActiveWindow(m_hWnd);3.  ::SwitchToThisWindow(m_hWnd, TRUE);4.  ::SetWindowPos其实都存在各种问题,尤其是自己的...

2018-12-13 13:01:26 1811

原创 Win10 设置取消快速启动栏图标,C++版

Win10对快速启动栏的设置在接口上并没有提供很好的方法,在网上找了一段是VBS和powershell写的,特地转成支持VC的版本:void    TaskbarPinWin10(LPCTSTR lpszFilePath,LPCTSTR lpszFileName){    do     {        TCHAR  szVal[MAX_PATH]={0};        ULON...

2018-11-15 16:16:28 1761

原创 VC 编译boost方法

官网下载好boost,解压出来,用vc的命令提示符cd到目录下执行:bootstrap.bat 生成bjam.exe然后执行:bjam --toolset=msvc-9.0 stage debug release link=static runtime-link=shared,static -j2 我这里是vc2008,如果是其他版本的vc 改下toolset即可vs201...

2017-07-06 13:56:39 779

原创 NodeJS解析url参数

var http = require('http');var url = require('url');http.createServer(function (request, response) { // 解析请求,包括文件名 var req = url.parse(request.url); var pathname = req.pathname; /

2017-04-25 17:41:54 7568

原创 服务程序中创建带管理员权限的UI进程问题总结

如果UI进程仅仅是一个普通的进程而不需要申请管理员权限,那问题不大,直接在服务里获取explorer.exe的token或者用WTSGetActiveConsoleSessionId和WTSQueryUserToken,然后用CreateProcessAsUser创建即可,好多参数都可以设置默认,当然前提是要等桌面创建好再获取,因为服务是在桌面创建之前就启动了的,这个要注意。然而管理员权限的进程可

2016-11-02 10:34:07 3485 1

原创 ADSI接口获取AD域服务器账户列表[VC++]

之前用ldap_open API系列,在bind的时候老是提示无效认证,最后msdn还找到了一种COM接口获取AD域控服务器用户列表的方法,代码我在例子的基础上修改了下,测试通过,能获取到:// ldapsearch.cpp : Defines the entry point for the console application.//#include "stdafx.h"#incl

2015-04-21 14:52:20 5679

原创 基于SkinSB皮肤滚动条美化源码的改进版本,完美支持x64

前言:大家知道,win32窗口的内置滚动自绘是个非常棘手的问题,在写这篇文章之前首先感谢下CSDN的mynamelj,他写的那个SkinSB开源的时候我就开始使用来美化一般win32窗口的滚动条,很好用,但是最近有想把自己的应用迁移到x64平台的想法,所以必须把全部源码编译成64位的版本,以便能在win 64位下获得最佳性能,好了废话不多说,继续往下看。改进SkinSB:当时遇到两

2012-08-10 23:36:18 5068 7

原创 大型文件服务器缓存架构

在硬件白菜价的今天,我们可以把媒体服务器设计成这样:无盘网吧,流媒体视频服务器,大型网站,音乐服务器 均可

2012-05-05 21:13:05 3745

原创 编程实现计算机硬件温度探测极其控制风扇转速总结

CPU,主板,硬盘,显卡,南北桥芯片,这些硬件在整个计算机系统中占据很重要的地位他们能否正常的工作直接影响着计算机的寿命,在一些大型企业或者电脑密集并经常运转的地方比如网吧,对硬件温度就非常敏感,夏天一到,加上设备是超负荷运行的话,老化速度就很快了。首先open hardware monitor这个开源的软件实现了大部分功能,但遗憾的是只有C#版本的简单描述下过程:CPU温

2012-04-07 17:58:13 6801 3

原创 今天成功把MFC代码的多语言问题用wxWidgets的方式搞定了

试过多种方式做多语言都不是很方便,发现wxWidgets的poEdit工具很不错,用key - value的映射和 _(X)的宏替换方式开发人员可以说完全跟多语言翻译解脱开来,而且保证写的代码可读性非常高,不用去定义一堆无意义的ID,想显示啥就写啥 ,如:SetWindowText(_("标题")); poEdit 的使用网上有介绍,现在关键要注意的是,我们是用中文,代码里的要翻译的文

2012-03-25 21:28:28 3489

原创 boost::shared_ptr是个好东西

在需要进行数据共享时 这个智能指针真的起了很大的作用这样管理起来数据既不冗余也十分的安全,因为有一个引用计数在后面支撑着,比如我搜索出来的列表,再压到另一个容器里,里面存储的仍然是实际的数据,就算是原先的容器被销毁了,只要搜索容器没被销毁数据依然可以使用,嘿嘿,感谢你啊 boost 非常安全struct RES_SERVER_GAME_ITEM{

2011-08-10 23:52:43 1121

原创 windows NT 服务程序的创建,删除,启动,停止

<br />/*函数名: RtStatrtService描述:启动一个NT服务,服务名字由参数传入*/BOOL RtStatrtService(LPCTSTR lpMachineName,LPCTSTR lpServiceName){ BOOL bResult = FALSE; SC_HANDLE hSCManager = OpenSCManager(lpMachineName, SERVICES_ACTIVE_DATABASE, SC_MANAGER_ALL_ACCESS);

2010-11-21 14:12:00 4600

原创 完美自绘制CListCtrl控件2[MFC]

上篇自绘了CListCtrl,做得大体上差不多了,但是CHeaderCtrl没有绘制,右边非column部分也没将网格线顶到头,实在是一个小遗憾这里一并将CHeaderCtrl绘制了而且斑马线也画到最右边,使用这个listctrl的时候只需这样子设置,就可以获得很好的效果: DWORD dwExtentStyle = m_list.GetExtendedStyle(); m_list.SetExtendedStyle(dwExtentStyle|LVS_EX_FULLROWSELECT|LVS_EX_D

2010-09-03 18:12:00 11696 11

原创 完美自绘制CListCtrl控件[MFC]

自绘一个item我相信大部分人都在10分钟内能搞定但是绘制非item部分的区域,同学们就傻眼了,不知道如何下手CListCtrl的绘制机制在windows里做了一个优化,就是一个绘制循环通知过程之所以不在OnPaint中画是考虑效率上的原因,好了我们看下这个绘制循环:  CDDS_PREERASE 准备开始擦除循环 CDDS_POSTERASE 擦除循环结束 CDD

2010-09-02 15:48:00 20374 19

原创 控制台程序不显示dos窗口并给EXE设置图标的方法

<br />用ShowWindow(hWnd,SW_HID)的方法不奏效,双击图标还是会闪一下<br />因为程序是后台运行的,闪一下用户还是说“很吓人”,有病毒的感觉,呵呵<br /> <br />//代码前面加上#ifdef _UNICODE#pragma comment( linker, "/subsystem:/"windows/" /entry:/"wmainCRTStartup/"") #else#pragma comment( linker, "/subsystem:/"win

2010-08-29 00:56:00 3347

原创 WTL的CBitmapButton在MFC下完美使用

<br />MFC下的CBitmapButton我觉得是牛脾气的难用,WTL的这个不错,完全自绘,使用也简单方便<br />现在改装好并结合MFC的方式,下附源码及使用例子:<br />代码移植于WTL的CBitmapButton,可以在MFC下完美的使用<br /> <br />SkinButton.h<br />#pragma once// CSkinButton// bitmap button extended styles#define BMPBTN_HOVER 0x000

2010-08-28 12:35:00 5371

原创 控制台程序输入密码时显示星号

<br />int _tmain(int argc, _TCHAR* argv[]){ char password[100]=""; char c; int i=0; while (true) { c=getch(); if (c=='/r') { break; } else if (c=='/b') { if (i>0) i--; putchar('/b'); putchar(' '); put

2010-08-27 12:53:00 1362

原创 URL Encode

用VC实现post数据常常会遇到URL编码问题在此封装一个工具类进行UTF8编码的转换源码来自php source code只是简单的封装给C++调用//URL 编解码类//来自PHP源码class CRtUrlConv{public: static char *urlencode(const char *in_str ) { char *out_str; int in_str_len, out_str_len; in_str_len=strlen(in_s

2010-07-01 13:49:00 4318

原创 P2P中打洞的若干问题

打洞这原理也不是我起码不是CSDN中任何一个人所创的,这个原理应该来网关(路由器NAT)的制造者,首先不请自来的数据NAT会毫不客气的丢掉的,这大家都认可,然后就是那套打洞逻辑了: 我们先看下图: 在Client A和Client B之间建立UDP直连的过程如下: (1)  Client A登录Server S,NAT A 为这次的Section分配了一个端口55000

2010-05-05 00:53:00 9393 9

原创 各种设计模式一览

 模式的简单概念: 设计模式:一个设计模式描述了一个被证实可行的方案。这些方案非常普遍,是具有完整定义的最常用的模式。一般模式有4个基本要素:模式名称(pattern name)、问题(problem)、解决方案(solution)、效果(consequences)。  常见23种模式概述:  1) 抽象工厂模式(Abstract Factory):提供一个创建一系列相

2010-05-03 19:09:00 1044 1

原创 设计模式之工厂模式(Factory)

工厂模式在应用中使用得也很广泛,他提供了一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。考虑一个动物类Animal,提供shout,eate,grow方法,并从这个抽象类派生具体的动物子类:Cow,Horse,Dog,Pig最后通过Factory类实例化他们,Factory提供一个静态的方法getAnimalInstance,并传递一个字符串参数表示创建具体的类 

2010-05-03 15:01:00 848

原创 设计模式之观察者模式(Observer) C++ 实践

在上一篇中简单的介绍了设计模式中Observer模式的java实现,本人一直在做C++开发,理所当然要做一个C++的实现版,java基础基本是在学校拿下的,工作后偶尔玩下,android开发也是基于Java的,所以我熟悉java语言并不奇怪,仅仅是我没有做过java的大型项目罢了,好了言归正传,这里的Observer c++版本也基本是参考java语言的接口,函数名字基本一样,只是我采

2010-05-03 00:05:00 2349 5

原创 设计模式学习

gof--“四人帮”描述的设计模式中并不给出一个具体的实现,里面仅仅简单的描述原理和自己的经验设计模式是在工作中才能体会到它们的作用的,有些人喜欢大肆的吹捧它,甚至以是否熟悉设计模式来衡量一个程序员的水平,这是十分不厚道的。既然gof那本书已经很经典了为什么还要自己写些关于这方面的东西呢?网上搜索一下,学习设计模式方面的博客总结不少,厚道的说gof那本书不适合中国人或者说初学者看,原因有者

2010-05-02 14:54:00 2183

原创 自绘标准CTreeCtrl的实现(NM_CUSTORMDRAW方法)

自绘树CTreeCtrl可以自己用子类化在派生类里的OnPaint里绘制也可以响应NM_CUSTORMDRAW这个反射消息,然后绘制,NM_CUSTORMDRAW里有个什么绘画周期的概念,他可以在不同的绘画段绘制不同的内容,这里具体细节不再赘述,读者可以参考MSDN,这里主要阐述NM_CUSTORMDRAW的绘制方式:void CSkinTreeCtrl::OnNMCustomdraw

2010-05-01 15:57:00 13900 14

原创 如何完美的将对话框设置成无边框无标题栏样式?

很多同学在绘制UI时喜欢将窗口或者对话框设置成无边框无标题栏样式,然后在客户区里就可以”胡作非为“了,想干什么都行然而新手们包括笔者以前都遇到的一个问题是:对于对话框来说直接这样设置:ModifyStyle(WS_CAPTION | WS_THICKFRAME, 0, SWP_FRAMECHANGED);  是不完美的,他们会发现在对话框的情况下,那个border还是存在,最后怎...

2010-04-24 23:29:00 17372 17

原创 在线音视频加速器终于实现了

本来想两天就搞定的一个小东东,花了我一周多,主要是有一个bug隐藏不露后来被我纠出来了,现在看起来跑的很稳定,多线程多来源并发加速,嘎嘎界面再做做就可以了,这个交给UI设计师画下图就OK了。基本原理就是HTTP分片下载啦,还有截获浏览器的HTTP请求,主要通过本地自动代理配置实现我全是socket api控制实现,不用微软那一套wininet api,好移植加速视频的要改动下缓

2009-12-30 21:09:00 5196 4

原创 窗口内置的滚动条如何绘制的更好?

 我绘的太难看啦,大家觉得应该怎么绘制呢?响应了一堆消息 ,最后还是绘制不好,那位有这方面经验的给小弟指点指点,有例子更好,PS:不能通过新建窗口替换的方法  case WM_MOVE: case WM_PAINT: case WM_NCPAINT: case WM_NCACTIVATE: case WM_NOTIFY: case WM_NCLBUTTONUP:case WM_NC

2008-10-18 21:36:00 977 1

原创 庆祝blog新开通

好忙,没时间写文章 啊

2007-08-31 20:20:00 676

SDKSKinDemo.zip

有些朋友说之前提供的MFC非客户区标题栏自绘不支持纯win32方式,其实稍微改下就支持了,这里提供一个,一些类为了方便用到了atl的,仅仅是一些贴图函数用到。

2020-05-08

策略为王股票分析软件 源代码

原来的代码用vs2008或者更高的版本编译器会出很多错误,本人修改了所有的编译错误转换成vs2008工程 ,您也可以将此项目转换成更高的VC版本编译

2020-02-19

213demo.zip

对该问题的例子测试代码:https://bbs.csdn.net/topics/394702360

2019-10-12

7zstatic.zip

7z解压静态库,从7z1805-src版本封装而来,是目前较新的版本,只需要调用里面的extract_7z这个函数即可

2019-05-10

支持CMake生成vs2017工程的openssl

网上下载的源码都是用perl+makefile编译,好麻烦不说,设置参数也不方便,比如用vs2017 又想支持window xp

2019-01-18

海康摄像头捕获并解码成YV12数据用directdraw显示

海康摄像头捕获并解码成YV12数据用directdraw显示,CSDN必须要设置资源分,没办法设置为0分

2017-11-16

类QQ窗口截图功能

类QQ窗口截图功能

2017-08-12

duilib官方版ListUI多选改进

UIList支持多选,在官方最新版上改的,修正了有垂直滚动条的情况,滑轮滚动多选问题!

2017-06-27

firefox SSL证书导入工具

certutil可以用命令导入firefox根证书

2017-04-30

非客户区自绘WTL版本

标题栏自绘是很多初学者最苦恼的问题,目前网上的例子要么是系统默认的标题按钮时不时的会重现出来,要么是影响了窗口非客户区原来默认的行为(去掉系统菜单)等等,各种的不如意,于是本人研究试验了下,感觉这个是比较完美的了,不影响任何原来窗口的特性,比如标题栏系统菜单等,要么是把非客户区去掉了,然后自己模拟,笔者也有这样处理过,不过这里只演示非客户区标题栏绘制的例子,代码简单易学

2013-10-29

非客户区自绘类CSkinWndHelper,支持任何HWND

标题栏自绘是很多初学者最苦恼的问题,目前网上的例子要么是系统默认的标题按钮时不时的会重现出来,要么是影响了窗口非客户区原来默认的行为(去掉系统菜单)等等,各种的不如意,于是本人研究试验了下,感觉这个是比较完美的了,不影响任何原来窗口的特性,比如标题栏系统菜单等,要么是把非客户区去掉了,然后自己模拟,笔者也有这样处理过,不过这里只演示非客户区标题栏绘制的例子,代码简单易学,例子提供非常漂亮的界面演示和全部源码。

2013-10-29

MFC非客户区完美自绘

标题栏自绘是很多初学者最苦恼的问题,目前网上的例子要么是系统默认的标题按钮时不时的会重现出来,要么是影响了窗口非客户区原来默认的行为(去掉系统菜单)等等,各种的不如意,于是本人研究试验了下,感觉这个是比较完美的了,不影响任何原来窗口的特性,比如标题栏系统菜单等,要么是把非客户区去掉了,然后自己模拟,笔者也有这样处理过,不过这里只演示非客户区标题栏绘制的例子,特发此贴以飨读者。

2013-10-25

支持x64版本的窗口内置滚动条皮肤库源码

大家知道,win32窗口的内置滚动自绘是个非常棘手的问题,在写这篇文章之前首先感谢下CSDN的mynamelj,他写的那个SkinSB开源的时候我就开始使用来美化一般win32窗口的滚动条,很好用,但是最近有想把自己的应用迁移到x64平台的想法,所以必须把全部源码编译成64位的版本,以便能在win 64位下获得最佳性能,好了废话不多说,继续往下看。 改进SkinSB: 当时遇到两大难题,第一个是API钩子库detours在X64下用不了,第二个是skinsb自有源码小部分不适应64位。 对于第一个难题,当时到微软网站看了下其实detours 3.0版本有支持64位的,但是不是免费的,收费$9999一套,相当于7万RMB左右,这费用我等实在付不起,只好另找其他方法,经同事介绍mhook库,稍微看了下也是开源的,使用方法也很方便,就两个函数,一个Mhook_SetHook加载API钩子,一个Mhook_Unhook

2012-08-10

VC实现远程CMD的功能

用VC重定向实现cmd输入输出,加上网络传输就可以实现远程CMD命令行的功能

2011-03-27

完美自绘制CListCtrl控件2[MFC]例子源码

完美的绘制了CListCtrl的Item部分和非item部分 效果类似CSDN的网格线效果

2010-09-03

无边框窗口的缩放,UI美化

无边框的窗口实现拖放 跟一般窗口一样的功能 标题栏边框美化,很多同学将边框标题栏去掉就不知道 怎么实现原有的缩放拖大拖小的功能了,其实这很简单 这里我做个例子方便大家参考 并对UI进行了简单的美化

2010-07-26

VC 实现鼠标拖动控件边框改变其大小

VC 轻松实现鼠标拖动控件边框改变其大小 根本不需要响应什么LButtonDown之类的

2010-01-28

类似360安全卫士的TabCtrl

刚才那个传错了,补上 就是类似360安全卫士的TabCtrl

2010-01-07

360TabCtrlDemo2

刚才那个鼠标事件没处理,现在加进去 这样在间隔的地方就不响应鼠标动作了

2010-01-07

360TabCtrlDemo

很多人用360,都知道他的那个tab,于是很想模仿,但又不知道怎么做,不熟悉的就用按钮或其他控件来模拟一下,做的也很好 其实微软自身的TabCtrl就能胜任这样的UI,只是很多人不知道怎么去自绘它,或者说很懒,到处乱找代码,这里就给发个出来,圆角我就不做进去了,换个图片即可,代码很少很简单,一看就懂 所以时常说不要自己去创造一套了,这常见的东西人家微软早做好了,只是你没会用罢了

2010-01-07

空空如也

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

TA关注的人

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