Missing Assembly Microsoft.SqlServer.ConnectionInfo while using ClickOnce deployment

  • Thread starter Thread starter moondaddy
  • Start date Start date
M

moondaddy

I'm using vs08 / vb2.0 and am trying to use click once deployment. when I
run the click once installation i get the following error msg:

"Unable to install or run the application. The application requires that
assembly Microsoft.SqlServer.ConnectionInfo Version 9.0.242.0 be installed
in the Global Assembly Cache (GAC) first."

I have .net 2.0, 3.0 and 3.5 already installed on the target machine and I
set the publish status to 'Include' for all required files including this
one.

In the application files window, I set the publish status to 'Include' on
all of this type of files, but in the publish package none of them are
included. By the way, under options, I unchecked 'use deploy file
extensions incase that was confusing the target machine. Before when this
option was checked, all of these files
(Microsoft.SqlServer.ConnectionInfo.dll and
Microsoft.SqlServer.ConnectionInfo.dll.deploy, and many more) WERE included.
However, I still got this error msg. It seems I just can't get past this
point. I'm surprised that this is such a big problem and have seen very
little info on it.

I'm surprised something so simple is so difficult.

any advise?

Thanks.
 
Hi Moondaddy,

From your description, your .net application has used the SQL Server 2005
server management object(SMO) classes. Then, on your target machine(to
deploy on), is SQL Server 2005 (or SQL Express) installed on it? SMO
classes are not included in the .net framework, but installed through SQL
Server 2005. If you want to use SMO without SQL server on target machine,
you may have a look at the following threads which mentioned use some
separate redistribute package to install SMO components:

#Deploy SMO project
http://www.msdner.com/dev-archive/14/19-88-149130.shtm

#Deploying SMO/RMO Applications to non-sql2005 servers.
http://www.msdner.com/dev-archive/6/19-88-63795.shtm

Sincerely,

Steven Cheng

Microsoft MSDN Online Support Lead



==================================================

Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.



Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.

==================================================


This posting is provided "AS IS" with no warranties, and confers no rights.




--------------------
 
First, to fix the problem with it expecting the SQLServer.ConnectionInfo to
be in the GAC, create a folder in your project and copy the dll over to it.
Then delete any references your project has that point to the
SQLServer.ConnectionInfo dll, and re-add them, but do it by browsing to the
dll in that folder on your hard drive rather than selecting it from the .Net
list.

Your problem is you added them from the .Net list, and that is the dll's
installed in the GAC, so it assumes they will be in the same location on the
user machine. By including the dll's, and making sure your references point
at the included dll's, it removes that problem.

In the publish status, make sure it is Include(Required).

Recheck "use deploy file extensions". This is used because not all web
servers will let you deploy files with some of the file extensions on the
files you are deploying. By adding the file extension "deploy", it gets
around this restriction.


It's not difficult. Buy the ClickOnce book by Brian Noyes. It is invaluable.

RobinS.
GoldMail, Inc.
 
Hi Moondaddy,

Have you got any progress on this issue or does our former suggestion help
you some?

Sincerely,

Steven Cheng

Microsoft MSDN Online Support Lead


This posting is provided "AS IS" with no warranties, and confers no rights.

--------------------
 
Thanks. My project doesn't use these dlls and I'm not sure why they are
referenced in the deployment package. I removed changed them to exclude in
the deployment package and all works fine now.

thanks for everyone's help.


RobinS said:
First, to fix the problem with it expecting the SQLServer.ConnectionInfo
to be in the GAC, create a folder in your project and copy the dll over to
it. Then delete any references your project has that point to the
SQLServer.ConnectionInfo dll, and re-add them, but do it by browsing to
the dll in that folder on your hard drive rather than selecting it from
the .Net list.

Your problem is you added them from the .Net list, and that is the dll's
installed in the GAC, so it assumes they will be in the same location on
the user machine. By including the dll's, and making sure your references
point at the included dll's, it removes that problem.

In the publish status, make sure it is Include(Required).

Recheck "use deploy file extensions". This is used because not all web
servers will let you deploy files with some of the file extensions on the
files you are deploying. By adding the file extension "deploy", it gets
around this restriction.


It's not difficult. Buy the ClickOnce book by Brian Noyes. It is
invaluable.

RobinS.
GoldMail, Inc.
----------------------------------------
 
Back
Top