ClickOnce Installs fail, ADODB 7.0.3300 required?!

While trying to use the new ClickOnce in 2.0 (RTM), the installs fails on the majority of machines.  I receive the error that says. 

"Unable to install or run the application.   The application requies the assembly ADODB 7.0.3300 to be installed in the Global Assembly Cache (GAC) first."

The only 2 depenencies that this app requires is the .NET Framework 2.0 and the report viewer pack.  I believe it the report viewer pack is causing the problem.  Any ideas or suggestions on this problem   If I can't use apps that use the new reporting controls then clickonce is basically worthless for the majority of applications.  It seems like nearly every app needs a report these days.  I have tested this on a clean install of XP SP2 w/all windows updates the error always occurs.  Any suggestions would be appreciated.




Answer this question

ClickOnce Installs fail, ADODB 7.0.3300 required?!

  • SteveHello1234

    I met this problem as well even though I execluded ADODB.dll from the Application files list.


  • RodRav

    Thanks!  I'll look into my manifest and see what happens.  All I know is removing the ReportViewer references fixed the problem.  I believe the references are Microsoft.ReportViewer.Core and Microsoft.ReportViewer.Winforms.  Thanks



  • HDH

    Thanks Jon, that did indeed fix the problem (and ReportViewer still works also)

    brian


  • JanSchreuder

    I think I'm going to move this question over to the reporting controls forum.  It makes more sense for it to be there I think.

  • praveen_josh

    Jon,

    Not tried this, but have you tried adding Microsoft Data Access components 2.8 as a prerequisite for the application also

    Cheers,

    Plip.


  • straylight

    Okay.  I've checked my manifest it indeed does include the ADODB assembly as a dependency.  However, when I remove the 2 ReportViewer references and redeploy, the ADODB dependency is now gone.  So, somehow this reportviewer is creating this dependency.  Should I just try hacking it out of my manifest files and see is the reportviewers works without it

  • javi_inv

    I have exactly the same problem, and yes, my application also uses the ReportViewer control. My pre-requisites include MDAC 2.8.

    I'm not sure I understand the solution - is ADODB actually required for ReportViewer to work, or is the ADODB dependency falsely calculated

    Until some official fix comes along, what do I have to do - I have a client waiting for this to work, and blaming Microsoft doesn't exactly buy me a lot of kudos...

    brian smith



  • DomChi

    Jon

    Your problem now boils down to why ADODB is referenced as a pre-requisite when you have referenced your reporting viewer stuff.. I would assume the VS publish wizard has some dependency checking etc etc to determine the ADODB dependecy from that reference. and for me when I think about it makes sense..

    so  Here is the deal.. you have referenced on your dev box some assemblies that are not part of the .Net framework. Those assemblies are deependent on some other assemblies that are not part of framework either.. so the publish wizard takes a stock of all references by travesing the dependencies graph. Checks which assemblies are part of application and which are not.. from the list of "which are not" all the assemblies that are part of .net will be covered by one .net prequisite and the rest of the lot will be referenced individually as prerequisites.

    when you deploy this app on to the test machines you need to make sure you are packaging the boot strappers for all the prerequisites

    Hope this clears your situation in detail

    -Thanks

    Sreekanth


  • Ichido

    What I did was just went into the application files button on the publish tab in Visual Studio and changed the ADO one from prereq to include and everything works just dandy.
  • xuWells

    Basically, from what I can tell it falsely calculates that it needs to the adodb.dll file. Basically, go into your publish settings and manually remove it from the list of files. That fixed all of my problems.

  • mdthomann

    I think I understand now.  The problem is that there is not a bootstrapper package for the ADODB PIA assembly.  However, I do hear that there will be one sometime in Q1 2006.  That may solve my problem completely.

  • netexplorer

    I tried replying this thread earlier but some how my reply did not make through..If ClickOnce is saying that you have ADODB as prerequisite that means in the manifest it is specified as prerequisite (like .Net framework ). You can check your manifest closely to see if you have something like

      <dependency>
        <dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
          <assemblyIdentity name="ADODB " version="7.0.3300" ....../>
        </dependentAssembly>
      </dependency>

    ClickOnce as such has no inherent knowledge about reportviewer prerequisite or anything for that matter.. what ever assemblies are described in the manifest as prerequisites they need to be on the system before ClickOnce installation of the application can proceed.

    It is as simple as that..

    Now as you might be aware you need to add the boot strapper packages for all the prerequsites that your app may need.. so they will be installed first using MSI and then ClickOnce installation will proceed.

    For information on bootstrapper packages and related stuff you can see

    http://msdn.microsoft.com/msdnmag/issues/04/10/Bootstrapper/

    http://www.gotdotnet.com/workspaces/workspace.aspx id=ddb4f08c-7d7c-4f44-a009-ea19fc812545

    http://www.gotdotnet.com/workspaces/workspace.aspx id=7e8e8cbd-b447-4a9d-a984-9379d1a0c190

     

    -Thanks

    sreekanth


  • ClickOnce Installs fail, ADODB 7.0.3300 required?!