记录一些生疏的API
在使用计算机的过程中,经常会碰到在Windows桌面上残留有程序运行后的留下一些痕迹,这时我们往往在Windows桌面上单击鼠标右键,然后选择刷新,使桌面变得干净、整洁。其实自己编代码来实现这个功能也很简单,调用一个函数SHChangeNotify即可。SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, NULL, NULL);
一些坑
1 CreateProcess第二个参数,是给运行的程序指派参数,前面加一个空格。否则程序提示参数错误。
发现可以把程序路径也放到第二个参数里。
2 使用 cmd /c 程序路径 参数 时,如果程序路径用括号引用起来,有可能失败,比如fbinst.exe
3 拷贝文件夹,使用SHFileOperation中的FO_COPY操作,传文件位置的参数,末尾要两个空字符,另外xp下,文件夹尾不能有 \
4 IOCTL_DISK_GET_PARTITION_INFO_EX通过盘符创建的HANDLE,xp下不能获取该信息,只能通过获取到该盘的分区ID后,通过打开设备编号HANDLE,然后列举IOCTL_DISK_GET_DRIVE_LAYOUT_EX,再通过PartitionEntry[i]数组中该分区的元素来判断。