【问题标题】:Change icon for a Delphi console application更改 Delphi 控制台应用程序的图标
【发布时间】:2010-12-10 07:06:30
【问题描述】:

如何更改 Delphi 控制台应用程序的程序图标?

应用程序设置在控制台应用程序中显示为灰色。

再见。

【问题讨论】:

    标签: delphi console-application


    【解决方案1】:

    根据a July 2007 blog article by Nibu Thomas,好像有SetConsoleIcon WinAPI 函数。

    或者只是将图标放在资源文件中。 Windows 应该使用它在应用程序资源中遇到的第一个图标作为应用程序图标。

    【讨论】:

      【解决方案2】:

      如果更改图标的选项被禁用,那是因为您已从 DPR 文件中删除或忽略添加以下行:

      {$R *.res}
      

      把它放回去,或者如果你从未拥有它,就添加它。图标设置将重新启用,版本信息设置也将重新启用。如果资源文件不存在,那么 IDE 将为您创建它。不要编辑该资源文件(例如添加您自己的图标或其他资源);它仅供 IDE 使用。

      【讨论】:

      • 添加 {$R *.res} 在这里不起作用 - 在 Delphi 7 和 2009 中进行了测试。但是在 Delphi 2009 中,可以使用 Project | 添加图标资源,然后项目文件将有一行 {$R *.dres}
      • 衣服?伙计,我失去了联系。但它在 Delphi 7 中也不起作用?这让我很惊讶。 :/ 你确定你把它放在文件的正确位置了吗?
      • 为我工作,在我的 dpr 中添加代码并像我通常在表单应用程序中那样设置图标
      【解决方案3】:

      如果你添加

      application.Run; 
      

      在你的 dpr 文件的某个地方你可以使用 project->options 来改变图标。 更改图标后,只需删除“application.Run;”再次,您可以使用新图标编译/构建。

      【讨论】:

      • 不起作用,因为控制台应用程序没有 Application 对象
      • 这在 Delphi/BDS 2007 中适用于我,只需在 dpr 中添加 application.run 如果它丢失(即使它破坏了构建),更改您的图标/设置然后将其注释掉,直到您需要再次进行任何更改。最好首先添加一条评论,说明为什么它在那里。
      • 这是在 Delphi 7 中唯一对我有用的东西(不要问我们为什么仍在使用 Delphi 7,但它对于控制台应用程序来说是精简、简洁和干净的)
      • #CyprUS,你说得对,控制台应用程序中没有应用程序异议,但它不是为了构建应用程序!这只是欺骗 IDE 启用项目 > 选项 > 应用程序 > 应用程序设置。事实上,在我的代码中,它甚至不在 begin...end 块内,它仍然欺骗 IDE 以启用该选项。添加图标后,IDE 已将其保存到您的 AppName.res 文件中,您可以注释掉该行,保持冷静,然后继续构建 :)
      【解决方案4】:

      只需更改应用程序资源文件中的图标(假设您的应用程序项目名为 ConsoleApp.dpr,您的应用程序资源文件将是 ConsoleApp.res)

      里面的主图标资源,直观上​​叫做MAINICON,直接替换就行了。

      这里有一个step by step 用于 C++ Builder(步骤在 Delphi 中基本相同)

      【讨论】:

        【解决方案5】:
        1. 在您的 DPR 文件中添加 {$R *.res}
        2. 在 DPR 文件中注释 {$APPTYPE CONSOLE} 行
        3. 编辑项目 -> 选项 -> 应用程序 -> 图标
        4. 取消注释 DPR 文件中的 {$APPTYPE CONSOLE} 行

        使用 Delphi XE 测试

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-01-18
          • 1970-01-01
          • 2012-05-02
          • 1970-01-01
          • 1970-01-01
          • 2019-01-30
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多