很好奇,你一个键鼠模拟驱动文件要调用打印机、获取主机IP干什么,而且还带有释放文件,以下是你dll调用的部分API
[C++] 纯文本查看 复制代码 WinAPI: waveOutRestart - 重新启动一个被暂停的输出设备
提示: 当输出设备未暂停时调用该函数无效, 但也返回 0
GetForegroundWindow获取一个前台窗口的句柄(用户当前工作的窗口)。该系统分配给其他线程比它的前台窗口的线程创建一个稍微更高的优先级。
该函数通过特定的方式把一个特定的区域与当前的剪切区域合并在一起。
函数原型:int ExtSelectClipRgn (HDc hdc, HRGN hrgn, int fnMode);
eclare Function OpenPrinter Lib "winspool.drv" Alias "OpenPrinterA" (ByVal pPrinterName As String, phPrinter As Long, pDefault As PRINTER_DEFAULTS) As Long
说明打开指定的打印机,并获取打印机的句柄
The RegQueryValueEx function retrieves the type and data for a specified value name associated with an open registry key.
函数RegQueryValueEx找回一个打开的注册表键值相关联的给定的变量数据或者变量。
ShellExecuteA(0, "open", "notepad", 0, 0, 3);//最大化打开记事本
第一个参数//系统启动
第二个参数//open打开
第三个参数//指令
第四个参数//默认0
第五个参数//默认0
第六个参数//0隐藏 3最大化 6最小化 其余正常
ShellExecuteA(0, "open", "www.baidu.com", 0, 0, 3);//打开百度网站
ShellExecuteA(0, "open", "tasklist", 0, 0, 1);//执行tasklist命令
ShellExecuteA(0, "open", "C:\\Users\\Administrator\\Desktop\\笔记2.txt", 0, 0, 3);//打开txt文件
ShellExecuteA(0, "print", "C:\\Users\\Administrator\\Desktop\\翻译.docx", 0, 0, 0);//调用打印机打印
CoInitialize CoInitializeEx 是用来初始化COM运行环境的。
OleInitialize是初始化Ole的运行环境,Ole是在Com的基础上作的扩展,是ActiveX运行的基础, OleInitialize肯定会调用CoInitialize。
CoInitialize、CoInitializeEx都是windows的API,主要是告诉windows以什么方式为程序创建COM对象,原因是程序调用com库函数(除CoGetMalloc和内存分配函数)之前必须初始化com库。
CoInitialize指明以单线程方式创建。
CoInitializeEx可以指定COINIT_MULTITHREADED以多线程方式创建。
创建单线程方式的COM服务器时不用考虑串行化问题,多线程COM服务器就要考虑。
CoInitialize并不装载com库,这个函数只是用来初始化当前线程使用什么样的套间。当使用这个函数以后,线程就和一个套间建立了对应关系。
线程的套间模式决定了该线程如何调用com对象,是否需要列集等
套间是com中用来解决并发调用冲突的很有效的办法
BOOL WINAPI ImageList_Destroy(
HIMAGELIST himl
);
参数
himl
[in] 要销毁的图像列表的句柄。
short GetFileTitle(
LPCTSTR lpszFile, // path and file name
LPTSTR lpszTitle, // file name buffer
WORD cbBuf // length of buffer
);
第一个参数:文件路径
第二个参数:装文件名的buffer缓冲
第三个参数:第二个buffer参数的长度,用sizeof(lpszTile)可获取其长度
The waveOutRestart function resumes playback on a paused waveform-audio output device.
本函数恢复回放一个被暂停的waveform音频输出设备(注:被waveOutPause暂停的)
#include <winsock.h>
char FAR* PASCAL FAR inet_ntoa( struct in_addr in);
in:一个表示Internet主机地址的结构。
VariantCopyInd():释放目标 对象, 对象。 :释放目标VARIANT对象,并拷贝源 对象 并拷贝源VARIANT对象。 对象 VariantChangeType():改变 的类型。 |