.Net installation progress bar

Got a problem you cannot solve? Try here.
Rene
Posts: 48
Joined: Thu Mar 02, 2006 12:06 am

.Net installation progress bar

Postby Rene » Tue Mar 07, 2006 1:58 am

Hi!

Just wanted to mention that it’s kind of frustrating to see the .Net installation taking forever in some computers and not have any *real* feed back about the installation progress such as the completion percentage.

Having an avi of the progress bar moving does not really give the user the feedback that the installation of .Net is going on, most people simply think that the installation is locked if it takes a long time.

I have a feeling that this is something that IA has no control over and that the only way to get the feedback is by running the Microsoft .Net installation file directly (dotnetfx.exe) so my question is. Is it possible to take the web media that was downloaded from my site and launch the dotnetfx.exe from there?

Thank you.

jimo
Posts: 342
Joined: Fri Aug 19, 2005 10:59 am
Location: Atlanta, GA
Contact:

Postby jimo » Tue Mar 07, 2006 8:30 am

Rene,

You are correct IA has now to get feedback from the .Net install that is why the product team at IA came up with "Marquee Mode" for the progress bar.

You can put the dotnetfx.exe in a web media block and run it from your installation, however I am unsure as to weather or not IA will wait for the program to end do to the fact that the dotnetfx.exe may be a self extracting file that call an installer. This is something you will have to test for yourself.

Rene
Posts: 48
Joined: Thu Mar 02, 2006 12:06 am

Postby Rene » Tue Mar 07, 2006 10:55 am

Thanks jimo,

Isn’t there something that IA could do to ease this problem, for example, I would assume that it would be easy to tell what .Net files are being installed and in what order, so couldn’t IA internally monitor a couple of files and provide feedback this way? For example, say that .Net installs the following files:

a.dll
b.dll
c.dll
d.dll
e.dll

Now, IA could monitor file “a.dll”, “c.dll” and “e.dll” so that every five seconds or so IA could search for say file “a.dll” if the file is already installed then completion so far is %20, then IA could move on to monitor file “c.dll”, once it finds the file its installed inside the directory then the progress will now be %60 etc.

Now I know that .Net 2 also probably sets some registry keys and stop and starts some services but I would think this is something that could also be tracked and provide feed back on it.

The reason why I am bringing this up is just because there are some computers where the .Net installation takes a loooooooong time and I am not kidding.

Also, could you tell me if we are responsible to show and handle the .Net EULA? I noticed that by default IA does not show it and I was under the impression that Microsoft requires the person installing the .Net to agree on the .Net agreement.

Thanks.

jimo
Posts: 342
Joined: Fri Aug 19, 2005 10:59 am
Location: Atlanta, GA
Contact:

Postby jimo » Tue Mar 07, 2006 2:47 pm

Rene,

As far as monitoring the installation via files on disk is a question for someone from IA, personally I think their solution of the Marquee Mode is very elegant and definately reusable from their point of view. With the Marquee Mode they do not have to try to decipher what files are being installed by every external installer that is called from inside an IA install package.


As far as displaying the EULA, don't have a clue, but I don't display it, in my packages that require .Net Framework I let IA do the work for me.

Rene
Posts: 48
Joined: Thu Mar 02, 2006 12:06 am

Postby Rene » Tue Mar 07, 2006 4:39 pm

Are you distributing the software to the general public or to your own or other companies you work for?

The reason why I am asking is because I am curious if you are distributing the software to the general public and had not had anybody send you an email questioning you why is the installing locking up when its really not.

This won’t be a problem if the distribution is done to a company employee as if they question this the you tell them what’s going on and that is it, the general public on the other hand, will simply not install your software period and you risk loosing a sale.

Yes, I agree that for the most part the marquee idea is a good one BUT, there are always exceptions to the rule and I think .Net is one of them and it should be handled separately.

And yes, I know I could write some code and do other things to achieve what I want but if IA could do this then it will set them apart even more from other companies. For example, InstallShiled dos the same marquee thing, if IA cold improve on it then how great would that be!

MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Postby MichaelNesmith » Tue Mar 07, 2006 5:37 pm

Hi Rene!

Interesting discussion here...

First, some clarification:

