Inno setup 显示isxdl插件下载页面时,向导表单标题为什么会更改?

Inno setup 显示isxdl插件下载页面时,向导表单标题为什么会更改?,inno-setup,Inno Setup,我正在使用以下行更改主面板的颜色和向导SmallBitMapImage图像: [Setup] WizardSmallImageFile=MyFile.bmp [Code] procedure InitializeWizard; begin WizardForm.MainPanel.Color := $00FFDBBF; end; 在我的设置中,我使用插件下载先决条件,问题是当显示其下载进度页面时,main面板和WizardSmallBitmapImage组件将它们的回望更改为默认值,正如

我正在使用以下行更改
主面板的颜色和
向导SmallBitMapImage
图像:

[Setup]
WizardSmallImageFile=MyFile.bmp

[Code]
procedure InitializeWizard;
begin
  WizardForm.MainPanel.Color := $00FFDBBF;
end;
在我的设置中,我使用插件下载先决条件,问题是当显示其下载进度页面时,
main面板
WizardSmallBitmapImage
组件将它们的回望更改为默认值,正如我在这张图中所示:


当显示isxdl插件下载页面时,向导表单标题为什么会改变?如何保持页面标题的修改外观,即使是此页面?

此问题的根源在于插件的深层次,因此,您在该页面上看到的不是Inno安装程序的
主面板
向导SmallBitMapImage
,而是该插件绘制的元素,在其源代码中硬编码


在我看来,截取该插件的窗口进程以使这些元素的实际外观过度渲染(响应
WM_PAINT
消息)是不必要的过度复杂(如果可能的话),因此我建议您要么构建自己版本的插件,要么切换到其他插件,例如,它也很容易使用,并且不会破坏向导的外观。

此代码示例适用于其他窗口。使用CreateOutputProgressPage创建的附加窗口不适用于此窗口。假设“其他窗口”指的是其他页面,我无法重现任何问题,在快速查看源代码后,我怀疑我是否能够重现。
TOutputProgressWizardPage
页面对该面板没有任何作用。也许是时候给我们展示一个简约的代码了,在那里我们可以重现你的问题。哦,但是现在看这张图片,你正在使用一些蒙皮库,对吗?然后我就放弃了…你可以从下面的链接下载皮肤主题并轻松应用。[Code]过程装入皮肤(lpszPath:String;lpszIniFileName:String);外部的LoadSkin@files:isskin.dll stdcall';函数InitializeSetup():boolean;开始提取临时文件('Office2007.cjstyles');LoadSkin(ExpandConstant({tmp}\Office2007.cjstyles'),'';即使使用ISSkin插件,我也无法重现任何问题。我创建的
TOutputProgressWizardPage
上的主面板颜色保持不变。为了帮助您,我需要看到一个最低限度的代码,它将显示您遇到的问题。我准备了小的演示脚本。你可以从这个链接下载。当安装程序从web下载.net framework时,此时将显示白色顶部栏窗口。