windows命令行指令大全,执行命令的代码
文章目录WinExec动作实例CreateProcess动作实例系统ShellExecute和shellexecute ex shellexecute ex区别
WinExec微软文档
运行指定的应用程序。
UINT WinExec(
[in] LPCSTR lpCmdLine,
[in] UINT uCmdShow
);LpCmdLine:为应用程序执行命令行(文件名的可选参数)。
如果不包括文件路径,将从以下目录中依次搜索:
目录的应用程序负载。当前目录。Windows系统目录。GetSystemDirectory函数获取目录的路径。Windows目录。GetWindowsDirectory函数检索目录的路径。环境变量中列出的目录路径。UCmdShow:显示选项。有关可接受值的列表,请参考nCmdShow的显示窗口功能描述参数。
特定值列表地址
软件隐藏、软件正常、软件显示最小化、软件显示最大化等
示例隐藏控制台弹出窗口并执行vb弹出脚本。
WinExec(mshta vbscript:msgbox(提示内容,64,提示框标题)(window.close),SW _ HIDE);
注意:
提供此函数只是为了与16位Windows兼容。
应用程序应该使用CreateProcess函数。
创建流程
示例lpcstr lpcmdline= mshtavsubscript:msgbox(提示内容,64,提示框标题)(window . close);
UINT uCmdShow=0;
过程_信息pi;
STARTUPINFO si
//创建新进程
ZeroMemory( si,sizeof(startup info));
BOOL b=CreateProcess(NULL,const_cast LPTSTR (lpCmdLine),NULL,NULL,TRUE,NORMAL_PRIORITY_CLASS,NULL,NULL,si,pi);
如果(!b) {
返回FALSE
}
//阻止调用方线程
WaitForSingleObject(pi . h process,INFINITE);
返回TRUE
系统C会自我封锁。
ShellExecute和ShellExecuteExShellExecute的作用是运行外部程序(或者打开注册的文件,打开目录,打印文件等。)并对外部程序有一些控制。
Shellexecute Shellexecute (null, mshta , VBScript: msgbox(提示内容,64,提示框标题)(window.close),null,null,SW _ show);
由ShellExecuteEx管理员运行
SHELLEXECUTEINFO shExecInfo
shexecinfo . cbsize=sizeof(SHELLEXECUTEINFO);
shexecinfo . fmask=SEE _ MASK _ NOCLOSEPROCESS;
shExecInfo.hwnd=NULL
shexecinfo . LP verb=L runas ;
shexecinfo . LP file=L mshta . exe ;
shexecinfo . LP directory=L“”;
shexecinfo . LP parameters=l VBScript:msgbox(提示内容,64,提示框标题)(window . close);
shExecInfo.lpClass=NULL
shExecInfo.nShow=SW _ HIDE
shExecInfo.hInstApp=NULL
DWORD err=ERROR _ SUCCESS
如果(!ShellExecuteEx( shExecInfo)) {
返回GetLastError();
}
说出c system()和WinExec()的区别
1.CreateProcess很少使用,因为它很复杂。
2.WinExec主要运行EXE文件。如WinExec (Notepad.exe readme.txt ,SW _ show);
3.ShellExecute不仅可以运行EXE文件,还可以运行相关文件。
WinExec是一个异步的进程调用,即当它被调用时,它会返回,而不需要等待被调用的程序结束。
系统是一个同步调用进程。如果调用进程没有结束,它将不会返回。它可以获得调用进程返回的值。
二次元怪兽原创作品,博主,
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。