我需要执行另一个应用程序,我想知道我是否应该使用WinExec
代替ShellExecute
或相反亦然。
两种方法有哪些区别?有应该优先选择的吗?
WinExec
长期以来已被弃用,仅出于向后兼容性的原因而保留。它用于启动可执行文件。不要使用它,因为它已被弃用。如文档中所述:
提供此功能只是为了兼容 16 位 Windows。应用程序应使用 CreateProcess 函数。
ShellExecute
并未弃用,但也不应使用,因为它无法正确报告错误。
Use ShellExecuteEx
执行 shell 动词。
如果您想创建一个进程,并且知道可执行文件名,请使用CreateProcess
。除非你需要执行提升,在这种情况下你需要ShellExecuteEx
与runas
verb.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)