从我的应用程序发送消息Ctrl + Alt + Del

aJ.*_*aJ. 2 windows winapi mfc

我想写一个小实用程序,MFC其中将Ctrl+ Alt+ Del消息发送到OS.任何人都可以帮助我如何实现这一目标?我试过了:

::PostMessage(HWND_BROADCAST, WM_HOTKEY, 0, MAKELONG( MOD_CONTROL | MOD_ALT, VK_DELETE));
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

我想发送Ctrl+ Alt+ Del不要调用TaskMgr.exe.此外,它适用于我的本地操作系统(Windows XP Service Pack 2).基本上我想使用这个应用程序来锁定我的机器并安排一些操作以及锁定.

Ser*_*ier 5

这不是您可以模拟的击键.它被称为"安全注意序列".以下是如何从远程桌面(XP +解决方案)调用它:

include <shldisp.h>

IShellDispatch4 *pShell;

CoInitialize(NULL);

HRESULT hr = CoCreateInstance(CLSID_Shell, NULL, CLSCTX_INPROC_SERVER,
IID_IShellDispatch, (void**)&pShell);

if(SUCCEEDED(hr))
pShell->WindowsSecurity();

CoUninitialize();
Run Code Online (Sandbox Code Playgroud)

从本地桌面调用它的唯一解决方案是使用SASLib.它不公开.写一封说明给saslib@microsoft.com进行申请.

编辑:等等!你想锁定机器?只需致电LockWorkStation()!单击链接以获取有关头文件,lib文件和所有其他详细信息的更多信息.