No other installation vendor today, and that includes InstallShield, supports marquee mode progress bars. In Windows XP and above, with or without themes, InstallAware setups allow the marquee mode to be used, which Windows itself uses to indicate that an operation is under way, without knowing the exact percentage remaining (ex: connecting to a wireless network).

In Windows 2000 and older operating systems, InstallAware displays a standard progress bar which increments at regular intervals, similar to InstallShield and other vendors. This is simply because a true marquee mode progress bar is not available in those environments, and we don't want to break compatibility with older platforms.

So on newer operating systems that support it, you get a nice progress indicator in true marquee mode, and on older operating systems, you get a regularly incremented status bar, all by setting a single global variable, and without losing any backwards compatibility. In the true InstallAware tradition, you get a lot of convenience without having to work for it, or pay for it in other kinds of sacrifices such as loss backwards compatibility.

Next, about your specific problem:

We have had no complaints from users regarding "hung" installers (either setup developers or their end-users). Additionally, we believe our prerequisite installer offers a consistent installation experience for all types of runtimes, wherein they all install inside a single prereq dialog, consistent with the rest of the setup user interface, without displaying potentially confusing and disparate interfaces that are used by each of the individual runtimes (and there are many of those). Add to this our superior compression levels, and the ability to have all these features with a single click of the check-box, we feel we have the ideal prereq installation solution.

However for various reasons I understand you are not comfortable with this default InstallAware solution. You have expressed discomfort at the better compression levels, download locations, the lack of a specific progress indicator, and concerns about displaying the native license agreement. Therefore, I believe the best thing for you to do is use the native installers, directly, instead of using the better compressed, and fully integrated runtime installers.

Because InstallAware believes our approach is optimal - both from an end-user and developer experience - we will not be publishing solutions for what we consider a to be a more confusing and costlier implementation. However, everything in InstallAware is fully customizable, and this is a wonderful opportunity to illustrate that.

What I recommend you do is:
1) Use the pre-built InstallAware plug-ins to check for the presence of .NET
2) Use the Download File plug-in to install the poorer-compressed .NET runtime directly from the Microsoft website
3) Use the Run Program command to directly execute, without hiding the window, the downloaded, native .NET installer
4) Ask Run Program to wait for program completion
5) Encapsulate your custom scripts in a new Application Runtime element, which you could call Microsoft .NET Framework 2.0 (Native)
Then in your future projects you could just check the Microsoft .NET Framework 2.0 (Native) item, and have an installer built to your exact specifications!

The beauty of InstallAware is that it lets you do all this, and more. You are not confined with what you get out-of-the-box but can fully customize everything and innovate. Please see the whitepaper:

http://www.installaware.com/installawar ... s_view.pdf

for step-by-step instructions on extending the Application Runtimes view (no custom programming whatsoever is needed, you can do everything in InstallAware script as described above and in the whitepaper).

And please - share your results with us, so other users who may feel similarly in the future can benefit from your efforts! Remember to post in the Plug-Ins forum. Thx!
Michael Nesmith
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/

Rene
Posts: 48
Joined: Thu Mar 02, 2006 12:06 am

Postby Rene » Tue Mar 07, 2006 9:22 pm

We have had no complaints from users regarding "hung" installers (either setup developers or their end-users).

I always wanted to be number one! :D

Additionally, we believe our prerequisite installer offers a consistent installation experience for all types of runtimes, wherein they all install inside a single prereq dialog, consistent with the rest of the setup user interface, without displaying potentially confusing and disparate interfaces that are used by each of the individual runtimes (and there are many of those).

I am not saying to change the consistency on the appearance! What’s wrong with adding a real progress bar to the .Net installation? Are you guys aware that the .Net 2 installation takes around 6 minutes to install on your average person computer.

Just last night I was with someone on the phone, this person told me that he had cancel the installation 2 times because it hung on him. I told him that it wasn’t lock and that it takes a long time to installed, he let the installation go and timed it and it took around 20 minutes to installed. Just think about it, would you not think that your computer is locked after 10 minutes of looking at the same screen? Normal people had no clue about what the .Net 2 is and how long it takes to install, all they see is nothing happening and then they cancel, as simple as that.


You have expressed discomfort at the better compression levels, download locations, the lack of a specific progress indicator, and concerns about displaying the native license agreement.


