gpt4 book ai didi

c# - Windows API : Assign Icon of filetype X to my file

转载 作者:可可西里 更新时间:2023-11-01 10:27:53 26 4
gpt4 key购买 nike

我读过 icon handlers ,但我不确定如何与他们合作。

假设我有一个 C# 应用程序(或只是一个 Windows 文件系统对象,例如 .LNK 文件),我想为其分配图标,当前正在使用的 PDF 文件(或一个 MS Word 文件),尽管应用程序本身不是 PDF 文件。

图标是如何分配的/该关联保存在哪里?当使用 Resource Hacker 等工具时,我可以在应用程序文件中找到图标(当然 PDF 文件本身没有图标)。在 HKCR 下的注册表中,我可以找到所有文件类型及其各自的打开器,图标在哪里定义?这归类为多个问题 - 我最感兴趣的是如何将系统当前分配的文件类型图标(例如 PDF)分配给我的应用程序。

最佳答案

在 HKEY_CLASSES_ROOT 中将有一个文件扩展名条目,例如 .pdf。此键下的字符串是文件类型的名称,在本例中为 AcroExch.Document。再次在 HKEY_CLASSES_ROOT 中查找该键,您将找到 DefaultIcon 或 CLSID 条目。如果它是 CLSID,您将需要进行更多级别的间接访问 - 在我的系统上,我最终位于 HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{B801CA65-A1FC-11D0-85AD-444553540000}。在 DefaultIcon 键下,您将找到包含图标的文件的完整路径,以及文件中的图标编号。

您需要从文件中提取图标并将其放入您的应用程序中。请注意,该图标将由创建它的公司注册商标和/或拥有版权 - 如果它是供您个人使用,没有人会来找您,但如果您使用其他人的图标发布应用程序,您可能会遇到麻烦。

关于c# - Windows API : Assign Icon of filetype X to my file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9165085/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com