- 博客(46)
- 资源 (17)
- 收藏
- 关注

原创 得到屏幕大小的方法大全(你知道有几种?)
现在计算机就像买白菜一样,规格各异。有时候需要检测电脑的屏幕大小,以适应软件的需求。现总结如下,欢迎大家添加,一是增张我的见识,二是方便大家查询。
2010-11-25 11:50:00
3369
原创 关于 VS2008 字符集改用多字节字符集时,控件显示样式变为旧样式的问题的解决
问题描述:再Win7系统下,用 VS2008建立工程后,默认的字符集为:使用 Unicode 字符集。由于该字符集使用比较麻烦,我常常将默认字符集该为:使用多字节字符集。但是当运行程序时发现程序中的很多控件的显示风格变为旧风格,很不好看。解决方案:在认真比对后,发现是stdafx.h文件的问题。主要为:#ifdef _UNICODE#if defined _M_IX86
2011-10-26 17:35:28
2768
3
原创 给大家推荐一个比较好的VC论坛【VC驿站】
<br />无意中发现了一个号的VC站点,可以免费下载各种书籍、文档和源码等等,真的很不错的。<br /><br />【VC驿站】http://www.cctry.com/?fromuid=20617[/url]<br />
2011-01-18 13:59:00
3575
转载 冒泡排序
冒泡排序又称起泡排序,这是一种简单效率最低的排序,也是大家非常熟悉。下面看看,冒泡排序的是怎样工作:我认为这种排序分为两两种:向上冒泡和向下冒泡:
2010-12-07 10:19:00
928
转载 一段简单的C/C++病毒源程序
主要是感染C/C++源文件只要编译该段源程序就会使当前目录里的所有.c和.cpp文件感染上病毒,当然如果是没有主函数的源文件就没有作用:思想很简单:插入一段复制自身的代码,而这段代码是将自身的病毒部分传播给同目录下的其它文件。
2010-12-07 10:16:00
18240
1
转载 共享一个获取本地信息IP,MAC的头文件及其实现方法(更新)
//================================================<br />//文件名:MNetWorkPKT.h<br />//常见的网络数据包的数据结构<br />//================================================<br />#ifndef _NETWORK_PACKET_H<br />#define _NETWORD_PACKET_H#pragma once//地址定义<br />//================
2010-12-07 10:13:00
1661
原创 ASCII代码对照
<br />Bin<br />Dec<br />Hex<br />缩写/字符<br />解释<br />00000000<br />0<br />00 <br />NUL(null)<br />空字符<br />00000001<br />1<br />01<br />SOH(start of headling)<br />标题开始<br />00000010<br />2<br />02<br />STX (start of text)<br />正文开始<br />00000011<br />3<br
2010-12-06 14:58:00
842
转载 使用Windows API画位图(BITMAP) (原帖由niesongsong发表)
标 题:【原创】使用Windows API画位图(BITMAP)<br />作 者: niesongsong<br />邮 箱:nie@song.ah.cn<br />关键字:C语言、Windows API、BitBlt、StretchBlt、DC <br />时 间:2010-09-04<br /><br />【前言】<br />有人说不要重新发明轮子,诚然,我同意这种说法,作为运行在Windows上的用户级程序均构架在Windows API之上。如果你了解或者深究Windows API,
2010-12-06 14:36:00
1849
原创 WM_NCCALCSIZE消息处理详解修正(原帖由niesongsong发表)
看了网上的一篇《关于WM_NCCALCSIZE消息处理详解(原帖由niesongsong发表)》的文章,正好自己正在写换肤程序,用了以后发现了一些问题,特贡献出来供大家参考学习!
2010-12-06 14:32:00
3895
原创 窗口全屏化得方法大全(5种方法,你都知道吗?)
在很多的时候,希望自己的软件在整个窗口运行,以利用资源和显示清楚,方便用户。先将软件全屏显示的方法总结如下:
2010-11-25 11:05:00
6309
原创 VC++颜色渐变实现的3种方法
要实现窗口(如菜单、按钮、主背景等)背景颜色的多样化,有很多种实现方法,其中颜色渐变就是一种比较常见的方法。它简单实用,即改变了窗口背景颜色的单调,又实现简单。主要方法有很多种,各有各的算法和特点。我在此给大家介绍3种比较简单的方法,且是2种颜色之间的渐变。1.自绘法:2.使用windows的提供的一个API函数3.直接加载外部图片4.GDI+ 函数本文提供了以上3种渐变方法的测试工程,检验证均能满足要求。工程源码下载地址:http://download.youkuaiyun.com/source/2836
2010-11-16 12:59:00
9805
1
原创 VC 6 MFC 美化界面方法和技巧
前段时间一直在想怎么样能让窗口变得更漂亮一点,更加吸引人呢?在网上也看到了不少高手们的做法,但对于我这种不喜欢太复杂的人来说,我不是很喜欢那样写代码,GetSystemMetrics函数来得到各个边框的长度或宽度。。。。没几下,我的头就晕了,在查了许多资料以及实验后,我终于找到了一种比较简单的美化窗口的方法,现在就拿出来献丑一下,觉得不好的就请跳过去吧~~大家请看这张图:
2010-11-11 12:27:00
4962
1
转载 pragma指令简介
在编写程序的时候,我们经常要用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作.下面介绍了一下该指令的一些常用参数,希望对大家有所帮助!
2010-11-11 12:20:00
723
原创 VC获取快捷方式的文件路径
bool ReadShortcut(LPWSTR lpwLnkFile, LPSTR lpDescFile)<br />{<br />bool bReturn = true;<br />IShellLink *pShellLink;if(bReturn)<br />{<br />bReturn = (CoInitialize(NULL) == S_OK);<br />if(bReturn)<br />{<br />bReturn = CoCreateInstance (CLSID_ShellLink, NU
2010-11-11 12:17:00
3522
2
原创 ShellExecute用法种种
Q: 如何打开一个应用程序?<br />ShellExecute(this->m_hWnd,”open”,”calc.exe”,”",”", SW_SHOW );或 ShellExecute(this->m_hWnd,”open”,”notepad.exe”,”c://MyLog.log”,”",SW_SHOW );正如您所看到的,我并没有传递程序的完整路径。Q: 如何打开一个同系统程序相关连的文档?ShellExecute(this->m_hWnd,”open”,”c://abc.txt”,”",”",S
2010-11-11 12:13:00
677
原创 程序热键的实现
[问题提出]<br />有的程序需要自定义组合键完成一定功能,如何实现?[解决方法]<br />RegisterHotKey函数原型及说明:<br />BOOL RegisterHotKey(<br />HWND hWnd, // 接收WM_HOTKEY的窗口句柄<br />int id, // hot key的ID号.<br />UINT fsModifiers, // 响应那个热键.<br />UINT vk // 与热键配合的键.其中:<br />1)id的说明:<br />id为你自己定义的一个ID
2010-11-11 12:12:00
739
原创 开机自动运行
BOOL SetAutoRun(CString strPath)//开机自动运行<br />{<br />CString str;<br />HKEY hRegKey;<br />BOOL bResult;<br />str=_T(“Software//Microsoft//Windows//CurrentVersion//Run”);<br />if(RegOpenKey(HKEY_LOCAL_MACHINE, str, &hRegKey) != ERROR_SUCCESS)<br />bResult=F
2010-11-11 12:10:00
613
原创 VC编程使计算机休眠
void CPage1::OnXiuMian()<br />{<br />if(MessageBox(“确实要休眠吗?”,”关机程序”,MB_YESNO|MB_DEFBUTTON2|MB_ICONQUESTION)==IDYES)<br />{<br />static HANDLE hToken;<br />static TOKEN_PRIVILEGES tp;<br />static LUID luid;<br />if(::OpenProcessToken(GetCurrentProcess(),<br
2010-11-11 12:09:00
1158
原创 VC改变对话框的背景色的方法(4种)
方法一:调用CWinApp类的成员函数SetDialogBkColor来实现。<br />其中函数的第一个参数指定了背景颜色,第二个参数指定了文本颜色。下面的例子是将应用程序对话框设置为蓝色背景和红色文本,步骤如下:<br />① 新建一个基于Dialog的MFC AppWizard应用程序ExampleDlg。<br />② 在CExampleDlgApp ::InitInstance()中添加如下代码:<br />BOOL CExampleDlgApp: : InitInstance ( )<br />
2010-11-11 12:05:00
948
原创 vc删除、拷贝、移动文件夹及其文件
删除:void COperationDlg::OnDel2(CString m_strFileDictory) //参数就是目录的路径<br />{<br />if(m_strFileDictory.GetLength()==0)<br />{<br />::AfxMessageBox (“目录名非法!”,MB_OK|MB_ICONEXCLAMATION);<br />return;<br />}<br />char FromFileName[80]=”/0″;<br />strcpy(FromFileNa
2010-11-11 12:03:00
1774
原创 模拟按键实现
模拟按键实现:模拟键盘我们用Keybd_event这个api函数,模拟鼠标按键用mouse_event函数。在VC里调用api函数是既简单又方便不过的事了。
2010-11-11 12:00:00
917
原创 堆和栈的区别
在bbs上,堆与栈的区分问题,似乎是一个永恒的话题,由此可见,初学者对此往往是混淆不清的,所以我决定拿他第一个开刀。<br />首先,我们举一个例子:<br />void f() { int* p=new int[5]; }<br />这条短短的一句话就包含了堆与栈,看到new,我们首先就应该想到,我们分配了一块堆内存,那么指针p呢?他分配的是一块栈内存,所以这句话的意思就是:在栈内存中存放了一个指向一块堆内存的指针p。在程序会先确定在堆中分配内存的大小,然后调用operator new分配内存,然后返回这
2010-11-11 11:58:00
465
原创 VC得到指定文件的详细信息/属性
char* szFileName = “C://EnochShen.exe”;<br />DWORD dwSize = GetFileVersionInfoSize(szFileName,NULL);<br />LPVOID pBlock = malloc(dwSize);<br />GetFileVersionInfo(szFileName,0,dwSize,pBlock);char* pVerValue = NULL;<br />UINT nSize = 0;<br />VerQueryValue(pB
2010-11-11 11:56:00
3739
原创 vc修改注册表开机自动启动程序
HKEY hKey;<br />char szFileName[256];<br />GetModuleFileName(NULL,szFileName,256);<br />RegOpenKey(HKEY_LOCAL_MACHINE,”SOFTWARE//Microsoft//windows//currentversion//run”,&hKey);<br />if(m_bAutoRun)<br />{<br />RegSetValueEx(hKey,”RunmeAtStartup”,0,REG_SZ,(
2010-11-11 11:54:00
1118
原创 VC截获系统注销时候的消息
使用WH_CALLWNDPROC类型钩子,回调函数如下:LRESULT CALLBACK MyProc(int code, WPARAM wParam, LPARAM lParam)<br />{<br />switch (((CWPSTRUCT*)lParam)->message)<br />{<br />case WM_QUERYENDSESSION:<br />{<br />switch( ((CWPSTRUCT*)lParam)->lParam )<br />{<br />case ENDSESSI
2010-11-11 11:53:00
1157
原创 VC判断是否为文件夹或者文件
int IsDirectoryOrFile(CString strFileName)<br />{<br />strFileName.TrimLeft();<br />strFileName.TrimRight();WIN32_FIND_DATA fd;<br />HANDLE hFind = ::FindFirstFile(strFileName,&fd);<br />::FindClose(hFind);//不存在同名的文件或文件夹<br />if (hFind == INVALID_HANDLE_VA
2010-11-11 11:51:00
2060
原创 防止对话框程序按Enter和ESC退出的对策
在一般情况下编写的对话框程序,用户在运行的时候,如果不注意按下了ENTER或者ESC键,程序就会立刻退出,之所以会这样,是因为按下Enter键时,Windows就会自动去找输入焦点落在了哪一个按钮上,当获得焦点的按钮的四周将被点线矩形包围。如果所有按钮都没有获得输入焦点,Windows就会自动去寻找程序或资源所指定的默认按钮(默认按钮边框较粗)。如果对话框没有默认按钮,那么即使对话框中没有OK按钮,OnOK函数也会自动被调用,对于一个普通的对话框程序来说,OnOK函数的调用,以为着程序会立刻退出。为了使En
2010-11-11 11:49:00
670
原创 vc串口通信3种方法的实现和比较
本文介绍了在Windows平台下串行通信的实现机制,讨论了根据不同的条件用Visual C++ 设计串行通信程序的三种方法,并结合实际,实现对温度数据的接收监控。 在实验室和工业应用中,串口是常用的计算机与外部串行设备之间的数据传输通道,由于串行通信方便易行,所以应用广泛。依据不同的条件实现对串口的灵活编程控制是我们所需要的。
2010-11-11 11:44:00
1436
原创 atoi,atol,strtod,strtol,strtoul实现类型转换
atoi,atol,strtod,strtol,strtoul实现类型转换
2010-11-11 11:32:00
618
原创 CreateProcess函数详解及示例
WIN32API函数CreateProcess用来创建一个新的进程和它的主线程,这个新进程运行指定的可执行文件。
2010-11-11 11:28:00
3195
原创 VC++编程中的文件操作API和CFile类
在VC编程中,操作文件的方法主要有两种:利用API函数和MFC的CFile类。微软在其中封装了文件的一般操作,下面我就介绍一下如何利用这两种方法实现文件操作。
2010-11-11 11:25:00
790
原创 VC 模式对话框和非模式对话框的创建,销毁和区别
在WIN32中,模式对话框的创建一般是使用DialogBox来进行创建的。而非模式对话框则是利用CreateWindow来创建的。在MFC或是WTL中,模式对话框一般是使用DoModal,而非模式对话框的创建则是使用Create。模式对话框创建后,程序的其他窗口便不能进行操作,必须将该窗口关闭后,其他窗口才能进行操作。而非模式对话框则无需这样,它不强制要求用户立即反应,而是与其他窗口同时接受用户操作。Create的Dialog一般是modalless,如果你的程序本身就是只有一个Dialog,就无所谓了
2010-11-11 11:19:00
1226
原创 VC 模式对话框和非模式对话框的创建,销毁和区别
在WIN32中,模式对话框的创建一般是使用DialogBox来进行创建的。而非模式对话框则是利用CreateWindow来创建的。在MFC或是WTL中,模式对话框一般是使用DoModal,而非模式对话框的创建则是使用Create。模式对话框创建后,程序的其他窗口便不能进行操作,必须将该窗口关闭后,其他窗口才能进行操作。而非模式对话框则无需这样,它不强制要求用户立即反应,而是与其他窗口同时接受用户操作。Create的Dialog一般是modalless,如果你的程序本身就是只有一个Dialog,就无所谓了
2010-11-11 11:19:00
6105
原创 VC 模式对话框和非模式对话框的创建,销毁和区别
在WIN32中,模式对话框的创建一般是使用DialogBox来进行创建的。而非模式对话框则是利用CreateWindow来创建的。在MFC或是WTL中,模式对话框一般是使用DoModal,而非模式对话框的创建则是使用Create。模式对话框创建后,程序的其他窗口便不能进行操作,必须将该窗口关闭后,其他窗口才能进行操作。而非模式对话框则无需这样,它不强制要求用户立即反应,而是与其他窗口同时接受用户操作。Create的Dialog一般是modalless,如果你的程序本身就是只有一个Dialog,就无所谓了
2010-11-11 11:19:00
700
VC++颜色渐变实现的3种方法
2010-11-16
数据库转换工具(access excel 互换)
2010-11-11
程序监视眼(功能实用)
2010-11-11
颜色拾取器(屏幕放大镜)
2010-11-11
多功能关机助手(定时/倒计时/计划关机/锁屏/注销/挂机等)
2010-11-11
多功能挡屏/报时/锁屏软件
2010-05-18
VC版通用万年历控件及源码
2010-05-18
LED文字滚动屏,方向4种可选。
2009-12-25
VC++串口实例导航(实例源码)
2008-10-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人