Visual C++编程实战宝典
Visual C++编程实战宝典
Greless
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
两种串口通信端口编程
一.MS Comm串行通信控件 VC6.0安装时自动添加注册这个组件,VS平台需要自己来注册 1.准备MSCOMM32.DEP,MSCOMM32.oca,mscomm32.ocx复制到%windir%\system32\ 2.regsvr32 /s %windir%\system32\mscomm32.ocx 文件下载:http://download.youkuaiyun.com/download/t原创 2017-08-24 17:10:08 · 6791 阅读 · 0 评论 -
图形与图像编程(四)-图像特效
一、图像锐化处理 //图像锐化处理 void CGDIEffectSampleView::OnMenuitemRuihua() { Status status = GenericError; Graphics graphics(m_hWnd); status = graphics.GetLastStatus(); if (status != Ok) return; B原创 2017-08-31 15:02:27 · 474 阅读 · 0 评论 -
图形与图像编程(二)-基础图像技术
一、位图画刷 //位图画刷 void CGDIBaseSampleView::OnMenuitemBmpbrush() { CDC* pDC = GetDC(); CRect rect; GetClientRect(&rect); rect.top = rect.Height()/4; rect.bottom = rect.top*3; rect.left = rect.Wid原创 2017-08-31 13:59:34 · 1043 阅读 · 0 评论 -
图形与图像编程(三)-特殊曲线
一、绘制蜗牛线 //绘制蜗牛线 void CCavsSampleView::OnMenuitemWoniuline() { float pi = 3.1415926f; CRect rect; GetClientRect(&rect); UINT width = rect.Width(); UINT height = rect.Height(); CDC* pDC = GetDC原创 2017-08-31 14:32:40 · 1640 阅读 · 0 评论 -
图形与图像编程(一)-图形编程
DDB和DIB的区别 可以這樣理解 DDB 只存在與內存裡,它是與當前顯示相關的,也不可能保存成文件。 一般情況下用 CreateBitmap , CreateCompliateBitmap 就是 DDB 而用 CreateDIBSection 得到的就是 DIB, DIB 是文件相關,而 DDB 是設備相關。 但在顯示時 DDB 要比 DIB 快。 而 bmp原创 2017-08-30 17:33:18 · 1394 阅读 · 0 评论 -
字体效果
一、空心字 // 绘制空心字 void CFontEffectsSampleView::OnMenuKongxinFont() { // 获得窗口的客户区设备上下文句柄 CClientDC dc(this); // 更改当前字体 LOGFONT lf; dc.GetCurrentFont()->GetLogFont(&lf); CFont font; CFont *pOldFon原创 2017-08-30 15:24:50 · 678 阅读 · 0 评论 -
动态链接库
一、DLL种类 不使用MFC的win32 DLL和使用MFC的MFC DLL MFC DLL三种开发方式 1.使用静态链接MFC类库的常规DLL 2.使用动态链接MFC类库的常规DLL 3.MFC扩展DLL。现有MFC类库中的类派生而来的可以重复使用的类。扩展DLL使用MFC的动态链接库版本构建 二、DLL文件组成 DEF文件模块定义语句 1.文件的第一条语原创 2017-08-30 14:49:58 · 913 阅读 · 0 评论 -
DirectX图形开发(一)-基本概念
一.DXSDK_Jun10.exe安装 二.VS2015配置 1.VC++目录 可执行文件目录:$(DXSDK_DIR)Utilities/bin/x86 包含目录:$(DXSDK_DIR)Include;$(IncludePath) 库目录:$(DXSDK_DIR)Lib/x86;$(LibraryPath) 2.链接器 附件依赖项:d3d9.lib;d3dx9d.lib;原创 2017-09-04 15:53:01 · 5588 阅读 · 0 评论 -
系统相关功能开发(十)-鼠标键盘
1.交换鼠标左右键 void CMouseKeyBordSampleDlg::OnButSwap() // 交换鼠标左右键 { if (SwapMouseButton(TRUE)) // 交换鼠标左右键 WriteLog("鼠标左右键已经交换"); // 输出错误提示信息 else WriteLog("交换鼠标左右键成功"); // 输出提示信息 } voi原创 2017-08-25 17:38:39 · 542 阅读 · 0 评论 -
系统相关功能开发(九)-剪贴板
1.列举剪贴板中数据类型 void CClicpBoardSampleDlg::OnButtonEnumClformat() // 列举剪贴板中数据类型 { if(!OpenClipboard()) // 打开剪切板 { WriteLog("打开剪切板时发生错误"); // 输出错误信息,并 return; // 返回 } WriteLog("原创 2017-08-25 17:16:15 · 386 阅读 · 0 评论 -
系统相关功能开发(八)-消息
1.自定义消息 // 21.8.1(OK) #define WM_MY_MESSAGE WM_USER + 66 // 自定义消息 void CMessageSendSampleDlg::OnButtonSendMymessage() // 发送自定义消息函数 { SendMessage(WM_MY_MESSAGE, NULL, NULL); // 发送自定义消息 } LRES原创 2017-08-25 17:03:11 · 423 阅读 · 0 评论 -
系统相关功能开发(七)-系统信息
1.获取CPIUD void CSystemInfoSampleDlg::OnButtonGetCpuid() // 获取CPU ID值 { BYTE szCPU[16]= {0}; // 定义存放CPU类型的数组 UINT uCPUID = 0U; // 定义存放CPUID的数组 _asm // 开始执行汇编 { mov eax, 0 // 获取CPU原创 2017-08-25 16:27:11 · 371 阅读 · 0 评论 -
系统相关功能开发(六)-桌面相关
1.获取桌面对话框 2.获取任务栏对话框句柄 void CDesktopSampleDlg::OnButtonGetBar() // 获取任务栏对话框句柄 { HWND hWinBar = ::FindWindow("Shell_TrayWnd",""); // 获取任务栏对话框 if(hWinBar != NULL) WriteLog("获取任务栏窗口句柄成功=0x%08X", hW原创 2017-08-25 15:37:03 · 482 阅读 · 0 评论 -
系统相关功能开发(五)-系统工具
1.为程序添加快捷方式 void CSysToolSampleDlg::OnButtonCreatelink() // 为程序添加快捷方式 { if (!SUCCEEDED(CoInitialize(NULL))) // 初始化COM组件 { WriteLog("初始化Shell失败"); // 初始化失败显示信息 return; // 返回 } IShe原创 2017-08-25 15:06:52 · 344 阅读 · 0 评论 -
系统相关功能开发(四)-应用程序操作
1.禁止程序重复运行 // CAppOperSampleApp initialization const char* MyClassName = "CAppOperSampleDlg"; BOOL CAppOperSampleApp::InitInstance() { AfxEnableControlContainer(); HANDLE hMutex = CreateMutex(NULL,原创 2017-08-25 14:55:32 · 365 阅读 · 0 评论 -
系统相关功能开发(三)-系统控制与调用
1.调用外部程序 void CSysControlSampleDlg::OnButtonExe() // 调用外部程序 { STARTUPINFO si; // 定义启动信息变量 PROCESS_INFORMATION pi; // 定义进程信息变量 HANDLE hProcess,hThread; // 定义进程句柄和线程句柄 si.cb =si原创 2017-08-25 13:50:53 · 413 阅读 · 0 评论 -
系统相关功能开发(二)-磁盘操作
1.监视硬盘 void CDiskOperDlg::OnButtonMonitorDisk() // 监视硬盘 { UpdateData(TRUE); // 从控件获取数据 DWORD dwWaitStatus; HANDLE dwChangeHandle; dwChangeHandle=FindFirstChangeNotification(m_DiskName,原创 2017-08-25 11:44:02 · 461 阅读 · 0 评论 -
系统相关功能开发(一)-获取磁盘信息
1.获取驱动器卷标 void CDiskInfoDlg::OnButtonGetvol() // 获取驱动器卷标 { UpdateData(TRUE); // 从控件中更新数据,更新要获取的驱动器名称 char szVolume[MAX_PATH]={0}; // 存放卷标信息的字符数组 if (GetVolumeInformation(m_DiskName,szVol原创 2017-08-25 11:49:49 · 453 阅读 · 0 评论 -
图形与图像编程(五)-图像控制
一、图片上绘制线条 //在图片上绘制线条 void CGDIControlView::OnMenuitemDrawlineonimage() { Graphics graphics(m_hWnd); Image image(L"baby.JPG"); UINT width = image.GetWidth(); UINT height = image.GetHeight();原创 2017-08-31 17:21:56 · 512 阅读 · 0 评论
分享