如何查找可执行文件是否在PATH中,而无需遍历路径上的所有文件夹(或执行它)



我知道文件操作在操作系统和API之间是相当不标准的,但我想发现路径中是否存在可执行文件(在运行时命名)。

这是对用户输入的验证,然后使用

调用应用程序
        ProcessStartInfo ^processStartInfo = gcnew ProcessStartInfo("ReallyCool.exe");
        Process ^process = gcnew Process();
        process->StartInfo = processStartInfo;
        bool processStarted = process->Start();

只在上面的最后一行抛出。

有没有人知道我如何在承担实际执行它的风险之前验证文件是否存在,或者我允许用户运行'。前任通过我的应用?

根据标题,如果可能的话,我希望避免明确地搜索路径上的每个目录。我也不确定如何从。net编码中获得Windows路径。

检查文件是否存在,使用bool doesFileExist = System.IO.File.Exists(path);

我怀疑没有一种简单的方法可以知道它是否是一个有效的可执行文件而不尝试运行它

最新更新