模拟键盘我们用Keybd_event这个api函数,模拟鼠标按键用mouse_event函数。在VC里调用api函数是既简单又方便不过的事了。
首先介绍一下Keybd_event函数。Keybd_event能触发一个按键事件,也就是说回产生一个WM_KEYDOWN或WM_KEYUP消息。当然也可以用产生这两个消息来模拟按键,但是没有直接用这个函数方便。
Keybd_event共有四个参数,第一个为按键的虚拟键值,如回车...
windows_API阅读全文
4.取得和设置文件的属性
DWORD GetFileAttributes( LPCTSTR lpFileName //文件或文件夹路经 ); BOOL SetFileAttributes( LPCTSTR lpFileName, // 文件名 DWORD dwFileAttributes // 要设置的属性 ); DWORD GetFileAttributes( LPCTSTR lpFileName //文件或文件夹路经 ); BOOL SetFileAttributes( LPCTSTR lpFileName, // 文件名 DWORD dwFileAttributes // 要设置的属性 ...
MFC, windows_API阅读全文
3.取得和设置文件的创建时间、最后访问时间、最后写时间
BOOL GetFileTime( HANDLE hFile, // 文件句柄 LPFILETIME lpCreationTime, // 创建时间 LPFILETIME lpLastAccessTime, // 最后访问时间 LPFILETIME lpLastWriteTime // 最后写时间 ); BOOL SetFileTime( HANDLE hFile, CONST FILETIME *lpCreationTime, CONST FILETIME *lpLastAccessTime, CONST FILETIME *lpLastWriteTime ...
MFC, windows_API阅读全文
2.文件的读写定位
定位文件中的数据是很重要的,这决定了写入的数据在文件中的位置。
API函数
DWORD SetFilePointer( HANDLE hFile, //文件的句柄 LONG lDistanceToMove, //字节偏移量r PLONG lpDistanceToMoveHigh, //指定一个长整数变量,其中包含了要使用的一个高双字偏移(一般用来操作大型文件)。可设为零,表示只使用lDistanceToMove DWORD dwMoveMethod //文件定位 ); D...
MFC, windows_API阅读全文
在VC编程中,操作文件的方法主要有两种:利用API函数和MFC的CFile类。微软在其中封装了文件的一般操作,下面我就介绍一下如何利用这两种方法实现文件操作。
1.创建或打开一个文件
API函数CreateFile可打开和创建文件、管道、邮槽、通信服务、设备以及控制台,但是在此时只是介绍用这个函数怎么实现创建和打开一个文件。 HANDLE CreateFile( LPCTSTR lpFileName, // 要打开的文件名 DWORD dwD...
MFC, windows_API阅读全文
功能: 1.复制一个或多个文件 2.删除一个或多个 3.重命名文件 4.移动一个或多个文件
SHFileOperation 的重要参数 1.wFunc //对pFrom pTo要执行的操作 2.fFlags //影响对wFunx的操作 3.hNameMappings //有系统填充,和你也可以填充 4.lpszProgressTitle pFrom pTo 在结尾是两个'/0/0'
通常用一个'/0',这样会失败的!! 当FOF_MULTIDESTFILES szPFrom[lstrlen(szPFrom)+1]=0 szPFro...
windows_API阅读全文
要理解二者的区别,首先需要清楚: 我们通过键盘所打的字,并不都是全部通过输入法后,转交给程序的。也就是说: 我们用键盘打的字有些是不经过输入法直接传送到程序中,如1、2、3这样的数字 还有ABC英文字母,回车 空格等, 有些是经过输入法转交给程序的,如中文。明白这点后,WM_IME_CHAR与WM_CHAR的区别就容易理解了。
需要说明的是: 数字和英文字母 你可以...
windows_API阅读全文
WM_CONTEXTMENU消息 用来响应鼠标右键消息, 它响应的不是鼠标右键按下消息,也不是鼠标右键弹起消息
而是鼠标右键 依次按下弹起后触发的消息。
因此,若程序还响应了鼠标右键按下的消息OnRButtonDown,且在此响应函数中有模特对话框出现的话,则不会响应WM_CONTEXTMENU消息。
比如,有AfxMessageBox(L"Right Down&qu...
windows_API阅读全文
1.枚举所有的进程
方法很多,这里用EnumProcesses这个方法
DWORD aProcesses[1024], cbNeeded, cProcesses; unsigned int i;
if ( !EnumProcesses( aProcesses, sizeof(aProcesses), &cbNeeded ) ) return;
cProcesses = cbNeeded / sizeof(DWORD);
for ( i = 0; i < cProcesses; i++ ) PrintProcessNameAndID( aProce...
windows_API阅读全文
1.获取所有的驱动器 利用函数 GetLogicalDriveStrings
The GetLogicalDriveStrings function fills a buffer with strings that specify valid drives in the system.
DWORD GetLogicalDriveStrings( DWORD nBufferLength, // size of buffer LPTSTR lpBuffer // drive strings buffer );
很简单的一个函数,msdn有详细的说明 需要注意的一点是
lpBuf...
windows_API阅读全文