![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Windows程序设计
文章平均质量分 84
shining100
这个作者很懒,什么都没留下…
展开
-
如何创建Windows网络计划任务
在我们的日常工作中,我们有时希望程序在指定的时间执行,以为成特定的任务。如对数据库的自动备份、磁盘文件的自动清理等。WINDOWS计划任务就是实现这个功能的一个好工具。 WINDOWS计划任务分为两种,一种是本地的计划任务(Task Schedule),该类任务我们可以在WINDOWS"控制面板"下的"计划任务"中利用"计划任务向导"进行创建。另一种就是网络的计划任务(N原创 2010-03-01 01:19:00 · 3870 阅读 · 5 评论 -
创建不能改变大小的对话框
在我们开发的过程中,需要实现大量的弹出式对话框。其中有一些对话框由于在响应WM_SIZE消息时没有移动相应控件的位置,导致了在改变对话框的大小后,对话框中的控件并不会随着窗体大小的改变而移动位置。解决这个问题有两个方法:一是在WM_SIZE消息中添加相应的处理代码,使控件随着窗口大小的改变而移动其位置和调整其大小。二就是创建不能改变大小的对话框。至于选择哪一种方法则要根据具体的要求而定原创 2010-03-15 23:43:00 · 3600 阅读 · 2 评论 -
如何为应用程序添加托盘图标
对于一些不是很需要与用户交互的应用程序来说,在应用程序最小化的时候将它变成托盘图标。对用户来说是一种不错的用户体验。那这个功能应该怎么样实现呢?其实实现功能十分的简单,我们只需要调用Shell_NotifyIcon函数就可以为应用程序添加托盘图标。然后我们只需要在提供一个回调函数处理相应的消息就可以了。 让我们来看一看Shell_NotifyIcon函数,该函数的完整声明原创 2010-04-24 22:18:00 · 3152 阅读 · 4 评论 -
多线程程序设计(一)
当我们提到线程这个概念的时候,我们就不得不提到它的容器---进程。那什么是进程呢?进程是一个正在运行的程序,它拥有自己的内存地址空间以及其向系统所申请的其它资源。内存地址空间中包含有文本区域(text region)、数据区域(data region)以及栈区域(stack region);所申请的资源包括该进程打开的文件以及套接字等系统资源。当进程被创建并在获得其运行所需要的所有资源过后,进程并不能自己开始执行。现在的进程就像一个植物人一样,由于大脑无法正常的工作,它除了躺在床上之外,是没有办法做其它任何原创 2011-05-11 23:55:00 · 1265 阅读 · 0 评论 -
小技巧:如何令Edit Control滚动到最新的输出行
最近在做一个测试程序时,需要将程序的一些信息输出到Edit Control之中。在输出一定的信息后发现,Edit Control默认是不会自动滚动,将最新的输出显示到Edit Control中。 由于无法看到最新的显示信息,造成了我无法在第一时间看到最新的输出结果,所以我决定仿造VS的输出窗口,在输出信息时让滚动条自动滚动,以使我能够在第一时间查看到输出结果。 为了使Edit Control能够接收多行文本,你必须使用代码或者使用VS在界面设计器中将Edit Control的Mul原创 2011-03-24 23:34:00 · 5570 阅读 · 8 评论 -
多线程程序设计(二)
通过前面的介绍,我们了解到了通过线程的并行和异步执行,给我们的程序带来的好处。但正如事物都是有两面性的,在享受线程给我们的应用程序带来的好处的时候,我们同时也应该解决它给我们所带来的问题,即线程同步问题。试想当有一个读线程和一个写线程同时操作一个链表,当读线程读取链表的一个节点的时候,由于系统的调度,此时写线程获得了执行的机会,并对同一个节点执行了写操作,并且最后完成了该操作。当系统再次调度读线程读取链表该节点内容的时候,该内容由于已经被写线程修改,导致我们读出了错误的数据。为了解决线程的同步问题,人们定义原创 2011-05-28 10:10:00 · 862 阅读 · 0 评论