cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
ussraf
Level 6

Dynamically Change Banners and Images?

Hi all,

Is there a way that I can dynamically change the Banner and Images(please, refer to the attachment) that shows up in my MSI?

I know the static way to change them, but I'd like there is a more dynamical way such as during the runtime of the MSI, my MSI can find the external images through some kind of manifest file and then replace the original MSI banner or sidebars.

Is that possible?

Many thanks.
Labels (1)
0 Kudos
11 Replies
Blueeberry
Level 4

Klick on the Banner then you see on the right site the Properties and under "File Name" you can klick on the three points an change the Picture.
0 Kudos
ericpaul
Level 6

Hi Blueeberry, I think that is the static way ussraf is mentioning.
I presume what he is interested in, is changing the images runtime.
I.e. more or less like billboards or based on some condition.
0 Kudos
ussraf
Level 6

ericpaul wrote:
Hi Blueeberry, I think that is the static way ussraf is mentioning.
I presume what he is interested in, is changing the images runtime.
I.e. more or less like billboards or based on some condition.


Yeah, eric. I'd like the runtime way. Something like a runtime skin, for our product shall ship with different branded super products.
0 Kudos
Marwan
Level 7

You can add all the bitmaps to the binary table and set the Text column in the Control table to use a public property. You can then set that property at runtime to one of the bitmaps.
0 Kudos
ussraf
Level 6

Marwan wrote:
You can add all the bitmaps to the binary table and set the Text column in the Control table to use a public property. You can then set that property at runtime to one of the bitmaps.


Yeah, Marwan, this is great idea, but I wonder if an external image can be provided that we can easily change to an arbitrary banner to sidebar?
0 Kudos
Marwan
Level 7

You can try streaming the bitmap from file into the binary table at runtime.
0 Kudos
ussraf
Level 6

Marwan wrote:
You can try streaming the bitmap from file into the binary table at runtime.


Thanks and I'll try..
0 Kudos
palanisamy
Level 7

Hi Marwan,

I tried above scenario in BasicMSI project, Bitmap files are added in to the Binary table and not able to change the property name in Binary table , please explain the scenario ..
0 Kudos
ussraf
Level 6

palanisamy wrote:
Hi Marwan,

I tried above scenario in BasicMSI project, Bitmap files are added in to the Binary table and not able to change the property name in Binary table , please explain the scenario ..


I think Marwan means runtime change the binary content in Binary table. Although I didn't had a chance to try this, but looks Msi provides some database functions allow changing the binary record content. However, to do this I guess I need the setup.exe to do something since my msi is compressed in setup.exe, so maybe a way to do this is I extend InstallShield setup.exe to change the extracted MSI binary at runtime, not sure if that will work.
0 Kudos
Marwan
Level 7

Or just have a custom action that runs first and it modifies the binary table.
0 Kudos
ussraf
Level 6

Marwan wrote:
Or just have a custom action that runs first and it modifies the binary table.


Ha, that's really much better!! Never expected a custom action has so big power and privilege.
I'm still very new.. 😄
0 Kudos