摘要:
GDI是Graphics Device Interface(图形设备接口)的简称,当Windows应用程序需要显示点、线、图像、文字等内容,在显示器或打印输入这些内容时,就需要使用到GDI。图形设备接口是Windows图形界面的基础。应用程序当然不能直接操作系统的硬件,比如显卡,GDI就为应用程序提供了相关的接口。 GDI不是可以实现这种功能的唯一程序设计接口,GDI只是其中最基本的。除了GDI... 阅读全文
摘要:
使用了通知区域图标的程序应该是图形用户界面的程序,具有窗口,和一般的窗口程序一样,应该创建一个主窗口,并处理窗口消息。一、相关API1、Shell_NotifyIconSends a message to the taskbar's status area.[2]二、示例代码任务栏通知区域(Tray)图标参考[1] 精通Windows API 函数、接口、编程实例[2] http://msdn.microsoft.com/en-us/library/bb762159%28VS.85%29.aspx 阅读全文
摘要:
Shell可以实现扩展,Shell扩展程序可以实现以下功能。 ◇为特定文件类型、所有文件类型、网络邻居、回收站、驱动器、网络共享文件夹、打印机、光盘驱动器、目录、文件夹背景(窗口的空白处)等Shell对象的右键菜单(称作上下文件菜单,Context Menu)增加菜单项。 ◇当选中上下文件菜单的菜单项时进行相关处理。 ◇定制将文件、文件夹拖拽至其他目录中时的操作。 ◇定制右键拖曳Shell对象图标... 阅读全文
摘要:
二、文件协助(File Associations) File Associations可以指定Shell在显示、处理特定文件类型的文件时的方式,包括如下几个方面:◇双击文件时,哪个应用程序应该被用来打开这个文件;◇文件的图标;◇在Explorer中浏览时显示的文件类型等;◇文件的右键菜单中显示的指令(菜单项);◇一些用户界面细节,比如当鼠标指针停留在图标上时所弹出的提示信(Infotip)。与File Associations相关的一个重要概念是“文件类型”,每一种文件类型对应特定的文件扩展名。为了使Shell (Explorer.exe)能够正确识别文件类型,需要在注 阅读全文
摘要:
所谓Shell(壳),一般是指由操作系统提供的,用于计算机用户向操作系统输入相关指令并得到结果的程序。Shell可以字符形式的,也可以是图形界面形式的。 Windows Shell最重要的组成部件是explorer.exe。在使用Windows操作系统时,开始菜单、任务栏、资源管理器等都是explorer.exe提供的。因此Shell程序设计也是图形用户界面设计的重要组成部分。掌握Shell程序设计,需首先了解下面4个方面的内容。(1) Windows Shell编程接口。 Windows Shell提供一系列编程接口,例如可以获取特殊文件夹,使用文件浏览对话框等。 Shell编程接口的函数名 阅读全文
摘要:
NSA的一些相关概念 NAS(Network Attached Storage,网络附属存储)是一种将分布、独立的数据整合为大型、集中化管理的数据中心,以便于对不同主机和应用服务器进行访问的技术。按字面简单说就是连接在网络上,具备资料存储功能的装置,因此也称为“网络存储器”。 NAS被定义为一种特殊的专用数据存储服务器,包括存储器件(例如磁盘阵列、CD/DVD驱动器、磁带驱动器或可移动的存储介... 阅读全文
摘要:
1、动态数据交换(DDE)和网络动态数据交换(NDDE)[1,2] DDE可能是最为强大的进程间通信方式,实现也非常复杂。通信的两端分为服务端与客户端,两端都需要具有窗口。 一个DDE的通信过程大致如下: DDE会话由客户端发起,先初始化一个会话。DDE客户端会向服务端发送一个WM_DDE_INITIATE窗口消息。服务窗口收到此消息后,根据条件判断是否需要响应此消息,如果服务端确定可以与客户端建... 阅读全文
摘要:
WM_COPYDATA是一个非常特殊的消息,此消息可能携带一个比较大的消息参数,而其他消息都只能携带两个固定大小的参数(WPARAM和LPARAM)。在发送WM_COPYDATA消息时,WM_COPYDATA的wParam参数应该赋值为发送此消息的窗口,而lParam消息参数指向一个COPYDATASTRUCT结构类型的变量。typedef struct tagCOPYDATASTRUCT { ULONG_PTR dwData; DWORD cbData; PVOID lpData; } COPYDATASTRUCT, *PCOPYDATASTRUCT; dwData可以是任意值,lpD 阅读全文
摘要:
剪贴板由系统定义,并不属于任何一个特定的进程。系统中所有进程都可以访问和设置剪贴板。很多具有“复制”、“粘贴”功能的文字编译程序都是通过剪贴板进行操作。 剪贴板最大的特点就是数据传输没有明确的目标,数据是被动访问的,设置剪贴板的程序并不知道所设置的数据什么时候被访问,也不知道被哪个进程访问,剪贴板中的内容也可以多次访问,直到新的数据写入。因此通过剪贴板也是一种可供选择的进程间通信方式。但是由于系... 阅读全文
摘要:
管道是一种用于在进程间共享数据的机制,其实质是一段共享内存。Windows系统为这段共享的内存设计采用数据流I/0的方式来访问。由一个进程读、另一个进程写,类似于一个管道两端,因此这种进程间的通信方式称作“管道”。 管道分为匿名管道和命名管道。 匿名管道只能在父子进程间进行通信,不能在网络间通信,而且数据传输是单向的,只能一端写,另一端读。 命令管道可以在任意进程间通信,通信是双向的,任意一端都可读可写,但是在同一时间只能有一端读、一端写。一、注意点1、常用APIPipes[2]在[3,4]中也对这一部分进行了介绍。2、示例1)服务器端创建管道 监听 读写 关闭CreateN 阅读全文