自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ljd_1986413的专栏

我要发财啦

  • 博客(37)
  • 资源 (5)
  • 收藏
  • 关注

原创 Windows API CreateDirectory和RemoveDirectory 新建目录和删除目录

Windows API函数CreateDirectory创建目录,当然目录过多时也需要调用函数RemoveDirectory来删除不需要的目录,然而函数RemoveDirectory只能删除空的目录,也就是目录下没有文件和子目录才能删除。函数CreateDirectory和RemoveDirectory声明如下:WINBASEAPIBOOLWINAPICreateDirectoryA(    __in     LPCSTR lpPathName,    __in_opt LPSECURITY_ATTRIBU

2011-03-31 17:07:00 9098

原创 MFC文件操作大全3

MFC文件操作大全3<br />43.递归删除目录下的文件 <br />CString Directory(%%1); <br />CStringArray csa; <br />int count=0; <br />if(Directory.Right(1)!="//") <br />Directory+="//"; <br />Directory+="*.*"; <br />CFileFInd FFile; <br />csa.add(Directory); <br />while(count<csa.

2011-03-25 12:27:00 901

原创 MFC文件操作大全2

MFC文件操作大全2<br />30.文件合并 <br />//#include <string> <br />using std::string; <br />string s(%%1); <br />char sep='/'; <br />#ifdef _WIN32 <br />sep='//'; <br />#endif <br />size_t sz=s.rfind(sep,s.length()); <br />if(sz!=string::npos) <br />{ <br />CFile Out

2011-03-25 12:25:00 765

原创 MFC文件操作大全1

MFC文件操作大全1VC&MFC2009-08-31 14:33:16阅读99评论0  字号:大中小 订阅1.创建文件夹 CreateDirectory(%%1,NULL); 2.创建文件 CFile file;  file.Open(%%1,CFile::modeCreate|CFile::modeWrite);  3.删除文件 DeleteFile(%%1);  4.删除文件夹 RemoveDirectory(%%1);  5.删除一个目录下所有的文件夹 CFileFind finder;  BOOL 

2011-03-25 12:22:00 517

原创 十二,memset函数初始化内存

memset函数详细说明1。void *memset(void *s,int c,size_t n)总的作用:将已开辟内存空间 s 的首 n 个字节的值设为值 c。2。例子#includevoid main(){char *s="Golden Global

2011-03-25 09:33:00 593

原创 十一:VC中使用GetModuleFileName获取应用程序路径

例子:CString strWorkPath; TCHAR  tszWorkPath[MAX_PATH]; //如果你隐式载入dll, 用GetModuleHandle("dll文件名")也可以得到handle,VC中使用GetModuleFileName获取应用程序

2011-03-25 09:30:00 972

原创 十:CArray,CMap,CList详解

CArray,CMap,CList详解1. 数组--CArray   访问方法及效率和普通的数组一样,比普通数组强大的功能是可以改变数组的大小。    Array采用队列方式存储数据,因而其内部数据元素是以物理方式顺序排列的,所以检索、顺序执行GetAt()等函数的速度是相当快的。但是由于每次队列长度变化后,数据都要重新申请内存、拷贝内存、释放内存,因而 Insert/Add/RemoveAt()的速度都很慢。如果你使用的数据元素尺寸相当大,而且数组的操作相当复杂,频繁使用InsertAt /SetAt/R

2011-03-24 12:16:00 947

原创 十四:GDI+ 绘制窗口 感受不一样的神奇

第一:在stdafx.h中加上下列GDI的头文件#include "c:/GDIPlus/includes/gdiplus.h"   ////请修改为你的头文件路径using namespace Gdiplus;  #pragma comment(lib, "c://GDIPlus//lib//gdiplus.lib") ////请修改为你的.lib文件路径第二:在GDIPClock.cpp 中加上下列显示成功加载资源, 资源成功载入内存, 但是加载到Image类的时候, 返回空指针.答: 可能是忘了 初始

2011-03-22 17:51:00 3168

原创 十三:谈谈MSG中的 WPARAM 和 LPARAM

第一:WPARAM 和 LPARAM 是什么东西         typedef uint wparam;//就是无符号整形         typedef long lparam;//就是长整形         typedef   struct   tagMSG                                {           //   msg                                        HWND   hwnd;       //窗口句柄       

2011-03-18 11:45:00 15804

原创 十二:MFC读取XML

Markup.cpp#include "stdafx.h"#include #include "Markup.h"#ifdef MCD_STRERROR#include #include #else#include #endif#if defined(_DEBUG) && ! defined(MARKUP_STL) && ! defined(MARKUP_STDC)#undef THIS_FILEstatic char THIS_FILE[]=__FILE__;#define new DEBUG_NEW#e

2011-03-17 18:06:00 3110 1

原创 十一:MFC关于读写TXT文件

写txt文件第一:         CString sss;        sss.Append(_T(" lijiandong"));       CString ab = _T("/r/n");//换行       sss.Append(ab);         CFile   f;          f.Open(_T("F://222e.txt"),CFile::modeCreate|CFile::modeWrite|CFile::modeNoTruncate);//modeNoTruncate 追

2011-03-17 17:56:00 5311

原创 九:PreTranslateMessage

在MFC中,PreTranslateMessage是虚函数,我们可以重载它来处理键盘和鼠标消息。  PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,绝大多数本窗口的消息都要通过这里,比较常用,当需要在MFC之前处理某些消息时,常常要在这里添加代码. MFC消息控制流最具特色的地方是CWnd类的虚拟函数PreTranslateMessage(),通过重载这个函数,我们可以改变MFC的消息控制流程,甚至可以作一个全新的控制流出来。只有穿过消息队列的消息才受Pr

2011-03-16 11:30:00 1102

原创 八:客户区域窗体的坐标位置定位

一,GetWindowRect(&rtCurMain);//获取窗口客户区域S     +  rtCurMain {top=223 bottom=761 left=213 right=1068} CRect      (Left,Top)和(Right,Bottom)分别为窗口客户区域的左上角坐标及右下角坐标      Width为窗口客户区域的宽度,Height为窗口客户区域的高度     int nW = rtCurMain.Width();//=right-left=855     int nH =

2011-03-16 10:48:00 1118

原创 十:[zz]MFC - hWnd & hDC,句柄,CWnd

[zz]MFC - hWnd & hDC,句柄,CWndhWnd是窗口句柄,通过它可以得到窗口的属性。hDC是窗口显示上下文句柄,只有在窗口进行图形,文字输出的时候才需要它。有了hWnd,可以使用API的GetDC()函数得到与其相关的hDC:hDC=GetD

2011-03-14 16:39:00 933 3

原创 九:[VC++]MFC操作注册表

[VC++]MFC操作注册表MFC操作注册表一:打开注册表键LONG RegOpenKeyEx(  HKEY hKey,         // handle to open key主键  LPCTSTR lpSubKey,  // subkey name子键  DWORD ulOptions,   // reserved。必须是0  REGSAM samDesired, // security access mask读写标识  PHKEY phkResult    // handle to open key

2011-03-14 16:33:00 1630

原创 八:Win32 SDK注册表操作——RegQueryValueEx

Win32 SDK注册表操作——RegQueryValueExRegQueryValueEx找回所打开注册表键所关联的一个给定值的类型和数据。LONG RegQueryValueEx( HKEY hKey, // 要查询键的句柄 LPTSTR lpValueName, // 要查询值的名字的地址 LPDWORD lpReserved, // 保留 LPDWORD lpType, // 值类型缓存地址 LPBYTE lpData, /

2011-03-14 16:31:00 1005

转载 七:VC串口通信(2)

 VC串口通信(2)  在工业控制中,工控机(一般都基于Windows平台)经常需要与智能仪表通过串口进行通信。串口通信方便易行,应用广泛。一般情况下,工控机和各智能仪表通过RS485总线进行通信。RS485的通信方式是半双工的,只能由作为主节点的工控PC机依次轮询网络上的各智能控制单元子节点。每次通信都是由PC机通过串口向智能控制单元发布命令,智能控制单元在接收到正确的命令后作出应答。  在Win32下,可以使用两种编程方式实现串口通信,其一是使用ActiveX控件,这种方法程序简单,但欠灵活。其二是调用

2011-03-14 16:28:00 577

原创 六:接收消息 GetMessage()和PeekMessage()

GetMessage()和PeekMessage()几个主要区别: 1。GetMessage()只有在接收到消息后才将控制权转给你的程序,而PeekMessage()无论有没有消息都会将控制权转给你的程序:如果有消息,返回真,没有消息返回假。 2。GetMessage()的主要功能是从消息队列中“取出”消息,消息被取出后,消息队列中就不再由该消息了;而PeekMessage()的主要功能是“窥视(peek)”消息,如果有消息,返回真,没有返回假。但PeekMessage()允许你从消息队列中“取出”消息,这

2011-03-14 16:17:00 569

原创 七:MFC简短函数汇集

参考 http://www.cnljh.com/clib/string/strchr.html一:int dwNow = GetTickCount();//计算从该程序启动到运行到此的时间 用毫秒计算二: memset函数详细说明1。void *memset(void *s,int c,size_t n)总的作用:将已开辟内存空间 s 的首 n 个字节的值设为值 c。s三:

2011-03-14 16:13:00 420

原创 五:API函数-WaitForMultipleObjects

七:API函数-WaitForMultipleObjects2010-11-05 10:45API函数-WaitForMultipleObjects如果需要在一个线程中等待多个事件,则用WaitForMultipleObjects()来等待。WaitForMultipleObjects()与WaitForSingleObject()类似,同时监视位于句柄数组中的所有句柄。这些被监视对象的句柄享有平等的优先权,任何一个句柄都不可能比其他句柄具有更高的优先权。WaitForMultipleObjects()的函

2011-03-14 16:10:00 663

原创 六,MFC文件夹打开的操作

1.打开文件夹,不做任何选择,只是打开ShellExecute(NULL, _T("open"), _T("d://"), NULL, NULL, SW_SHOW);效果图2.打开文件夹,选择所选文件夹里面的文件名,格式文件,获取格式文件路径或者格式文件名CFileDialog dlg(TRUE,NULL,NULL,NULL,NULL);   if(dlg.DoModal()==IDOK)//   {     CString str,str1;    str = dlg.GetPathName();   

2011-03-14 15:57:00 663

原创 五:CPoint,CSize,CRect类说明

五,CPoint,CSize,CRect类说明<br />CSize类<br /><br />类CSize是对Windows结构SIZE的封装,凡是能用SIZE结构的地方都可以用CSize代替。<br />结构SIZE表示一个矩形的长度和宽度,其定义为:<br />typedef struct tagSIZE{<br />LONG cx;<br />LONG cy;<br />} SIZE;<br />其中 cx、cy分别是长度和宽度。<br />与CPoint类似,CSize也提供了一些重载运算符。如运算

2011-03-14 15:53:00 715

原创 四:vc++在文件夹下寻找文件

vc++在文件夹下寻找文件方法一:BOOL FindAllFiles (CString szDir){    CFileFind ff;    CString filePath;    CString fileName;    if(szDir.Right(1) !="//")    szDir +="//";    szDir +="*.*";    BOOL res = ff.FindFile (szDir);    while (res)    {        res = ff.FindNextFi

2011-03-14 15:37:00 927

原创 三:在VC++中读写INI文件

在VC++中读写INI文件////写ini文件CString path,index;int i;path="D:/qc_download/bin_code/TEU800_long_sms/";i=1;index.Format(_T("%d"),i);::WritePrivateProfileString(_T("successcompath"),   index,_T("D:/qc_download/bin_code/TEU800_long_sms/"),_T(".//ex1.ini"));在ini 文件里

2011-03-14 15:28:00 579

原创 四: MFC消息总结

<br />MFC消息总结<br /><br />一:有句柄的消息发送<br />第一:在messageDlg界面里的操作<br />1,在窗口页面messageDlg.h填加消息定义<br />   #define WM_MY_MYMESSAGE (WM_USER+300)<b

2011-03-14 15:17:00 473

转载 二:在VC6.0中用GDI+调用png图片实现半透明渐变的特效窗口

在VC6.0中用GDI+调用png图片实现半透明渐变的特效窗口作者:邵凯锋下载源代码一、概述  GDI+的应用使得平面图形图象编程变的更加容易,本文以一个基于对话框的时钟程序为例,在VC6.0中调用*.png图片实现半透明渐变窗口,该程序实现了指针式和数字式两种时钟显示方式。窗口实现了半透明渐变窗口、窗口拖动无移动矩形框、隐藏了任务栏窗体按钮等。效果图如下:图一 程序执行后与WindowXP桌面背景效果图二、准备工作1、图片资源准备工作。首先在Photoshop中编辑好时钟的背景、时针、分针以及数字时钟显示

2011-03-14 15:06:00 1568

原创 三,窗口大小控制

BOOL WINAPI SetWindowPos(  __in      HWND hWnd,  __in_opt  HWND hWndInsertAfter,  __in      int X,  __in      int Y,  __in      int cx,  __in      int cy,  __in      UINT uFlags);例如:SetWindowPos(NULL,110,101,400,400, SWP_NOMOVE | SWP_NOZORDER);

2011-03-14 15:05:00 599

原创 六,关闭窗口X的控制,MFC 禁止对话框关闭按钮和Alt+F4

使得菜单项无效,以便它不能被选择,但不变灰使得菜单项有效,以便它能够被选择,并可从变灰的状态中恢复出来获取窗口菜单:      CMenu *pSysMenu = GetSystemMenu(FALSE);      ASSERT(pSysMenu != NULL);使关闭按钮有效:         pSysMenu->EnableMenuItem(SC_CLOSE,MF_ENABLED); 使关闭按钮无效      pSysMenu->EnableMenuItem(SC_CLOSE,MF_DISABLED

2011-03-14 14:45:00 6942

原创 五,进度条progress

四,进度条progress1,设置进度宽度CProgressCtrl d_prgfile;d_prgfile.SetRange(0,100);d_prgfile.SetPos(0);2,获取进度条的进度百分比void CqdownloadDlg::OnTimer(UINT nIDEvent){//CString strpercent = _T("");//int nPrePos = d_prgfile.StepIt();//获取进度条的进度度数//if(PROGRESS_LENGTH != nPrePos)

2011-03-14 14:13:00 796

原创 四,CListCtrl使用技巧

五,CListCtrl使用技巧以下未经说明,listctrl默认view 风格为report--------------------------------------------------------------------------------1. CListCtrl 风格      LVS_ICON: 为每个item显示大图标      LVS_SMALLICON: 为每个item显示小图标      LVS_LIST: 显示一列带有小图标的item      LVS_REPORT: 显示item

2011-03-14 14:12:00 620

原创 三,MFC里CHECKBOX用法

<br /><br />也可以对变量进行get或者set之类的操作来设置或者判断复选框的选择状态。<br />得到复选框状态的函数:CButton* pBtn = (CButton*)GetDlgItem(IDC_CHECK);<br />           int state = pBtnNONE->GetCheck();<br />           当state == 1时表示该复选框没有被选中;<br />           当state == 0时表示该复选框被选中<br />设置复选框状态

2011-03-14 14:10:00 3946

原创 二,MFC Ccombox的使用

三,MFC里CHECKBOX用法也可以对变量进行get或者set之类的操作来设置或者判断复选框的选择状态。得到复选框状态的函数:CButton* pBtn = (CButton*)GetDlgItem(IDC_CHECK);           int state = pBtnNONE->GetCheck();           当state == 1时表示该复选框没有被选中;           当state == 0时表示该复选框被选中设置复选框状态的函数:CButton* pBtn = (CButt

2011-03-14 14:09:00 7816

原创 二,MFC Cscombox的使用

<br />1.获取ccombox当前选中的索引值<br />CComboBox* box1;<br />box1=(CComboBox*)GetDlgItem(IDC_COMBO1);<br />int i;<br />i=box1->GetCurSel();// combox当前选中的索引值<br />2.获取ccombox当前top的索引值<br />i=box1->GetTopIndex();<br />3.获取ccombox的当前选中的内容 cstring类型<br />CString str1;

2011-03-14 14:08:00 1076

原创 一,关于MFC里面的EDIT Control控件的用法

<br />MFC里面的EDIT Control控件的用法是怎么样的,1.怎么样才能赋值给EDIT Control控件并在EDIT Control控件显示出来;2.怎么取得EDIT Control控件的值并传递给一个变量?希望各位大侠帮帮忙!<br />//获得EDIT<br />CEdit* pBoxOne;<br />pBoxOne = (CEdit*) GetDlgItem(IDC_EDIT1);<br />//付值<br />pBoxOne->SetWindowText( _T"FOO" );<br

2011-03-14 14:07:00 3819 1

原创 一:MFC中HDC与CDC区别和转化

MFC中HDC与CDC区别和转化CDC是MFC的DC的一个类 ,它封装了几乎所有的关于 HDC的操作。HDC是DC的句柄,API中的一个类似指针的数据类型. 设备描述句柄。MFC类的前缀都是C开头的H开头的大多数是句柄CDC中所有MFC的DC的基类.常用的CClientDC dc(this);就是CDC的子类(或称派生类).CDC等设备上下分类,都含有一个类的成员变量:m_nHdc;即HDC类型的句柄.记住下面的一句话,会有助于你的理解.MFC的类,是在用window API语句开发出来的有一定功能的小程序

2011-03-14 12:22:00 4356

原创 二:字符 类型

字符 类型2010-09-30 13:09-,L"hello, world" 这个字符串保存的是wchar的 宽字符二,_T"hello, world" 如果工程定义的UNICDE则这个字符串是按wchar方式保存的,如果没有定义则是按char方式

2011-03-14 12:14:00 728

原创 一:CString用法整理

11.CString::IsEmptyBOOL IsEmpty( ) const;返回值:如果CString 对象的长度为0,则返回非零值;否则返回0。说明:此成员函数用来测试一个CString 对象是否是空的。示例:下面的例子说明了如何使用CString::

2011-03-14 12:09:00 942

深度修复浏览器不可以上网的问题

深度修复浏览器不可以上网的问题,有时候可以上QQ,游戏等不可以打开网页

2011-08-25

VC中GDI+特效绘制

GDI+绘制库在VC中用GDI+调用png图片实现半透明渐变的特效窗口,GDI+的应用使得平面图形图象编程变的更加容易

2011-03-25

黑客反汇编揭秘(PDF).rar

黑客反汇编揭秘,交你如何反编译。。。。。。

2011-03-14

Delphi网上教程

Delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它使用了Microsoft Windows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(Object-Oriented Language)、当今世界上最快的编辑器、最为领先的数据库技术。对于广大的程序开发人员来讲,使用Delphi开发应用软件,无疑会大大地提高编程效率,而且随着应用的深入,您将会发现编程不再是枯燥无味的工作——Delphi的每一个设计细节,都将带给您一份欣喜。 

2008-10-27

WinRAR简体中文版

WinRAR 是强大的压缩文件管理器。它提供了 RAR 和 ZIP 文件的完整支持,能解压 7Z、ACE、ARJ、BZ2、CAB、GZ、ISO、JAR、LZH、TAR、UUE、Z 格式文件。WinRAR 的功能包括强力压缩、分卷、加密、自解压模块、备份简易

2008-10-27

空空如也

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

TA关注的人

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