c++ - 在 Windows 上查找文件的 MIME 类型

标签 c++ windows mime-types

有没有办法在 Windows 上使用一些系统调用来获取文件的 MIME 类型?我正在用 C++ 编写一个 IIS 扩展,所以它必须可以从 C++ 调用,如果有一些功能暴露,我确实可以访问 IIS。显然,IIS 本身必须能够做到这一点,但我的谷歌搜索一直无法找出如何。我确实找到了 this .net 相关问题在这里,但这并没有给我太多希望(因为那里既没有提到好的解决方案也没有提到 C++ 解决方案)。

我需要它,以便我可以使用我的应用程序中的适当内容类型来提供动态文件。我的计划是首先查阅我的应用程序中的 MIME 类型列表,然后回退到系统的 MIME 类型列表(但是这有效;显然它存在,因为它是您将文件与程序相关联的方式)。在某些情况下,我只有一个文件扩展名可以使用,但在其他情况下,我可能需要检查一个实际的磁盘文件。由于这些不是用户上传的文件,我相信我可以信任该扩展,并且我更喜欢仅扩展的查找解决方案,因为它看起来更简单、更快。谢谢!

最佳答案

HKEY_CLASSES_ROOT\\.<ext>\Content Type (其中“ext”是文件扩展名)通常包含 MIME 类型。

关于c++ - 在 Windows 上查找文件的 MIME 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2549015/

相关文章:

JavaFX:未装饰的窗口

gzip - 在哪里可以找到文本 MIME 类型的列表?

c++ - 互斥量加锁和解锁时间差

c++ - 将指针的地址转换为字符串并将字符串地址分配给指针?

c++ - 使用显式构造函数返回不可复制的不可移动对象

php - 在没有文件扩展名的情况下在 PHP 中获取 MIME 类型

wordpress - OTF 字体未在 Wordpress 中上传

c++ - 无法替换两跳之外的全局变量

windows - 包含 winuser.h 时出错。它将 ChangeMenu 定义为 ChangeMenuW 或 ChangeMenuA

c++ - 带有 Boost 的 CMake 找不到静态库