我有一个Delphi控制台应用程序,最后需要启动两个应用程序之一。

我在使ShellExecute正常运行而不出错时遇到一些问题,并且我认为该问题与没有控制台应用程序句柄有关。

引起我悲伤的那一行是:

ShellExecute(0, 'open', 'someapplication.exe', nil, nil, SW_SHOWNORMAL);

我认为该句柄中的0是问题,因为它可以编译并可以在调试器中正常运行,但是如果我尝试运行该可执行文件,则会收到未处理的错误(控制台应用程序认为它已经完成了)。

最佳答案

传递0作为hwnd参数很好。 documentation因此描述了该参数:



您的错误是由于其他原因。

10-07 22:55