Now wait a minute here…. First of all, compression levels are awesome, my installation files went from 15 megs to 10 and form 36 to 30 megs!! How can’t I not be thrilled?? Yes I did question how come IA can do this and Microsoft can’t, that was an honest question that I think other people may have. I also don’t have a problem with the web media download locations, I found out that we have plenty of bandwidth and we don’t have to worry about people downloading the media from our site, I was just suggesting to have a server where people can point their installs to download the *standard* web medial files (eg .Net, MSI engines etc), what’s wrong with that suggestion?? And about the license agreement issue…. Well I could not careless about displaying the .Net EULA, why would I?? heck if I could get away with it I wouldn’t even display our own license agreement simply because nobody reads that stuff, I was just asking a fair question, I was under the impression that Microsoft requires you to show it and have the user agree on it, I was just wondering if IA knew something I didn’t know, what’s wrong with that??

FINALLY, yes I still stand strong about the progress bar with the .Net, why pretend that it’s not an issue when it is? Seriously, what’s wrong with adding a real progress bar to the .Net install?? Just because marquee is the simplest way to go, it does not mean that is the best way to go.

Because InstallAware believes our approach is optimal - both from an end-user and developer experience - we will not be publishing solutions for what we consider a to be a more confusing and costlier implementation.

Costlier yes, confusing no, why would having a progress bar that shows a % be more confusing? I don't agree. This is not the IA philosophy of striving for the best of the best. Shame on you Mike!! :D

Yes, I know that I can customize my solution but I still like the idea of clicking on check box and getting it over with and I also like to have the consistency of the same form when installing the prerequisite.

My advice would be to bring a couple of average people down to the test lab and ask then to install an app with .Net (on an average computer) and see how they react, I can guaranty you that most people will think the installation file is locked.

Thank you…. Oh yea, I am not complaining, I am just suggesting, just trying to help.

Rene
Posts: 48
Joined: Thu Mar 02, 2006 12:06 am

Postby Rene » Thu Mar 09, 2006 11:00 pm

Michael, as you already know, I would like to change the default IA setup behaviors of showing a marquee style dialog while installing the .Net 2, to popping up the Microsoft .Net 2 installation packages so that I can get a real progress bar.

My problem right now is that want to change the minimum amount of code to accomplish this. After looking around, I was wondering if there is something I could do to only change the setupnet20 script, specifically the line:

Check/Install .Net Framework (install v2.0, get result into variable DOTNET2.0)

Isn’t there something that I can change there so that instead of installing the .Net silently and watching the marquee dialog y can run the Microsoft .Net setup file?

I am saying this because I want to keep the nicely compress web media containing the .Net 2. So isn’t there a way to use the downloaded web media file to run the Microsoft .Net installation setup? Isn’t the web media file the dotnetfx.exe file recompressed?

Please help, we have already received our 3rd email from people wondering why the installation file is stuck. I think the long delay for installing the .Net is because people have antivirus and spy-ware software (maybe even spy-ware) already installed on their computer slowing it enough that the .Net installation takes over 20 minutes.

Thanks.

Rene
Posts: 48
Joined: Thu Mar 02, 2006 12:06 am

Postby Rene » Thu Mar 09, 2006 11:51 pm

OK, I just looked under the downloaded web media block “Microsoft .NET Framework 2.0.7zip” file and it appears that that file has a folder called “mDotNet.dll” and inside that folder there is a file called “install.exe” that appears to launch the standard Microsoft .Net installation setup.

Can I just make a “Run Program” call to that file instead of the Check/Install .Net Framework (install v2.0, get result into variable DOTNET2.0) call?

Gizm0
Posts: 339
Joined: Wed Nov 09, 2005 8:47 pm

Postby Gizm0 » Fri Mar 10, 2006 10:44 am

Yes, you can do it.. It will popup the .Net 2.0 Installer that way.
Panagiotis Kefalidis
Software Design Team Lead
\"In order to succeed, your desire for success should be greater than your fear of failure\"
InstallAware Software Corporation

Rene
Posts: 48
Joined: Thu Mar 02, 2006 12:06 am

Postby Rene » Fri Mar 10, 2006 11:34 am

Could you tell me what is the predefined variable that I can use to get the path were the .Net files are?

