gpt4 book ai didi

.net - 用于执行外部应用程序的 Shell 与 Process.start

转载 作者:可可西里 更新时间:2023-11-01 14:14:40 25 4
gpt4 key购买 nike

我可以通过以下方式从我的应用程序中打开 Windows 计算器:

  • 使用 Shell()

    Shell("C:\WINDOWS\system32\calc.exe") 
  • 使用 Process.start()

    Process.start("C:\WINDOWS\system32\calc.exe")  
  • 打开记事本应用

    Shell("C:\WINDOWS\system32\notepad.exe", AppWinStyle.NormalFocus)  
    Process.start("C:\WINDOWS\system32\notepad.exe", AppWinStyle.NormalFocus)

谁能告诉我这两个调用有什么区别?哪个是最佳实践?

最佳答案

在这两个例子中本质上没有区别但是

Process.Start 是首选,因为它为您提供了更多控制流程的选项。您可以使用 ProcessStartInfo 指定更多选项对象作为参数。

Shell 仅返回您必须在运行进程列表中查找的进程 ID,而 Process.Start 返回一个 Process可用于检查其状态等的对象。

另请注意,Shell 位于 Microsoft.VisualBasic 命名空间中,主要包含用于遗留用途的弃用方法。您应该尽量避免在此处使用任何内容,而应使用另一个命名空间中的替代项。

关于.net - 用于执行外部应用程序的 Shell 与 Process.start,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26038052/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com