- 博客(55)
- 收藏
- 关注
转载 _stdcall 和 _cdecl
每个线程都必须有一个进入点函数,线程从这个进入点开始运行。主线程的进入点函数是main,如果想在线程中创建另一个辅助线程,则必须为该辅助线程创建一个进入点函数,这个函数被称为线程函数。线程函数的定义如下:DWORD WINAPI ThreadProc(LPVOID lpParam); //线程函数名称可以是任意的WINAPI 是一个宏,在windef.h 文件中有声明:
2014-07-04 18:12:03
414
转载 MFC下图形任意角度旋转.
图形的旋转公式:x1 = (x - xcenter) * cosθ - (y - ycenter) * sinθ + xcenter; y1 = (x - xcenter) * sinθ + (y- ycenter) * cosθ + ycenter; x, y:为原先点的坐标位置。x1, y1旋转后点的坐标位置。Xcenter, ycent
2014-07-04 18:04:45
7695
转载 MultiByteToWideChar codepage的定义
定义描述874Thai932Japan936Chinese (PRC, Singapore)949Korean950Chinese (Taiwan; Hong Kong SAR, PRC)1200Unicode (BMP of ISO 10646)1250Windows 3.1 Ea
2014-07-02 16:19:12
747
转载 项目经理10大成功态度
态度决定一切,要将项目做好,除了要掌握项目管理技能之外,项目经理更应该具备良好的态度,有人总结了10大成功态度如下:1. 要有“一定要”的决心:一个人不是一定要的时候,连小石头都可挡住他的去路,只有“一定要”的人,再大的障碍都挡不住他想要的结果。2. 要有强烈的企图心:要以成为行业中的世界最顶尖为目标。只要能找出一个成功的理由,你就能够成功! 3. 相信:成功者先相信,后看
2014-06-19 18:59:58
490
转载 雷军终极反思:创业者的运气有多重要
雷军终极反思:创业者的运气有多重要讲述者:雷军 创业成功的路有千千万,每个人创业成功的经验都不相同。所以,我也只能讲讲自己对创业的体会和我的一些创业思路。 到底怎么才能创业成功呢?我觉得,其实创业成功80%是靠运气,无论是谁都不例外。为什么这么讲?去年我给很多朋友推荐过一本书,叫《异类》,那本书讲成功的两个要素,我自己看完以后特受启发,讲的一个案例。作者讲的是加拿大
2014-06-19 10:27:39
836
转载 创业经历
转载坛子里一哥们写的创业经历,我觉得写的挺好的。他本人博客删除了这篇文章,可能是不希望被有些人看见,我就不注明是谁了。如有问题,请与我联系。好久没写过东西了,本来想旅行到处散散心的,但是现在上海简直是太热了,坑爹的40度啊,哪里也不想去,决定来星巴克坐坐,讲讲这一年多来的创业故事,以及分享一下创业失败经验! 记得2012年3月那会,人还在腾讯(深圳
2014-06-18 23:07:02
682
转载 C++中使用CAtlHttpClient显示网络图片的方法,支持png,bmp,gif图片格式
void CShowNetImageView::OnDraw(CDC* pDC){ CShowNetImageDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; // TODO: 在此处为本机数据添加绘制代码 CAtlHttpClient* client = new CAtlHttpClient(
2014-06-18 15:33:48
776
转载 快速排序算法简单易懂实现
void swap(int *p1, int *p2){ int temp; temp = *p1; *p1 = *p2; *p2 = temp;}int partition(int data[], int lo, int hi)//data[lo]--data[hi]{ int i, j; int key = data[hi]; i = lo; for(j = lo;
2014-06-18 15:30:34
382
原创 CAtlHttpClient 下载文件保存到本地,拿去就能用简单易懂
void CtestdddDlg::OnBnClickedButton1(){ USES_CONVERSION; CAtlHttpClient httpCli; tstring strURL=_T("http:// .ppstream.com/ppsgame_silent.exe"); if( httpCli.Navigate(strURL.c_str())) { if (
2014-06-18 15:27:01
872
1
转载 开源免费的C/C++网络库(c/c++ sockets library)
(1)ACE庞大、复杂,适合大型项目。开源、免费,不依赖第三方库,支持跨平台。http://www.cs.wustl.edu/~schmidt/ACE.html (2)AsioAsio基于Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。开源、免费,支持跨平台。http://think-async.com/ (3)POCO
2014-06-18 10:41:32
409
转载 C++ 对象的内存布局(下)
C++对象的内存布局(下) 陈皓http://blog.csdn.net/haoel <<<点击这里查看上篇 重复继承 下面我们再来看看,发生重复继承的情况。所谓重复继承,也就是某个基类被间接地重复继承了多次。 下图是一个继承图,我们重载了父类的f()函数。 其类继承的源代码如下所示。其中,
2014-06-16 15:07:59
340
转载 C++ 对象的内存布局(上)
C++对象的内存布局(上) 陈皓http://blog.csdn.net/haoel 点击这里查看下篇>>>前言 07年12月,我写了一篇《C++虚函数表解析》的文章,引起了大家的兴趣。有很多朋友对我的文章留了言,有鼓励我的,有批评我的,还有很多问问题的。我在这里一并对大家的留言表示感谢。这也是我为什么再写一篇续言的原因。因为,在上一篇文章
2014-06-16 15:07:26
356
转载 C语言的谜题
我们可以看到很多C语言相关的一些东西。比如《语言的歧义》主要告诉了大家C语言中你意想不到的错误以及一些歧义上的东西。而《谁说C语言很简单》则通过一些看似你从来不可能写出的代码来告诉大家C语言并不是一件容易事情。《6个变态的hello world》和《如何弄乱C的源代码》则以一种极端的方式告诉大家,不要以为咱们自己写不出混乱的代码,每个程序员其实都有把代码搞得一团乱的潜质。通过这些文
2014-06-16 15:06:47
347
转载 C++ 虚函数表解析
C++ 虚函数表解析 陈皓http://blog.csdn.net/haoel 前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的
2014-06-16 14:53:59
349
转载 MFC 打印程序的编制
MFC 在实现打印编程工作时已经建立了一个已有的框架,我们只要往这个框架里面填东西即可。打印工作其实就是在DC 上绘图,不过这里的DC 是打印机的DC ,明确这一点之后,想当然的,我们打印的任务可以分为获取打印机DC 、根据打印机驱动让用户交互设置打印参数、开始打印、打印的具体过程(分页、绘制等)、结束打印、释放DC 。以下通过一段示列代码来说明:
2014-06-09 14:12:12
826
转载 mfc实现图文打印
怎样用CPrintDialog来实现打印功能 把以下程序段加入你的程序 把dc1当作Device Content. 就任你打印了.注意别画错地方. 自己换页. 更绝的是可调用窗口的OnPrint或OnDra
2014-06-09 12:14:35
829
1
转载 c/c++/MFC 调用 js 函数代码
调用函数代码和示例 1 首先 .h 文件中定义: CComPtr m_sphtmlWnd; CComPtr m_spHtmlDoc;//方法1 可以取得返回值。。。。。//调用方法示例:stringArray为传入参数列表,getSum为js函数,pVarResult 为返回值/* CStringArray stringArray; stringArray.Remove
2014-06-09 11:50:10
757
转载 C++使用VS2010导出Excel的方法及步骤
最近工作需要将listctrl中的数据导出到Excel中。网上找了很多,但多数是VC6.0的。结合VC6.0导出的方法,自己琢磨了不少时间,终于将问题解决了。轻松之余,将过程分享出来,希望对需要的人有所帮助。 VC6.0的请看这里:http://topic.csdn.net/t/20050718/15/4151984.html 环境:Windows7Mic
2014-06-05 17:19:45
707
转载 Boost::Thread使用示例
Boost::Thread的实现总体上是比较简单的,前面已经说过,thread只是一个跨平台的线程封装库,其中按照所使用的线程选项的不同,分别决定使用Windows线程API,pThread,或Mac平台的thread实现。以下只讨论Windows,即使用BOOST_HAS_WINTHREAD的情况。Boost::Thread有两个构造函数:一个是thread(),构造一个表示当前执行线程的线
2014-06-04 17:01:49
418
转载 CListCtrl自动排序
在C++界面开发中,WLT::CListCtrl和MFC的CListCtrl都没有自动排序功能,不过他们都提供了一个回调函数,通过SortItems或者SortItemsEx方法来进行。激活SortItems方法,需要接受Column的Click事件,然后设置合适的数据,就可以实现自动排序了。 CListCtrl的排序微软的VC++实在是个弱智的IDE,编程10小时,
2014-06-04 14:26:00
752
转载 VC++中MCI播放音频文件
MCI播放mp3音频文件例程源文件中需要包含头文件 Mmsystem.h,在Project->Settings->Link->Object/libray module中加入库 Winmm.lib。或添加代码#pragma comment(lib, "winmm.lib")MCI_OPEN_PARMS op;
2014-06-04 14:23:04
946
转载 监控Windows操作系统用户增删修改
监控Windows操作系统的用户信息更改,可以采用监控注册表来实现。在注册表中,用户和用户组信息保存在HKEY_LOCAL_MACHINE的SAM\\SAM\\Domains\\Account下面。用户信息保存在SAM\\SAM\\Domains\\Account\\Users下面;用户组信息保存在SAM\\SAM\\Domains\\Account\\Aliases下面。当然可以
2014-06-04 14:16:36
530
转载 关于CreateThread和_beginthreadex的区别与联系
1.简单来说CreateThread是Windows下用于创建线程的系统API,_beginthreadex则是Visual C++运行时库函数2._beginthreadex会在内存堆上分配一个与线程相关的数据块,而CreateThread不会分配该数据块3.如果调用strtok、strerror、gmtime等等,会分配线程相关的数据块。当线程退出时,用_beginthread
2014-06-04 14:12:58
527
转载 一道面试题分析
#include int main(void) { int a = 10, b = 20, c = 30; printf("\n %d..%d..%d \n", a+b+c, (b = b*2), (c = c*2)); return 0; } 上面的输出是:110..40..60 分析:因为函数压栈的原因,函数在参数压栈的时候,是从右至左的
2014-06-04 14:09:45
363
转载 Shadow Hook实现网络安全打印监控
如何实现对打印的监控,微软提出的一种解决方案就是时刻检测放到打印队列中的打印任务,发现有任务出现,就从中筛选出来提供给调用者。对此功能的实现,微软的确公开了一套完整的代码,并且能够实现我们基本想要的功能,但是在实现功能之余,我又进行了更深一层的研究和测试,通过Hook win32k.sys内的打印相关的4个函数就完美地实现了打印监控功能。我们先分析一下当系统完成一次打印任务需要调用的几
2014-06-04 14:04:38
937
转载 如何在SYSTEM权限下实现屏幕监控
屏幕监控是远控软件的基本功能之一。版权声明作者:iprowq现在很多远控程序的服务端通常为DLL形式,通过远程线程注入等方法插入到services、svchost等SYSTEM权限的进程中去,而此时常规的屏幕监控就会失效(这是因为与SYSTEM权限进程关联的窗口站、桌面与普通进程不同)。如何才能在SYSTEM权限下实现屏幕监控呢?一、 屏幕监控的基本原理屏幕
2014-06-04 12:13:55
3649
转载 VC隐藏任务栏和桌面图标
HWND hTaskBar=FindWindow("Shell_TrayWnd",NULL);//find taskbar handle ShowWindow(hTaskBar,SW_HIDE); HWND hDeskIcon=FindWindow("Progman",NULL); //find desktop icons ShowWindow(hDeskIcon,SW_H
2014-06-04 12:11:14
795
转载 VC++截取输入法输入信息钩子dll实现
我们在实现输入法的智能纠正的时候,需要获取输入法输入的信息,如何实现呢,钩子如下 [cpp] #include "windows.h" #include "imm.h" #include "stdio.h" //#define HOOK_API __declspec(dllexport) HHOOK g_hHook
2014-06-04 12:10:28
660
转载 C++函数重载
1. 概述如果两个函数名字相同并且在相同的域中被声明,但是参数表不同,则它们就是重载函数overloadedfunction。 1.1 重载函数条件参数类型或参数个数不同。返回值不同不能视为重载。是否为常函数不能视为重载对于普通类型参数只有const、volatile区别不能视为重载,但是如果参数是指针或 引用类型,那么const、v
2014-06-03 22:24:31
432
原创 MFC双缓冲代码,拿去就能用,非常简单
BOOL CDlgUserInfoList::OnEraseBkgnd( CDC * pDC ){ //获取窗口大小 CRect rtWindow; GetWindowRect(&rtWindow); ////////////////////////////////////////////////////////////////////////// CDC MemDC; //首先定义
2014-06-03 19:22:00
1002
转载 2014-03-29.阿里实习生招聘笔试题目
第一题选C,不解释吧,按位与就行 第二题选D,不解释,2*3*sizeof(int*)=48(64位机器上是8字节一个指针) 第三题选C,我不确定,不过,应该是的 第四题选D,明显考的是补码 第5题选D,果断访问错误(这是Java的代码) 第6题选B,大家都懂 第7题果断A啊 第8题果断是B,不解释,大家懂 第9题是B,’0’不是’\
2014-06-03 17:10:37
414
转载 软件开发中的“瑞士军刀综合症”
英文原文:Swiss Army Knife Syndrome 如果大家认为这篇文章更多是在喷,我先说抱歉。“瑞士军刀综合症”的想法是起源于我和项目经理、客户、甚至其他开发者打交道的过程中产生的沮丧感,他们都以一种狭隘特殊的方式思考问题。我称之为“瑞士军刀综合症”。 瑞士军刀 “瑞士军刀”这个词通常用于描述一种可以在各种情况下使用的多种工具的集合体。
2014-06-03 14:11:19
667
转载 (转载)屌丝从毕业时的月入3000到三年后亿万身家的精彩励志之旅
刚毕业我只有3000, 但我立志三年后要月入3万 是在一家广告公司,每天跑业务 我每天都很勤恳地和前辈学习, 连修理打印机都自学成才了 老板看我很努力,多有嘉许 毕业半年后转正,薪水3300 经理找我谈, 说如我愿接受夜班,可再加500 我没动心 因为晚上是自我提升的宝贵时间 我泡图书馆,借了财务的书来看
2014-06-03 13:59:24
1373
2
转载 MFC所有控件随窗口变化的实现
1.在头文件中加入: POINT Old;//存放对话框的宽和高。 void resize(); //声明函数2.在OnInitDialog中加入: CRect rect; GetClientRect(&rect); //取客户区大小 Old.x=rect.right-rect.left; Old.y=rect.bottom-rect.top;
2014-05-26 17:49:31
501
转载 vc显示jpg,gif图像简单方法
ShowJpgGif(CDC* pDC,CString strPath, int x, int y){ IStream *pStm; CFileStatus fstatus; CFile file; LONG cb; if (file.Open(strPath,CFile::modeRead)&&file.GetStatus(s
2014-05-26 17:45:59
377
转载 vc画图的一些简单方法演示,各种DC
/*HDC hdc = ::GetDC(this->GetSafeHwnd()); MoveToEx(hdc,m_BtnDown.x,m_BtnDown.y,NULL); LineTo(hdc,point.x,point.y); ::ReleaseDC(this->GetSafeHwnd(),hdc);*/ /*CDC *pDC=GetDC(); pDC->MoveTo(m_B
2014-05-26 17:32:30
449
转载 如何实现双缓冲、vc双缓冲
CDC MemDC; //首先定义一个显示设备对象CBitmap MemBitmap;//定义一个位图对象//随后建立与屏幕显示兼容的内存显示设备MemDC.CreateCompatibleDC(NULL);//这时还不能绘图,因为没有地方画//下面建立一个与屏幕显示兼容的位图,至于位图的大小嘛,可以用窗口的大小MemBitmap.CreateCompatibleBitmap(pDC
2014-05-26 17:30:20
371
转载 VC++20个小技巧(copy)
一、打开CD-ROMmciSendString("Set cdAudio door open wait",NULL,0,NULL);二、关闭CD_ROMmciSendString("Set cdAudio door closed wait",NULL,0,NULL);三、关闭计算机OSVERSIONINFO OsVersionInfo; //包含操作系统版本信息的数据结构OsVersi
2014-05-26 17:26:26
504
转载 VC获取窗口图片(截图)
//借鉴网上的文章:HBITMAP CopyDCToBitmap(HDC hDC, LPRECT lpRect) { if(!hDC || !lpRect || IsRectEmpty(lpRect)) return NULL; HDC hMemDC; HBITMAP hBitmap, hOldBitmap; int nX, nY, nX2, nY2;
2014-05-26 17:21:24
995
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人