My problem right now is that I think the three different build have the .Net files in different folders and I am hoping there is a predefined variable that the "Run Program" command can use to resolve this problem.

Also, Michael said in a previous post to "Ask Run Program to wait for program completion", do you know how do you do that?

Thanks

MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Postby MichaelNesmith » Fri Mar 10, 2006 12:50 pm

Rene

There is no pre-defined variable. In fact if you take out the plug-in line that installs .NET, you will lose the files altogether. The proper way would be to use the Bundle Files plug-in - this is available freely on the Plug-Ins section of this forum.
Michael Nesmith

InstallAware

Home of The Next Generation MSI Installer

Get your free copy today - http://www.installaware.com/

Rene
Posts: 48
Joined: Thu Mar 02, 2006 12:06 am

Postby Rene » Fri Mar 10, 2006 2:50 pm

Michael,

This is turning out to be a nightmare, and although I am sure that what I want o accomplish is easy to do I am so pressured with time right now that it makes this task a living hell.

I guess I am going to have to put up with the default IA behavior for now since I don’t have the time and probably the money to pay someone to program the script to do what I need it to do. I will probably continue to play around with this during some free time and see if I can make sense out of this later.

I think this will be my last post (at least on this thread) but before I let go I will like to say………..Marquee style does NOT work for long installation files and you guys can tell yourself thousand times that it works a but it does not. No matter what you guys want to believe you CAN’T possible tell me that a static dialog is better than a dialog with a real installing progress feedback, you will simply be kidding yourself if you said that. Please sit down on your desk for a second and ask yourself if you honestly believe that the Microsoft .Net installer is sooooooooooo difficult to use and so horrid that you rather stare at a pointless dialog for 20 minutes when YOU know yourselve that even if the .Net would get really locked the dumb dialog will still show the progress bar moving! Come one!!! Sheeesh.

That’s the WHOLE idea about the installer that it gives you that feedback and it makes it helpful. If feedback was useless why bother adding it to other dialogs?

So what’s the right thing to do? Well I am glad you asked. My suggestion will be to do what InstallShield does. Yep, believe or not the InstallShield behavior is definitely better that IA when it comes to the .Net installation.

I was using InstallShield 11.5 Express before I made the right move and changed to IA and I can tell you for sure that InstallShield does have a property that allows you to specify weather you want the .Net installation to happen via Marquee mode or to launch out the Microsoft .Net instillation file.

InstallShield may suck in many ways, but they got it RIGHT this time. They are given me the OPTION to use marquee or the Microsoft installer with the change of a simple property. I appreciate that feature and I think many other user would too.

I will suggest to add a checkbox to the .Net plug in (preferably all of the runtime prerequisites) to allows us to be able to select to use marquee or Microsoft install file. I don’t give a rats butt if the .Net installation process it’s no consistent with other requisites installations process, I rather have the inconsistencies that have user canceling my installation file and possible loose a sale. Why not just launch the Microsoft .Net installation file on top of the marquee dialog, big deal!!

Please take this advice to heart, people can still have the marquee mode for corporate installs for example but let us EASILY change this behavior to launch the Microsoft .Net installer for normal people that are NOT (yes you read correct), they are NOT going to wait 10 to 20 minutes without any feed back, they are NOT, NOT, NOT, NOOOOOOOOT.

Other than that, IA is simple the most magnificent packaging tool I have ever use. And please don’t miss understand the way I am expressing myself, I am not trying to be a donkeys butt here, I am honestly trying to make IA better, if fact every time I get a chance, I tell people about your products because I believe in you guys.

Thanks for reading.

MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Postby MichaelNesmith » Wed Apr 05, 2006 8:00 pm

Hi Rene!

Some good news which I think will make you happy.
The team has found a way to capture native installation progress from .NET and JSharp installation packages. These will be available in an upcoming update.
Just wanted to share the good news!
Michael Nesmith

InstallAware

Home of The Next Generation MSI Installer

Get your free copy today - http://www.installaware.com/

MarkRichards
Posts: 47
Joined: Tue Apr 18, 2006 8:39 am

Postby MarkRichards » Tue Jun 13, 2006 10:48 am

Is this present in the v6 release of InstallAware?


Return to “Technical Support”

Who is online

Users browsing this forum: Google [Bot] and 36 guests