PDA

View Full Version : iDeploy WebInstaller/WebUpdate



NewsArchive
07-06-2005, 01:23 AM
I've been playing with this technology and trying to fully understand
it. I have been able to make it work after a bit of experimentation,
but I don't feel comfortable that I'm using it correctly because I
don't completely understand the intended implementation. I think I
have follow the instructions exactly.

So, here are some questions I hope can be clarified for me...

Maybe if I describe what I've tried this will be easier to answer...

Here is what I have done in my testing and it seems to be working but
I don't think it is right...

I created a standard installer for my app like always. Then I
followed the directions under "Using WebUpdate in Your Installation"
then "To install the WebUpdate Client" steps 1-9. (My client would
download this installer from a web hyperlink or install CD and run it
just like any other program install). No problems here. So far so
good ???

Then I followed the directions "To create a WebUpdate installer".

1) I do not understand these comments from the help...

"We suggest to develop a "dynamic" WebUpdate. The WebUpdate Client
downloads a "dynamic" WebUpdate image (does not include any files).
This dynamic WebUpdate image can retrieve just the pieces needed for
the user's specific requirements."

Then a few steps down it says in step 8...

"Develop your installation. Add updated files, registry entries, etc.
It's a good idea to add "Start Delayed File Install" and "Stop Delayed
File Install" script function around your files."

QUESTION: What is this "Dynamic WebUpdate Image" WHICH DOES NOT
INCLUDE ANY FILES?

QUESTION: When I create an update I need to include only those files
that have been updated in this version update, right?...
Or every time I do an update do I keep adding additional files that
have been updated in this new and all previous updates since the
original full installer?...
Or should my updater contain everything that is in my original full
installer and it will figure out what the client needs?

I have created some WebUpdate installers and uploaded them to my web
site directory. The update did work when I check for them in my app.

Note: In my example my WebUpdate installer just had one file in it,
the exe, which I changed between each update. (and the update did
work each time from my app)

Now my web directory contains all of these files...

myAppSetup.exe (The full initial install)
myApp_Upd1.00001
myApp_Upd1.exe
myApp_Upd1.00002
myApp_Upd2.exe
myApp_Upd1.00003
myApp_Upd3.exe
myApp_Upd1.00004
myApp_Upd4.exe
myApp_Upd1.00005
myApp_Upd5.exe
myAppUpd.ini (the current one from myApp_upd5)

Should I be deleting all of the previous myApp.0000x and myApp_Updx
files when I upload a new update? I only see the files for the most
current SB5 when I look in your SB5 update web site directory.

As you can probably see, I'm confused, hopefully this description will
provide you with enough information to correct my ways :)

Thanks!
Kelly E Major

PS: Regarding uninstalls: When I create a folder under "Program
Files" and then add a shortcut in it to my app I have the opton to set
the shortcut to be uninstalled but no such option exists for the
folder. When I run an uninstall the shortcut is removed but the
folder always remains (empty). Shouldn't there be an option to delete
the folder as well? Thanks Again.

NewsArchive
07-06-2005, 01:23 AM
Kelly,

> I've been playing with this technology and trying to fully understand
> it. I have been able to make it work after a bit of experimentation,
> but I don't feel comfortable that I'm using it correctly because I
> don't completely understand the intended implementation. I think I
> have follow the instructions exactly.
>
> So, here are some questions I hope can be clarified for me...
>
> Maybe if I describe what I've tried this will be easier to answer...
>
> Here is what I have done in my testing and it seems to be working but
> I don't think it is right...
>
> I created a standard installer for my app like always. Then I
> followed the directions under "Using WebUpdate in Your Installation"
> then "To install the WebUpdate Client" steps 1-9. (My client would
> download this installer from a web hyperlink or install CD and run it
> just like any other program install). No problems here. So far so
> good ???

In this "standard installer" you configure the iDeploy WebUpdate client.
This gives your software the ability to check a specified location on
the Internet for updates. When you use WebUpdate for the first time,
you are just preparing your current software for future updates.

