1

我正在使用 Slappy 的 SkinnedButton-v1.2.zip (23 KB) - v1.2 为我的安装程序按钮设置皮肤。

它在任何地方都可以正常工作,除了在 Windows 7 64 位上,按钮没有显示图像,文本也没有像“返回,下一步,取消”,它只显示白色按钮。

没有出现皮肤按钮错误,但是按钮已启用并且可以单击。

知道这个问题的原因是什么吗?

4

3 回答 3

1

使用此处的修补 SkinnedControls 插件解决了问题。

于 2013-05-09T11:55:38.490 回答
0

我在Debug模式下运行插件,我发现有问题

SetWindowLong() and GetWindowLong()

功能。

也许使用 SetWindowLongPtr 和 GetWindowLongPtr 可以解决这个问题。他们获取/返回一个 LONG_PTR 变量,该变量取决于编译器设置。它在 x86 上是 32 位长,在 x64 上是 64 位 _int64。

所以插件必须修复并重新构建以支持 x64 机器。但是因为这个插件真的过时了(目前我没有时间新版本),请尝试我的另一个工具/插件,称为图形安装程序:http : //www.graphical-installer.com/

我开发了这个解决方案来快速皮肤 NSIS 安装程序,我希望你会喜欢它(对不起自我宣传)。

于 2013-05-07T13:04:39.903 回答
0

有两个可能的错误:

1)安装程序的初始化函数称为.onInit(你是'.onint')

这意味着 $PLUGINSDIR 永远不会被初始化并且文件不会被提取。

2)您的函数myGuiInit没有被调用/初始化。

您应该为此函数定义符号 MUI_CUSTOMFUNCTION_GUIINIT,例如:

!define MUI_CUSTOMFUNCTION_GUIINIT "myGuiInit"

定义它的最佳位置是脚本开头的某个地方 - 靠近其他 MUI_ 东西。

于 2013-05-02T14:34:50.540 回答