Как определить, указывает ли путь на приложение в Windows - PullRequest
0 голосов
/ 12 декабря 2011

Если у меня есть путь к файлу (который может быть позже передан в ShellExecute API), есть ли способ узнать, указывает ли он на приложение?

Мне нужно это для работы под Windows изC ++ программа.Также этот путь может содержать параметры командной строки при запуске.

Ответы [ 2 ]

1 голос
/ 12 декабря 2011

Вы можете использовать функцию SaferiIsExecutableFileType , чтобы проверить, является ли файл исполняемым.

0 голосов
/ 12 декабря 2011

Таким образом, вы действительно хотите знать, имеет ли строка, представляющая командную строку, путь к исполняемому файлу в качестве первой «части». От того, как вы поступите, зависит, насколько точной будет информация.

Сначала вы должны проанализировать строку, чтобы получить первый аргумент. Это не так просто, как просто поиск первого пробела, потому что пути Windows могут содержать пробелы. Вам придется обращаться с такими вещами, как "c:\program files\internet explorer\iexplore.exe" "http://stackoverflow.com".

Поиск файла - довольно сложный процесс, который включает поиск каталогов в переменной окружения PATH. Функция SearchPath API может помочь.

...