2009-09-17 87 views

回答

4

我相信你可以做的最好的事情是使用Mono.Unix.Native命名空間來檢查文件權限。您可以通過調用Syscall.Stat方法來檢查文件是否具有可執行權限(對於所有者/組/其他人)。更具體地說,你會想看看FilePermissions枚舉。

+0

小修正。 Syscall.Stat - http://www.go-mono.com/docs/index.aspx?link=M%3aMono.Unix.Native.Syscall.stat – macropas 2009-09-17 13:32:09

+1

而在Windows中,我們可以通過其擴展名來識別可執行文件或分析其可執行文件結構體。 – macropas 2009-09-17 13:35:48

0

雖然它不完全找到.NET可執行的方法,你可以用Assembly.Load加載程序集。如果失敗了,它不是一個.NET程序集。

+0

我講過關於本地可執行文件,而不是.Net程序集 – macropas 2009-09-17 10:40:15

+0

好的,這個問題有點含糊不清。我認爲這意味着你想找到可以在Linux下使用Mono執行的文件。 – OregonGhost 2009-09-17 11:45:14

1

是的,we can,但我不知道一個常見的.NET類。你可以看看單聲道音源。 :)

編輯:

原路段是指一個輔助應用程序,這是不能被發現。然而,單聲道項目頁面也有一些關於binfmt support的說法,並且沒有幫助程序似乎是必需的。

+0

不幸的是,這個關於檢測.Net或Wine可執行文件和實用程序的鏈接是無法訪問的。 – macropas 2009-09-17 11:01:32

+0

哈哈,我剛剛意識到我解析完全錯誤的原始問題!我讀到哪個文件是(可執行使用單聲道),而不是哪個文件是可執行的(使用單聲道)。抱歉! – Rytmis 2009-09-17 13:42:09

相關問題