VC++中DLL的应用一例
郭勇鹏,陈业夫
(哈尔滨工程大学自动化学院,哈尔滨,150001)
摘
要:由于具有的一些显著优点,动态连接库(DLL)在Windows系统中扮演了极为重要的角色。不但Windows系统本身使用了的DLL,大量的应用程序也在使用着它。本文介绍了如何利用DLL和钩子函数取得系统其他进程密码框内的密码,同时也在程序中用了很多Windows编程的技术,如进程间通讯(IPC)。
关键词:动态连接库(DLL),钩子函数,进程间通讯
One VC++ DLL Application
Abstract: Dynamic Link
Library(DLL)is playing an important role in the Windows system in
that it has some prominent merits. Not only Windows system itself,
but also a lot of applications are using it. This essay introduces
how to use DLL and Hook Function to get Password of other
processes. It also introduces some other Windows programming
technologies, including Inter Process Communication (IPC).
Key Words: Dynamic Link
L
摘要:本文详细介绍了MSComm控件在串口编程中使用。
目
次
MSComm控件两种处理通讯的方式
CommPort属性
RThreshold 属性
CTSHolding 属性
SThreshold 属性
CDHolding 属性
DSRHolding 属性
Settings 属性
InputLen 属性
EOFEnable 属性
Handshake 常数
OnComm 常数
InputMode 常数
错误消息
MSComm
控件通过串行端口传输和接收数据,为应用程序提供串行通讯功能。MSComm控件在串口编程时非常方便,程序员不必去花时间去
了解较为复杂的API函数,而且在VC、VB、Delphi等语言中均可使用。
Microsoft Communications Control(以下简称MSComm)是
Microsoft公司提供的简化Windows下串行通信编程的ActiveX控件,它为应用程序提供了通过串行接口收发数据的简便方法。
具体的来说,它提供了两种处理通信问题的方法:一是事件驱动(Event-driven)方法,一是查询法。
Visual C++为我们提供了一种好用的ActiveX控件Microsoft
Communications
Control(即MSComm)来支持应用程序对串口的访问,在应用程序中插入MSComm控件后就可以较为方便地实现对通过计算机串口收发数据。
要使用ActiveX控件MSComm,程序员必须将其添加入工程,其方法是:
(1)单击主菜单project的子菜单Add To project的Components and
Controls选项;
(2)在弹出的'Components and Controls Gallery'对话框中选择Registered ActiveX
Controls文件夹中的'Microsoft Communications Control,version
6.0'选项,如下图:
单击其中的'Insert'按钮,MSComm控件就被增加到工程中了。与此同时,类CMSComm的相关文件mscomm.h和mscomm.cpp也一并被加入Project的Header
Files和
(本文系引用...)
在VC++中有两种方法可以进行串口通讯。一种是利用Microsoft公司提供的ActiveX控件 Microsoft
Communications Control。另一种是直接用VC++访问串口。下面将简述这两种方法。
一、Microsoft Communications Control
Microsoft公司在WINDOWS中提供了一个串口通讯控件,用它,我们可以很简单的利用串口进行通讯。在使用它之前,应将控件加在应用程序的对话框上。然后再用ClassWizard
生成相应的对象。现在我们可以使用它了。
该控件有很多自己的属性,你可以通过它的属性窗口来设置,也可以用程序设置。我推荐用程序设置,这样更灵活。
SetCommPort:指定使用的串口。
GetCommPort:得到当前使用的串口。
SetSettings:指定串口的参数。一般设为默认参数'9600,N,8,1'。这样方便与其他串口进行通讯。
GetSettings:取得串口参数。
SetPortOpen:打开或关闭串口,当一个程序打开串口时,另外的程序将无法使用该串口。
GetPortOpen:取得串口状态。
GetInBufferCount:输入缓冲区中
我已经在新浪BLOG安家了,欢迎你时常过来做客,大家多多交流哦。我会把一些新鲜有趣的东西记录下来一块与你分享。也希望你记住我的BLOG地址,你可以把她添加到你的收藏夹,也可以把她复制下来告诉你的朋友们。
:)
我的BLOG地址:
http://blog.sina.com.cn/u/1231545062