/// <summary> /// Searchs the path variable for the first match of exeToSearchFor. Returns /// null if not found. /// </summary> public string GetFullPathOfExeFromEnvironmentPath(string exeToSearchFor) { string pathEnv = TheEnvironment.GetEnvironmentVariable("Path"); if (string.IsNullOrEmpty(pathEnv)) { return(null); } var paths = pathEnv.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); foreach (var path in paths) { // We don't want one bad path entry to derail the search try { string exePath = Path.Combine(path, exeToSearchFor); if (TheFileSystem.FileExists(exePath)) { return(exePath); } } catch (ArgumentException) { } } return(null); }
/// <summary> /// Searches the path variable for the first match of exeToSearchFor. Returns /// null if not found. /// </summary> public string GetFullPathOfExeFromEnvironmentPath(string exeToSearchFor) { string pathEnv = TheEnvironment.GetEnvironmentVariable("Path"); if (string.IsNullOrEmpty(pathEnv)) { return(null); } foreach (string path in new LazyStringSplit(pathEnv, ';')) { // We don't want one bad path entry to derail the search try { string exePath = Path.Combine(path, exeToSearchFor); if (TheFileSystem.FileExists(exePath)) { return(exePath); } } catch (ArgumentException) { } } return(null); }