Использование Mono для распознавания исполняемых файлов в Linux? - PullRequest
1 голос
/ 17 сентября 2009

Можем ли мы распознать, какой файл является исполняемым (то есть chmod +x), используя Mono под Linux? Есть ли какой-нибудь метод в общих библиотеках базовых классов .Net / Mono?

Редактировать: Собственные исполняемые файлы Linux

Ответы [ 3 ]

4 голосов
/ 17 сентября 2009

Лучшее, что вы можете сделать, это использовать пространство имен Mono.Unix.Native для проверки прав доступа к файлам. Вы можете проверить, имеет ли файл права на выполнение (для владельца / группы / других), вызвав метод Syscall.Stat. Точнее, вы захотите взглянуть на перечисление FilePermissions.

1 голос
/ 17 сентября 2009

Да, мы можем , но я не знаю общего класса .NET, который делает это. Вы можете посмотреть на моно источники. :)

Edit:

Исходная ссылка относится к вспомогательному приложению, которое не может быть найдено. Тем не менее, на странице проекта Mono есть что сказать о поддержке binfmt , и вспомогательное приложение не требуется.

0 голосов
/ 17 сентября 2009

Хотя это не совсем метод поиска исполняемых файлов .NET, вы можете загрузить сборку с помощью Assembly.Load. Если это не удается, это не сборка .NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...