gpt4 book ai didi

c - 如何使用批处理脚本在Windows上查找软件图标

转载 作者:行者123 更新时间:2023-11-30 19:43:36 24 4
gpt4 key购买 nike

我正在做一个小c project ,它是一个包含所有内容的菜单
用户拥有的程序。所以我需要一个批处理脚本

  • 获取程序的名称或路径
  • 返回其图标的完整路径。你能帮忙吗?

最佳答案

不是不可能完成的任务(毕竟,Windows 做到了!)。通常,程序的图标在两个位置之一指定:在程序二进制文件本身内,或在程序的快捷方式中。

  • 在程序二进制文件中:Windows 程序(EXE 和 DLL)使用名为 Portable Executable (PE) format 的格式。 。此文件格式指定程序代码和数据的组织。图标将存储在此处的某个位置。因此,您需要解析 PE 格式才能获取图标。值得庆幸的是,看起来Windows提供了获取图标的功能:ExtractIconEx 。您可以使用它从程序中获取图标。 Here's我发现一篇文章对该功能有一些评论。其中一些链接已失效 - Google 是您最好的 friend 。

  • 在快捷方式中: Here是一个已经回答的关于从快捷方式获取图标的 StackOverflow 问题。里面的东西可能会有帮助。

一些附加评论:

  • 查找 Program Files 目录中的每个 EXE 会很慢而且毫无用处。那里有很多没有人愿意使用的程序。您需要做的是解析“开始”菜单文件夹中的快捷方式。
  • 从那里,您需要从快捷方式获取图标。如果失败,请从程序本身获取它。

我希望这会有所帮助。

关于c - 如何使用批处理脚本在Windows上查找软件图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29451310/

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