【问题标题】:Install Fonts with Inno Setup - Replacing fonts that are locked使用 Inno Setup 安装字体 - 替换锁定的字体
【发布时间】:2016-12-16 08:50:20
【问题描述】:

我正在使用 Inno Setup 为 Windows 上的桌面应用程序安装 Fontawesome 字体。由于未安装字体,第一次安装通常可以正常工作,但在随后的安装中我经常遇到锁定问题:

为了安装我正在使用的字体:

Source: "FontAwesome.ttf"; DestDir: "{fonts}"; FontInstall: "FontAwesome";\
        Flags: uninsneveruninstall

现在我知道我可以使用Flags: onlyifdoesntexist 来安装字体,前提是它们不存在并且确实有效。但是,有时由于版本更改和添加的新字体,我需要更新字体。

这个错误显然只有在某些东西正在使用该字体时才会发生。除了主要安装的应用程序外,我还在使用 Chrome 并打开了使用 FontAwesome 的页面,显然这也锁定了已安装的字体。

理想情况下,我需要做的是如果字体被锁定,在下次重新启动后或字体被解锁后替换它。

看起来 Inno 每次都尝试替换字体,即使字体版本相同。根据the docs(文档底部)的说法,只有在安装版本更高时才应该替换文件,但每次要安装的字体似乎都不会发生这种情况。

如果有问题的字体正在使用,有什么方法可以让 Inno 正确处理字体更新?

【问题讨论】:

  • 您对字体版本的编辑:这是一个新问题。它与锁定无关。

标签: fonts inno-setup font-awesome


【解决方案1】:

您可以尝试将*.ttf 添加到CloseApplicationsFilter

CloseApplicationsFilter=*.exe,*.dll,*.chm,*.ttf

如果字体被锁定,它应该检查 Inno Setup,并让用户关闭 Chrome(或其他应用程序)以允许替换。

【讨论】:

    猜你喜欢
    • 2015-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    相关资源
    最近更新 更多