模拟显示桌面

模拟显示桌面

 

方法一

// Win+ D键就是显示桌面快捷键

  ::keybd_event(VK_LWIN,0,0,0);                 // Win,不放开

  ::keybd_event(D,0,0,0);                      // D key;再按D键不放开

  ::keybd_event(D,0,KEYEVENTF_KEYUP,0);       // 放开M

  ::keybd_event(VK_LWIN,0,KEYEVENTF_KEYUP,0);  // 放开Win

 

方法二

#include <windows.h>  

#include <shldisp.h>

     CoInitialize (0);  

     IShellDispatch4 *pdisp = NULL;  

     CoCreateInstance(CLSID_Shell, NULL, CLSCTX_ALL, __uuidof (IShellDispatch4), (void**)&pdisp); 

     pdisp->ToggleDesktop (); //这句是用来切换桌面的 

     pdisp->Release();  

     CoUninitialize();

 

方法三

     FILE *f;

     char *p = "dest.scf";

     f = fopen(p,"w");

     fprintf(f, "[Shell]/nCommand=2/nIconFile=explorer.exe,3/n[Taskbar]/nCommand=ToggleDesktop");

     fclose(f);

     ::ShellExecuteA(m_hWnd,"Open",p,NULL,NULL,SW_SHOW);

     ::DeleteFileA(p);

 

方法一效果很好, 方法二程序本身没有隐藏, 方法三效果也很好, 它就是模仿点击显示桌面那个图标的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值