C++ 如何检查路径是否指向可执行文件?

C++ 如何检查路径是否指向可执行文件?,c++,boost,executable,boost-filesystem,C++,Boost,Executable,Boost Filesystem,我尝试创建某种文件浏览器。我想知道path下的文件是否可以跨平台执行 如何使用boost::filesystem做这样的事情?boost,因为POSIX权限不是“跨平台”的 根据需要使用特定于平台的API。对不起 你可以试试QT。它是跨平台的。在处理文件时,您不必关心操作系统的差异。你所说的“可执行文件”是什么意思还不清楚。如果您谈论的是文件权限,OT可以提供此类信息(只需查看QFile类文档)。如果您想了解是否可以实际运行它,您必须有某种文件扩展名约定。例如,Windows中的.exe。我不知

我尝试创建某种文件浏览器。我想知道path下的文件是否可以跨平台执行

如何使用boost::filesystem做这样的事情?

boost,因为POSIX权限不是“跨平台”的


根据需要使用特定于平台的API。对不起

你可以试试QT。它是跨平台的。在处理文件时,您不必关心操作系统的差异。你所说的“可执行文件”是什么意思还不清楚。如果您谈论的是文件权限,OT可以提供此类信息(只需查看QFile类文档)。如果您想了解是否可以实际运行它,您必须有某种文件扩展名约定。例如,Windows中的.exe。我不知道,也许有一种方法可以查看文件的初始位并了解它是否是二进制文件,但我认为您将无法找到该文件的库调用。为此,您必须实现一些特定于平台的例程。如果我没有弄错的话,文件浏览器通常会查看文件的扩展名以查找类型。例如,如果将pdf的文件扩展名更改为exe,则windows资源管理器会将此文件视为可执行文件。显然,在假定文件类型之后,它可以尝试了解有关文件的其他一些信息,例如可执行文件的图标。但最初它只关注扩展。否则,浏览包含大量文件的目录会非常慢

我希望,我在这里提供了一些相关信息

您能提供一些“代码”示例来解决这个问题吗/