> Then I followed the directions "To create a WebUpdate installer".
>
> 1) I do not understand these comments from the help...
>
> "We suggest to develop a "dynamic" WebUpdate. The WebUpdate Client
> downloads a "dynamic" WebUpdate image (does not include any files).
> This dynamic WebUpdate image can retrieve just the pieces needed for
> the user's specific requirements."
>
> Then a few steps down it says in step 8...
>
> "Develop your installation. Add updated files, registry entries, etc.
> It's a good idea to add "Start Delayed File Install" and "Stop Delayed
> File Install" script function around your files."
>
> QUESTION: What is this "Dynamic WebUpdate Image" WHICH DOES NOT
> INCLUDE ANY FILES?

One essential difference between a "standard installer" and a "Dynamic
WebUpdate" is a Dynamic WebUpdate does not contain all of the information
needed for a full installation. A "Dynamic WebUpdate" can retrieve just
the pieces needed for the user's specific update requirements.

> QUESTION: When I create an update I need to include only those files
> that have been updated in this version update, right?...
> Or every time I do an update do I keep adding additional files that
> have been updated in this new and all previous updates since the
> original full installer?...
> Or should my updater contain everything that is in my original full
> installer and it will figure out what the client needs?

A WebUpdate should contain everything that has been updated in this
new and all previous updates since the original full installer!

For example, this is your original installation:

VERSION 1.00
- TEST.EXE (version 1.00)
- TEST.DLL (version 1.00)
- UTIL.DLL (version 1.00)

Let us assume, in Version 1.01 you updated TEST.EXE

VERSION 1.01
- TEST.EXE (version 1.01)
- TEST.DLL (version 1.00)
- UTIL.DLL (version 1.00)

In this case, your WebUpdate only includes the new TEST.EXE (version 1.01)

In version 1.02, you updated TEST.EXE and UTIL.DLL

VERSION 1.02
- TEST.EXE (version 1.02)
- TEST.DLL (version 1.00)
- UTIL.DLL (version 1.02)

The WebUpdate includes two files: TEST.EXE (version 1.02) and UTIL.DLL
(version 1.02)

In version 1.03, you only updated UTIL.DLL

VERSION 1.03
- TEST.EXE (version 1.02)
- TEST.DLL (version 1.00)
- UTIL.DLL (version 1.03)

The WebUpdate again includes two files: TEST.EXE (version 1.02) and UTIL.DLL
(version 1.03)

This method allows all 1.00, 1.01 and 1.02 users to update to 1.03. If your
user is on VERSION 1.00, the "Dynamic WebUpdate" downloads two files
(TEST.EXE and UTIL.DLL). But if your users is already on VERSION 1.2, it
downloads UTIL.DLL only.

BTW, the "Auto Update Scan Wizard" automatically handles the above!

> I have created some WebUpdate installers and uploaded them to my web
> site directory. The update did work when I check for them in my app.
>
> Note: In my example my WebUpdate installer just had one file in it,
> the exe, which I changed between each update. (and the update did
> work each time from my app)
>
> Now my web directory contains all of these files...
>
> myAppSetup.exe (The full initial install)
> myApp_Upd1.00001
> myApp_Upd1.exe
> myApp_Upd1.00002
> myApp_Upd2.exe
> myApp_Upd1.00003
> myApp_Upd3.exe
> myApp_Upd1.00004
> myApp_Upd4.exe
> myApp_Upd1.00005
> myApp_Upd5.exe
> myAppUpd.ini (the current one from myApp_upd5)
>
> Should I be deleting all of the previous myApp.0000x and myApp_Updx
> files when I upload a new update? I only see the files for the most
> current SB5 when I look in your SB5 update web site directory.

You only need the last WebUpdate image (in your case myAppUpd.ini,
myApp_Upd5.exe and myApp_Upd.00001.

> As you can probably see, I'm confused, hopefully this description will
> provide you with enough information to correct my ways :)

