如何启动Run Dialog窗口并让应用程序输入启动Steam的命令?
我希望我的应用程序打开预先填充了输入的标准窗口运行对话框。
这就是我尝试过的:
HINSTANCE result;
result = ShellExecute(NULL, "open", "rundll32.exe", "steam://connect/192.69.96.168:27023", NULL, SW_SHOWDEFAULT);
我真的不理解ShellExecute的参数,我想澄清一下。
更新
我想我已经开始工作了:
HINSTANCE result;
result = ShellExecute( // WinExec is obsolete.
0, // hwnd
"open", // operation/verb.
"steam://connect/192.69.96.168:27023", // executable.
"", // parameters.
NULL, // directory
SW_SHOW); // how to be displayed
看看这里,取自这个相关的问题。这将打开运行对话框。
然后,如果您的进程具有管理权限,您可能能够在对话框的输入框句柄上调用SetWindowText
,您可以使用FindWindowEx
或类似方法找到它。
我真的认为创建自己的运行对话框更容易,它看起来像windows对话框,并在单击"ok"时调用ShellExecute
。