Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Bitmap in BACKGROUND mode


10 replies to this topic

Russkle

Russkle
  • Members
  • 7 posts

Posted 26 February 2001 - 23:38

I'm using an InstallScript to place a bitmap behind my windows. I don't want to use Billboards, cause I want the bitmap to stay the whole time. However, when I do this the screens do not draw completely. Conrols will be missing and pieces of the window will be blocked out.  Even if I make the bitmap smaller it continues to do this. Anytime I have any bit map this occurs. I've scaled down the bitmap to like 300x300 and 256 colors. This still occurs.  Here is the script portion I'm using.

// Main Bitmap for installation

#define BMP_PATH  "C:\\AFSiswh256.bmp"
#define BITMAP_ID_1 66001

export prototype AFS_back(HWND);

function AFS_back(hMSI)
begin

   Disable(BACKGROUND);
   Enable (BACKGROUND);  
   Enable (DIALOGCACHE);
   SetColor (BACKGROUND, BK_SOLIDWHITE);

// Display the bitmap in the upper left corner.
   PlaceBitmap (BMP_PATH, BITMAP_ID_1, 0, 0, UPPER_LEFT);
end;

Any ideas?


SteveP

SteveP
  • Members
  • 126 posts

Posted 02 March 2001 - 18:16

If you generate a custom dialog that contains the bitmap that you want, size it to suit your install, and make it modeless, you can display it at the beginning of your install sequence.  Then add 16 (decimal) to the attributes of your other dialogs (Keep Modeless) so they don't destroy the background.  This works fine with my test setup, although the standard UI seems to launch two copies of the WelcomeDlg, and I have not yet figured out where the second one originates.

Russkle

Russkle
  • Members
  • 7 posts

Posted 02 March 2001 - 19:10

Well I tried that and it still did not resolve my issue. (I assume you are using standard edition.. however, in ISWI I can change the attributes using the IDE)

I called InstallShiled to use my 30 days free. After arguing with the lady who screens calls I got to talk with a tech. (She tried to tell me the 30 days free support was "e-mail" only. However, I promplty pointed out that the manual said otherwise.) He tested it and it worked fine. So I tried to duplicate his results.

Turns out that it works fine on 98 (their test machine) and NT 4.0. They admitted to me this is a bug in Windows 2000. (whoo hoo... I discovered a new bug... bet you they will still count this as one of my 6 free issues) Unless there are any other ideas? Why would this not just work in Windows 2000? (tried MIS 1.5 already... no go)


SteveP

SteveP
  • Members
  • 126 posts

Posted 05 March 2001 - 20:09

I don't use IS (or WISE or VSI).  I tried my solution strictly with using the MSI database and ORCA as an editing tool.  It works on NT and 2000, but I can't swear to Win 9x.

Russkle

Russkle
  • Members
  • 7 posts

Posted 06 March 2001 - 01:22

I've done what you suggest and added 16 to the attributes of my windows. This works however, the "SetupInitialization" Dialog launches first and then the setupWelcom opens in front of the other window Granted it doesn't have the refresh problem. However, the SetupInit does and wont go away.. always stays open in background. Any ideas?

suvidha

suvidha
  • Members
  • 72 posts

Posted 04 June 2001 - 20:43

I am trying to do the same thing what Steve proposed but am not able to figure out how to add 16 to other dialog boxes.

** I created a dialog box (which will serve as  background) by right-clicking on All Dialogs and selecting New Dialog.

Please help..
thanks


Russkle

Russkle
  • Members
  • 7 posts

Posted 04 June 2001 - 20:56

You have do do this manually in a MSI installer. I used ORCA which is free from Microsoft. Try searching for it on their download site.

suvidha

suvidha
  • Members
  • 72 posts

Posted 05 June 2001 - 04:17

thanks for the tip.

i found a web page:
http://support.micro.../05.ASP<p>which has notes about ORCA. Now I am downloading Windows SDK (to get ORCA)....will keep you posted about any development.



suvidha

suvidha
  • Members
  • 72 posts

Posted 06 June 2001 - 01:42

Ok, i installed ORCA and made a cutom dialog and all is working fine (ie dialog boxes ahve focus)..but there are couple of issues:
I made the background dialog box by doing right-click on AllDialogs  and selecting a new dialog.
and NOT by other methods

1. This dialog box must be DISABLED (otherwise any click on it will hide the setup dialog boxes)..disabling the bitmap image does not help.

2. Now, this dialog box shows up with scroll bars which should NOT appear.

3. task bar still appears at the bottom of desktop

** i thought of using InstallDialogue from moonsea software but on web page http://moonsea.com/ it says that the product is for Installshield 5.0 and 6.0 but i am using
Installshield Professional Windows Installer Edition 2.0


Please help...



Rastislav Zima

Rastislav Zima
  • Members
  • 34 posts

Posted 22 June 2001 - 08:54

This approach by creating large dialog would be good If I could know which screen resolution clients are using, but thats impossible - is there a way how to resize the dialog at the setup time?

rflum

rflum
  • Full Members
  • 40 posts

Posted 25 February 2002 - 22:15

Russell:
 The way I got around the SetupInit dlg hanging around is: in Sequences, I launch the splashscreen dlgs immediately after SetupInit.  The splashscreens have Keep Modeless set to False, so they kill SetupInit.
All following dlgs, except for the ones that I want to kill tthe splashscreens have Keep Modeless set to True.
This way the only drawback is that the SetupInit dlg comes up before the splash.
I did not have to use ORCA to set Keep Modeless, but I'm using ISWI 2.01, if that makes a difference.
Rastislav:
Yes, there is a way to get the screen resolution - use the GetSystemInfo function and make the splashscreen's condition in Sequences depend on what resolution you get.  I use 3 different splashscreens, one for each resolution I cover.

By the way, I found that IS has a weird limitation: you can't make a dialog with width greater than 771!  So I couldn't fill the screen if its resolution is greater than 1024x768.
 The other problem I'm having is that a bitmap that looks fine in 256 colors in Paint or other graphic editor degrades to 16 colors in IS and looks awful!  This is true even if I limit the palette to 16 colors.  Anybody have a guess as to a workaround?
  Rob