It's not easy to write the documentation for such a powerful installation
authoring solution ;-) Does the above help?

> PS: Regarding uninstalls: When I create a folder under "Program
> Files" and then add a shortcut in it to my app I have the opton to set
> the shortcut to be uninstalled but no such option exists for the
> folder. When I run an uninstall the shortcut is removed but the
> folder always remains (empty). Shouldn't there be an option to delete
> the folder as well? Thanks Again.

Can you reproduce this? I tested this on eight different machines here
and it worked fine.

Thanks,
Friedrich

--
Friedrich Linder
CEO, Lindersoft
www.lindersoft.com
1.954.252.3910

"point. click. ship" - that's SetupBuilder 5

NewsArchive
07-06-2005, 01:24 AM
Friedrich,

Your responses were very helpful, I think I was just getting caught up
on some of the wording. With these clarifications I feel confident I
can properly use the iDeploy technology. Just a couple more
questions/comments...

>BTW, the "Auto Update Scan Wizard" automatically handles the above!

There are not any docs yet for this. Can you describe exactly how it
should properly be used? Does it compare the files in the original
full installer to what is currently on your drive or do you keep a
complete installed version of your software from the original install
to compare to? I'll play with it and maybe I will be able to figure
it out myself.

>It's not easy to write the documentation for such a powerful installation
>authoring solution ;-) Does the above help?

SB5 is fantastic, I can't imagine writing docs for such a complex
tool.

>> PS: Regarding uninstalls: When I create a folder under "Program
>> Files" and then add a shortcut in it to my app I have the opton to set
>> the shortcut to be uninstalled but no such option exists for the
>> folder. When I run an uninstall the shortcut is removed but the
>> folder always remains (empty). Shouldn't there be an option to delete
>> the folder as well? Thanks Again.
>
>Can you reproduce this? I tested this on eight different machines here
>and it worked fine.

I have noticed this quite a number of times while I've been
experimenting with SB5 here on my development machine (Win XP SP2).
I'm not sure if it always happens, or maybe only happens if I've run
the installer multiple times without uninstalling, or some other
scenario. I'll do some testing and when I'm sure I can reliably
reproduce this I will report it to you and send a script.

One other issue, I've put SB5 in a CPU loop and had to kill it several
times after selecting files from the pick list. There is something
not quite right in there.

Thanks a LOT!
Kelly E Major

NewsArchive
07-06-2005, 01:24 AM
Kelly,

>>BTW, the "Auto Update Scan Wizard" automatically handles the above!
>
> There are not any docs yet for this. Can you describe exactly how it
> should properly be used? Does it compare the files in the original
> full installer to what is currently on your drive or do you keep a
> complete installed version of your software from the original install
> to compare to? I'll play with it and maybe I will be able to figure
> it out myself.

Let us assume, you have version 1.0, version 1.1 and version 1.2. I
would suggest to store the file/folder tree in an "archive" folder.

c:\archive\1.0
c:\archive\1.1
c:\archive\1.2

Create your new WebUpdate script (or create a template so you can always
re-use the same information).

To create your update from 1.0 to 1.2, start the Auto Update Scan
wizard.

Previous Version Folder:
c:\archive\1.0

New Version Folder:
c:\archive\1.2

I have a template for my SetupBuilder 5 Professional and Developer
Edition. When a new SB5 build is ready to distribute, I open my template,
the SB5 AutoUpdate wizard generates the script for me. I can now create
my WebUpdatee for both SB5 Pro and Dev in 3 minutes.

> One other issue, I've put SB5 in a CPU loop and had to kill it several
> times after selecting files from the pick list. There is something
> not quite right in there.

Is this with the new Pick project dialog? Do you know how to reproduce
this?

Thanks,
Friedrich

--
Friedrich Linder
CEO, Lindersoft
www.lindersoft.com
1.954.252.3910

"point. click. ship" - that's SetupBuilder 5