我正在运行此代码,这是一个简单的代码,用于锁定戴尔的Windows 8屏幕,该屏幕上有一个可以分配给.exe
的按钮,但在锁定之前显示cmd
窗口,如何在不显示窗口的情况下启动.exe
?
使用Visual Studio Dev命令提示符进行编译
命令行:
cl lockscreen.cpp
代码:
#include <string>
#include <Windows.h>
using namespace std;
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int cmdShow)
{
system("rundll32 user32.dll,LockWorkStation");
return 0;
}
答案 0 :(得分:3)
链接user32.dll(实际上是user32.lib,导入库,但如果这是一个股票win32项目,你应该已经这样做了)并且直接调用 LockWorkstation
。如果必须,LoadLibrary
()+ GetProcAddress
()+等等。您无需调用rundll调用即可。
答案 1 :(得分:2)
基本上我同意WhozCraig,但如果有充分的理由通过外部exe进行调用,请尝试使用start /b
进行调用。
答案 2 :(得分:2)
您根本不需要编译任何代码。只需将特殊键盘按钮连接到
即可rundll32.exe user32.dll,LockWorkStation