0

我有一个旧版应用程序(至少从 Mac System 7 移植到 Carbon 到 Cocoa),其中用户报告说我的 mdls 报告的应用程序保存的文本文件的 kMDItemKind 元数据似乎设置为“Microsoft Excel 97-2004 工作簿”。旧文件的创建者和类型应该设置为“cBaS”和“TEXT”(就像在古代苹果公司注册的那样),旧文件扩展名是“.bas”。

什么设置了 Mac OS X 下保存文件的 kMDItemKind 元数据?

如何确保在保存这些文本文件时正确设置 kMDItemKind,以便我的应用程序可以打开它们?

4

1 回答 1

1

您不能直接设置kMDItemKind文件的。它源自其他元数据。文件类型代码'TEXT'非常通用。这些天来,创建者代码被忽略了。文件扩展名可能是系统所依赖的。

不幸的是,在您的情况下,您有多个处理 .bas 文件的应用程序。系统选择哪一个有点武断,可能会发生变化。Launch Services 正在根据实际使用的类型以及该应用程序如何定义与文件扩展名匹配的文档类型或 UTI 来分配类型。

通常,您应该将文件与特定应用程序的关联留给用户。如果他们想更改它,可以在按住 Option 键时使用 Finder 的文件菜单或上下文菜单中的“始终打开方式”进行更改。或者他们可以使用“获取信息”菜单。

您最好的选择是切换到使用更有可能是唯一的文件扩展名

于 2012-04-10T00:43:19.813 回答