.NET: Do you Deploy a Managed App?


This post has moved here.

Comments (30)

  1. Peter Marcu has posted a survey on his blog that I wanted to link to here in order to try to help him

  2. Nick says:

    -> Yes.  I started off with dummy VS2005 installer projects, and then I would delete the .msi I would get, and replace it with the real .msi generated by WiX.  Today, I use Bootstrapper Manifest Generator.

    -> No.  Why waste their time when I can include it on the CD.

    -> Recent official releases are about 300MB up to one whole CD.  Unofficial versions go as small as 20MB.

    ->CD if it fits, DVD otherwise.

    ->Kinda big, but oh well.  I’m trying to migrate from 2.0 to 3.5 because at least I will have one less thing (J# runtime, I use it for the .ZIP capabilities) to deploy.

    ->Never heard of it.

    ->I like that the .NET folks are going towards integration.  One executable does it all.

    ->There’s still too many pieces, if you look at Visual Studio as a whole (think C++ runtime, etc.)  I also don’t like that you need to install VS Std. to be able to build the bootstrapper.

    ->I’m not sure if this counts, since it’s more of a vcrt issue…but this was a really big one ~> http://forums.microsoft.com/Forums/ShowPost.aspx?PostID=1190875&SiteID=1

  3. Pavels says:

    -> Of course.  VS2008 installer project is okey.

    -> Yes, for small applications that are distributed by web, but mostly use msi package.

    -> From 5MB to 410MB.

    ->Web or CD.

    ->Well it’s big, i wish we had some version of .NET that is aimed only for a customer.

    ->Never heard of it.

    ->Well i like that it has one executable, it easy to use on windows machine, but i wish that Microsoft started helping Mono-project and support .NET on Linux.(.NET must be everywhere, like JAVA)

    ->Mmm… a process that start compiling assemblies after .NET install. Sometimes it takes to long to compile all assemblies(it waits while computer is idle and user doesn’t use it).Do you often leave your Notebook idle?

  4. Un questionario sulla distribuzione delle applicazioni .NET

  5. DavideB says:

    -> Yes, clickonce bootstrapper for the prerequistes.

    -> No, .Net framework gets installed with the prerequisites.

    -> My two applications are 20 MB large each.

    -> Web, with ClickOnce.

    -> It is big and at version 3.5 SP1 there are situations when a reboot is requested by .Net Framework installation. A nightmare scenario for the deployment of a smart client

    -> Yes, we will test Client Profile soon.

    -> The fact it is a single executable that the user can, under critical conditions and if Clickonce bootstrapper fails, directly install.

    -> The recent and non recent problems regarding ClickOnce (certificate expiration, missing pieces in VS 2008 SP1, reboot in few scenarios)

    -> We used ClickOnce for a long time and experienced several problems, minor and major. It would be really great to discuss it, will you be at PDC’08?

  6. My colleague Peter Marcu , who is leading the development effort on the new deployment experience for

  7. SC says:

    1) Do you have a bootstrapper/chainer that preinstalls .NET? If so, which one (VSI, InstallShield, Wise, ClickOnce, custom)?

    We used the ClickOnce bootstrapper due to time constraints. However, we found it fairly limiting in terms of user experience – it’s fairly "geeky" in terms of messages that are shown to the end user. I’d rather not bootstrap at all – MSI should allow us to install the framework with our app. If it doesn’t the setup technologies have failed us. I don’t want to support additional custom apps, wrappers, transactions, etc for a small app.

    2) Do you block and point your user to the location to download and install .NET?

    No. We don’t trust the download process. Urls may change and it adds a lot of complexity and things that can go wrong.

    3) How large is your application?

    300 MB.

    4) How is your product deployed (Web download, CD, DVD, USB)?

    80mm mini-CD, web download, and MSP patches.

    5) What do you think about the size of the .NET package?

    It took a LOT of convincing to deploy .NET 3.0 on our CDs. Management was NOT happy when they heard the majority of our disk space was going to the .NET Framework. They said things like "Why is this needed? Why are we using this technology? What was Microsoft thinking?", etc. They were very painful meetings for the development team.

    6) Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    Yes. It won’t help us, since we don’t want a dependency on .NET 3.5. The .net 2 and 3 versions are more widely deployed. We need to support existing installations via patches, which means we’re locked into .net 3 at maximum forever (unless we force users to download 3.5 during the patch process!)

    We had a lot of problems migrating to Visual Studio 2005 because Web Application Projects were removed in the original release. Management is reluctant to migrate to 2008 yet because they are worried it will cause more problems.

    7) What do you like about the .NET Framework Redist?

    There’s nothing I *like*, but I don’t hate it all. Most of it is transparent and I don’t think about it – which is the way it should be.

    8) What do you dislike about the .NET Framework Redist?

    I can’t install it as part of my MSI’s installation. It requires bootstrappers and other "kludges" to work around this limitation. It’s massive. Installation time takes way too long – many users think our installation is broken and reboot their computers halfway through the .net install! That’s even with the progress bar showing!

    9) Do you have any specific problems you can tell me about that you have had in deploying the .NET Framework?

    I hate bootstrappers, I hate bootstrappers, I hate bootstrappers. I can’t repeat this enough.

    I HATE BOOTSTRAPPERS. It’s a kludge that Microsoft has forced onto us because merge modules were a failure. A setup technology should not require ANOTHER setup technology to work! I don’t care if transactions, external UIs, and other things are added – it only increases the code surface and makes the installer the most complex piece of code in the entire application. MSI needs to do this internally without kludges or external workarounds. Dependencies should not be a massive pain! They must be transparent to both the user and the installation developer! </rant>

    🙂

  8. Also, I really wish I could deploy ONLY the .NET dll’s that my application depends on. Let’s say I can get this with a merge module — that would be awesome. As part of the merge module’s installation it would set a flag to tell Auto-Update to get the rest of the framework.

  9. 1. No. We currently install .NET manually on each workstation.

    2. Our intranet install page links to the .NET redistributable but is mostly useless as users will never have admin privileges on their workstations.

    3. Approximately 200mb consisting of a suite of applications.

    4. Our product is deployed via ClickOnce from an internal IIS server at each of our 13 production sites.

    5. As long as the entire .NET framework for all platforms continues to fit on a CD, I’m happy.

    6. I’m aware of the smaller .NET package but within an intranet scenario size is the least concern.

    7. I like that the redist includes x86 and x64 versions and all prerequisites.

    8. I dislike the scenario for group policy based deployment of the .NET framework.

    9. As per Q8, extracting the .NET 3.5 redist and configuring multiple .MSIs in the right order in group policy at 13 sites is a pain. Can the redist package just be a single .MSI ready for group policy deployment?

  10. q) Do you have a bootstrapper/chainer that preinstalls .NET?

    a) Yes and No

    q) If so, which one (VSI, InstallShield, Wise, ClickOnce, custom)?

    a) VSI, InstallShield and manually

    q) Do you block and point your user to the location to download and install .NET?

    a) No. It’s an IT pre-installation.

    q) How large is your application?

    a) back-end: 13 Mb, front-end: 55 Mb

    q) How is your product deployed (Web download, CD, DVD, USB)?

    a) CD, USB

    q) What do you think about the size of the .NET package?

    a) Arghhhhhhhhhhh

    q) Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    a) Yes, I know, but my application is .Net 2.0

    q) Do you have any specific problems you can tell me about that you have had in deploying the .NET Framework?

    a) No problem occurred in last 5 years

  11. Ido Ran says:

    1. ClickOnce

    2. Don’t understand.

    3.Small, currently.

    4. Web download (ClickOnce).

    5. Fine

    6. Yes, Not sure, it’s not that clear with ClickOnce.

    7. Small setup, download the rest that needed.

    8. Can be smaller.

    9. My application is built according to CAL guide – meaning I have an executable project which DO NOT have reference to other modules (DLLs) instead they are dynamically loaded. The ClickOnce deploy tool inside Visual Studio does not support this kind of deployment style so I have to use 3rd-party tools like ManifestManagerUtlity to alter the .manifest file after the deployment is created.

    I will be very happy if you can create a ClickOnceDeploymentProject like WebDeploymentProject in which I could point to all the modules I would like to have in my ClickOnce deployment and create a single package in one step.

    Ido.

  12. Brian says:

    Thanks for asking for input!  Here’s mine:

    1. We use InstallShield

    2. No, our customers are using XP embedded in custom hardware we provide that is not necessarily connected to the Internet, so we must include the .NET framework redist in our install package.

    3. About 200 MB

    4. Web download

    5. Previous versions of the framework were just fine, but the .NET 3.5 framework redist makes our releases enormous for our customers to download, especially since they only need part of it (the x86 parts).  This has delayed our adoption of .NET 3.5.  Having separate downloads for each architecture (as well as a bundled one for those that want it) would be a big help.

    6. If you’re referring to the client profile, we looked at that and it’s not helpful, since our products already have previous versions of .NET installed on their systems and the client profile is intended only for systems that don’t have any .NET framework installed (http://blogs.windowsclient.net/trickster92/archive/2008/05/21/introducing-the-net-framework-client-profile.aspx, "As is illustrated in the preceding table, the Client Profile deployment is focused on Windows XP SP2+ with No Framework components installed.").

    7. Installation can be automated, seems to be reliable.

    8. Its size.

  13. micha says:

    -> IS2009 bootstrapper

    -> No, we have an all-inclusive-package

    -> 10 MB of our components, 120 MB of prerequisits (.NET and other stuff)

    -> One single self-extracting file via web download

    -> Too big and the installation process is not fast enough for users

    -> will test it soon

    -> One single file with silent installation option

    -> Too big, installation too slow

    -> No, nothing

  14. Brian says:

    1) We have an InstallShield Bootstrapper to install the framework

    2) We don’t block, redist is on our disk

    3) 35GB – mostly data but the custom install software to manage that data is written in .NET

    4) multiple dual layer dvds

    5) Size of the .NET package is neglible to us

    6) Didn’t know about the small package for .NET 3.5, currently we use only 2.0.

    7) I like the fact that it installs .NET!

    8) I wish the .NET redist would include gacutil.exe (and perhaps other SDK utils).  This would help internally to debug QA test machines that have gone wrong, although I’ll admit never needing this util on a remote customers machine.

  15. Tobias says:

    Q) Do you have a bootstrapper/chainer that preinstalls .NET? If so, which one (VSI, InstallShield, Wise, ClickOnce, custom)?

    A) Installshield: Even we have the possiblility to use the bootstrapper we integrate the .NET Frameworks in the UI sequence of the windows installer. Reason is the user experience: Our customers must see what happens when installing a framework. Otherwise they might have the stupid idea and try to interrupt the bootstrapper installation e.g. of .NET FW 3.5 and afterwards have a corrupt system.

    Q) Do you block and point your user to the location to download and install .NET?

    A) No. Our customers get a full "all in one" installation

    with all necessary stuff for running our applications

    . Even Installers for MS SQL DBs are integrated in the UI sequence.

    Q) How large is your application?

    A) Between some MB and several GB for a DB based application

    Q) How is your product deployed (Web download, CD, DVD, USB)?

    A) CD, DVD and web download

    Q) What do you think about the size of the .NET package?

    A) Is this a serious question ??? Tooo big

    Q) Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    A) We support our customers on offline systems so we do not want our installers to connect to the internet and download additional components. This is a de facto NO GO!

    Q) What do you like about the .NET Framework Redist?

    A) It installs the .NET Framework

    Q) What do you dislike about the .NET Framework Redist?

    A) Too big and slow installation

    Q) Do you have any specific problems you can tell me about that you have had in deploying the .NET Framework?

    A) There are no SP1 versions of .NET Framework 2.0 and 3.0 for Windows Vista (without SP!) available. So in this case the only way to deploy these frameworks (and also the possibly necessary hotfixes) by installing the Windows Vista SP1 or the .NET Framework 3.5 (SP1)! We had this problem even if we only needed one hotfix of maybe 10 MB due there was no tested version for Vista available. Thats annoying!

  16. denny says:

    this survey might be a *LOT* better if it was done with a survey form on a web site. I can’t even see the questions down here….

    I have a bunch of apps,

    3 click Once desktop apps.

    2 Smart CLient cab file packages

    about 6-7 web apps plus web services that connect the desktop and smart clients to the backends.

    and soon I expect to have more going on.

    ClickOnce is sweet most of the time, we do a web page for internal users to grab the app via https downloads.

    I wish I had a smart device clickonce ! updating Handhelds running CE is a real PIA

    I have about 50 in use with our apps.

    CLickOnce desktops — about 60-70

    some systems have been running since Oct 2005

    check our web site if you want more detailed feedback.

  17. Tony Juricic says:

    53 MB Web-based MSI install that includes few .NET components that require Framework 3.5 as the prerequisite because components use WCF.

    Problem: installation of 3.5 Framework is taking too much time on both XP machines that have Framework 2.0 already installed and on Vista machines that come with 3.0 pre-installed.

    It is a shock for users who were used (until now) to no more than 15 minutes total for download and installation of our package. It is hard to justify more than 1 hour of total download and install time just because we added few WCF-based components to the install package.

    There is some hope with Client Framework for 3.5 SP1 but it, unfortunately, applies only to the case of XP machine with no Framework installed whatsoever.

    Finally, even in the case of Client Framework we need to customize UI since users may be shocked upon seeing Microsoft .NET EULA window as the first thing when they start to install their trusted software, and being until now blissfully ignorant about whether it used Microsoft .NET technology or no.

  18. Chris says:

    1. Do you have a bootstrapper/chainer that preinstalls .NET? If so, which one (VSI, InstallShield, Wise, ClickOnce, custom)?

    a. MSI

    2. Do you block and point your user to the location to download and install .NET?

    a. No, we alert inside setup and install from a intranet server

    3. How large is your application?

    a. 300MB

    4. How is your product deployed (Web download, CD, DVD, USB)?

    a. Web Download

    5. What do you think about the size of the .NET package?

    a. Average.  It seems the package shrinks and grows depending on the bits included.

    b. It would be nice if it was smaller, say compressed.

    6. Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    a. Yes, no we are in the process of examining it

    7. What do you like about the .NET Framework Redist?

    a. That we can deploy it via our corporate intranet

    8. What do you dislike about the .NET Framework Redist?

    a. The large download is cached by our proxy server and we’ve had setups fail waiting for it to be cashed during peak times when bandwidth is at a premium

    9. Do you have any specific problems you can tell me about that you have had in deploying the .NET Framework?

    a. As per Q8, if net traffic is high, the installer can fail waiting for the proxy server to cache

  19. Sven says:

    Do you have a bootstrapper/chainer that preinstalls .NET? If so, which one (VSI, InstallShield, Wise, ClickOnce, custom)?

    > No

    Do you block and point your user to the location to download and install .NET?

    > Link on my website to MS download site

    How large is your application?

    > about 15 MB

    How is your product deployed (Web download, CD, DVD, USB)?

    > Web

    What do you think about the size of the .NET package?

    > Gets larger and larger

    Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    > Yes, I know about it, but I don’t use it

    What do you like about the .NET Framework Redist?

    > It does what it need to do

    What do you dislike about the .NET Framework Redist?

    > Bad installer experience for end users. The GUI of the installer is not standard conform and looks very ugly, every other MS installer looks nicer. The almost square form is ugly. Please redesign the GUI of the installer!

    Do you have any specific problems you can tell me about that you have had in deploying the .NET Framework?

    > No problems, so far

  20. germ says:

    Do you have a bootstrapper/chainer that preinstalls .NET? …?

    > yes, custom + "Microsoft Component Installer 2.0"

    Do you block and point your user to the location to download and install .NET?

    > NO

    How large is your application?

    > about 150 MB (services, UI apps, DLLs)

    How is your product deployed (Web download, CD, DVD, USB)?

    > currently CD (with .NET 2.0), next DVD.

    What do you think about the size of the .NET package?

    > Shoking about .NET 3.5 (over)size. After evaluation i froze 3.5 development, use .NET 2.0 only.

    Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    > Yes, but i need downloadless installation. Industry (Process automation) customers/admins kill me for "download redist".

    What do you like about the .NET Framework Redist?

    > Why sooo big ??? .NET 2.0 support Win2K/XP/2003 (22MB). NET 3.5 without Win2K support break 300 MB !!! Crazy.

    What do you dislike about the .NET Framework Redist?

    > Very bad installer experience. Instable!

    Do you have any specific problems you can tell me about that you have had in deploying the .NET Framework?

    > First systematic test with 4 identical installed WinXP computer (same hardware&software, only MS software installed). 2xsuccess, 2xfail.

    > Unsystematic test: 25% setup problem.

    > !!! Nightmare for (my) support stuff !!!

    P.S: I wish "Microsoft Component Installer 3.0" with NET3.0, NET3.5, SQL2K8Expr support. Freshly "WebPlatformInstaller_x86/x64" is nice but only web-redist oriented and not customizable.

    "Microsoft Component Installer 2.0" is stable enough for web and desktop redist + easy customizable for all.

  21. Simon says:

    Q1) Do you have a bootstrapper/chainer that preinstalls .NET? If so, which one (VSI, InstallShield, Wise, ClickOnce, custom)?

    We use Inno Setup to deploy our files first, then do prerequisites second and configuration of startup services third or after a reboot if it’s required.  We also have an entire set of recovery steps if .NET fails to upgrade/install.  Inno setup also deploys updates to windows installer and has to run things like crystal reports after .NET.

    We tried MSI (and several based on it) but it meant we had to use bootstrappers to install .NET first to run custom code.  Then we hit problems with .NET installing and we couldn’t counter them in the install.

    Inno setup also gets the award for being the fastest installer during our tests.  Not that it helps as it ends up spending all its time sitting at the "Installing .NET…" step.

    Q2) Do you block and point your user to the location to download and install .NET?

    No, we have to install our product in the real world where some sites don’t have internet connections, have it filtered or are still physical building sites with a server room and not much else.

    Plus if you block your install you end up with irate customers who call your support line and cost you money or engineers that are being held up on site.

    We currently block on Windows 2000 pre SP4 and that results in a lot of calls still.

    Q3) How large is your application?

    20MB-100MB depending on chosen features.  Not including prerequisites or third party things.

    The most popular install configuration by our engineers is the one that only needs .NET 2, then they re-run and add the extra feature after getting the system up and running but skip the .NET update and tell the IT people on site to do windows update and get .NET 3.5 if anyone on site needs to use the WCF services.

    Q4) How is your product deployed (Web download, CD, DVD, USB)?

    FTP, HTTP, CD, DVD or USB.  Most commonly installed from USB key.

    We do a few remote installs for our clientbase and that are usually pulled from a webserver whilst our guys remote in.

    Q5) What do you think about the size of the .NET package?

    Insane, ludicrous and grossly silly on the .NET setup teams part.

    Most of the x64 and ia64 distributions are simply a duplicate of the 32bit files (they are platform independent assemblies for goodness sake!).

    The upgrade path on Vista is terrible and totally seperate (from .NET in general, not from the OS) even though it’s again the same files in a seperate package.

    Q6) Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    Lack of internet connections precludes this…  It also leaves out bits you probably want to use like Linq.

    Q7) What do you like about the .NET Framework Redist?

    Nothing really.  I like the framework a lot but the install is terrible.

    I guess I have to grant that it supports a wide range of platforms, but we have not yet had to install on an ia64 system for example.

    AMD64 systems with 64GB of RAM, but not ia64…

    Q8) What do you dislike about the .NET Framework Redist?

    The size, duplicity internally, the ridiculous amount of time it takes to install when it’s just copying files and some simple registry settings (we’ve too have had people reboot in the middle thinking it has crashed).

    You should take all the raw required files and settings needed and optimise for the fastest install, then go back and make it safe.

    That means you need to make the install compress out duplicate files 100%, don’t even include old files you are going to upgrade in 5 minutes time (at the moment it installs 2, then installs 3 and replaces some of 2’s files, then 3.5 replaces some of 2’s files), STOP logging to disk everything you do whilst you do it and switch to keeping it in memory till you need to write it to disk because of a failure, skip the whole ‘extracting a tree of files so we can copy them around the local disk slowly’ and instead just read them from the source EXE/MSI in their compressed form then decompress them in memory and write them reducing disk access, etc.  It really spends ages just making the hard disk thrash at the moment.

    It doesn’t install the C++ runtime either which it should really.

    Q9) Do you have any specific problems you can tell me about that you have had in deploying the .NET Framework?

    We’ve had WMI failures blocking installs and upgrades, .NET service packs failing to install but looking OK, vista stuck in a loop installing it till it gives up, vista unable to lock files, pre-requisite failures, NGEN making computers too slow to use even though it’s supposedly only running when idle and NGEN filling eventlogs with errors over and over again after setup.

    At least 10% of all our support calls deal with .NET.  Admittedly several stupid companies (Sage UK Limited being just one of these) policies of ‘troubleshooting’ .NET by telling people to uninstall it, delete the GAC and reinstall .NET are part of that which aren’t your fault at all.

  22. We’re currently deploying a C++ application with a .NET API. The .NET API targets .NET Framework 2.0. For backward compatibility we will be requiring the .NET 2.0 framework in the future.

    > Do you have a bootstrapper/chainer that preinstalls .NET? If so, which one (VSI, InstallShield, Wise, ClickOnce, custom)?

    Yes. Wise. The only reason for this is to deploy .NET. We can do everything else from MSI (and wish we could for .NET framework, too). Our next version of software will actually use the .NET framework (instead of just expising .NET APIs) so we’ll need to ensure it installs on target machines.

    > Do you block and point your user to the location to download and install .NET?

    The existing product doesn’t block. It installs without complaint, then asks the user to download and install the framework if they try to use a .NET feature.

    The next version of our software will need .NET out of the box, so we’ll be stuck fighting to deploy it.

    > How large is your application?

    CD distro is about 400MB not including .NET.

    > How is your product deployed (Web download, CD, DVD, USB)?

    Web and CD. We have plenty of customers without internet access, so we need everything on te CD distro.

    > What do you think about the size of the .NET package?

    .NET 2.0 is managable. We’ve stayed away from anything newer because it didn’t add anything we need.

    > Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    Nope.

    > What do you like about the .NET Framework Redist?

    It seems to work correctly all the time. We’ve had no customer issues getting the framework installed.

    > What do you dislike about the .NET Framework Redist?

    We wish we could deploy the redist from within our MSI. Boostrappers are a royal pain. I am totally shocked that Microsoft’s MSI technology is terrible at handling both dependencies and globalized installation.

    In an ideal world, we’d have one MSI that would do the following:

    a) Install prereqs (.NET, MFC 8, CRT)

    b) Install files with localized names in both Czech and Chinese from a single Unicode/UTF-8 installer.

    c) Uninstall properly without garbage in the uninstall dialog (we use UTF-8 encoded installers now to achieve (b) but get gargage on uninstall because "UTF-8 encoded MSI is not supported by Microsoft".

    Gee, it sure is handy that our corporate customers who need bulletproof deployment via Group Policy or SMS have it so easy. Right now they have to schedule separate installs of each prereq and then our app. Why? Because Microsoft has made it impossible to use their deployment effectively.

  23. Marais van Zyl says:

    Do you have a bootstrapper/chainer that preinstalls .NET? If so, which one (VSI, InstallShield, Wise, ClickOnce, custom)?

    Using WIX as installer so using the .Net Bootstrapper as explained in the WIX documentation.

    How large is your application?

    Smaller than the .Net framework

    How is your product deployed (Web download, CD, DVD, USB)?

    User will be able to download from the web but would also be making a CD available at some point.

    What do you think about the size of the .NET package?

    Is a bit big but the smaller redist of .Net 3.5 migh make a diffirence, will try that at a stage.

    Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    Know about it, but haven’t started to use it as I haven’t migrated to .Net 3.5 yet.

    What do you like about the .NET Framework Redist?

    Easy to inlcude into my setup package.

    Do you have any specific problems you can tell me about that you have had in deploying the .NET Framework?

    Haven’t encountered any real problems yet.

  24. Jethro says:

    .NET Framework is too big now, should be devided by function:

    1. Wcf package. (WCF is the most important component for internet application, even it can be devided into more small package — http,tcp and so on)

    2. WindowsForm package.

    3. WPF package

    Maybe should learn some thinking from Java. Get the necessary class only.

    I think microsoft should pay more attention to the struct of .net Framework. there are many many similar classes and structures. these classes should be rewrite and rearrange to reduce the size– use generic as more as possible (the base is to improve the poor generic in c#, should combine the flexiblity of C++ template and the simplity of C# generic)

  25. Ross says:

    I’m a network admin who deploys many apps, some now requiring .NET 3.5.

    We roll out everything with group policy which mainly works fine, but with .NET 3.5 we’re finding that although it appears to deploy ok, deploying it this way can cause applications to break.  The fix so far is to manually install .NET 3.5 locally.  There’s no visible difference in the control panel, exactly the same applications are installed after doing it manually, but programs now run.

    I’m still troubleshooting this to try to find the cause, but my comment for Microsoft would be to pick a software deployment technology and stick to it.  MSI deployment via group policy is superb in corporate environments.  WSUS is a good alternative, but it’s still a pain having two separate ways to roll out software.

    Having some programs deploy one way, others another, and still more software that you can’t deploy with either is just a nightmare.

    You also need to get things like DirectX fixed since that is an absolute nightmare to roll out in a corporate environment (and is now required by software like AutoCAD).

    .NET is a great idea, but it’s got to be easy to install, both for end users and for corporates.  Site wide installation cannot be an afterthought like it appears to be with .NET 3.5.

  26. SK says:

    We abandoned the idea of migrating our application to framework 3.5 (temporarily) because in various scenarios the vs.net bootstrapper takes a huge amount of time to install… there is no screen feedback and user thinks that the machine has hanged!

    We tried with client profile but it it did not work…. because most of our clients already has .net 2.0 installed, it installs the full package!

  27. Joe says:

    1. No.

    2. No, it varies too much (needs a short and stable url).

    3. About 3MB.

    4. Web download.

    5. I think the size is fine.

    6. Yes.  No.

    7. It’s all together and it’s point-and-click.

    8. Nothing.

    9. No.

  28. JH says:

    1. Do you have a bootstrapper/chainer that preinstalls .NET?

    Yes, Wise script

    2. Do you block and point your user to the location to download and install .NET?

    No, this would not be an acceptable solution.

    3. How large is your application?

    600MB including all runtimes and applications

    4. How is your product deployed (Web download, CD, DVD, USB)?

    CD

    5. What do you think about the size of the .NET package?

    Quite big

    6. Do you know about the small package for .NET 3.5 that will download only what your user need? If so, do you use it?

    We have to assume that our customers do not always have Internet access.

    7. What do you like about the .NET Framework Redist?

    Quite simple installation

    8. What do you dislike about the .NET Framework Redist?

    There is a delay when installing if there is no Internet connection available (test was done on an Intranet). The reboot is also annoying, but it is required before installing SQL Express 2008.

  29. blainekw says:

    1. Not yet.  We work very hard to get pre-requisites in place ahead of our applications specifically to avoid this.

    2. No – The installation should be complete and never require user interventtion. We apply updates overnight.

    3. We have approx 7 apps from 4 – 80 mb. 2 are services, 1 is IIS, the rest are desktop apps.

    4. Our deployment runs from server, CD, DVD or USB.  We built it to work all three ways.  Most common is from server.

    5. It’s OK but we apply it before the app to save time.  

    6. Not in our plan. We put the big install on the source server and install through our WAN rather than calling across the internet.

    7. NA

    8. In our world, it works.

    9. NA

    10 Nope

  30. Djanel Walser says:

    Hate the large size of the .Net35 SP1 – I have hundreds of remote sites that have to download and install this.  I only need it for x86 XP..why bundle everything into one executable.  Talk about putting your eggs into one basket!