473,545 Members | 2,678 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Packaging MSDE in with Winforms C# app, using Windows packages

Hi
I want to package my C# winforms app, to be deployed with MSDE, as easily as
possible for the end user.

I want to create an MSI or Installshield (prefer MSI), to setup my C# app,
together with MSDE (if not already installed), and the MSDE application DB.

How can I detect if MSDE is already installed??

Has anyone does this?? How??

Thanks
Paul
Nov 16 '05 #1
3 2526
Merge Modules:
http://www.sqljunkies.com/Article/48...2CA762ED6.scuk

ok,
aq

"Paul Aspinall" <pa**@aspy.co.u k> wrote in message
news:h9******** ********@fe3.ne ws.blueyonder.c o.uk...
Hi
I want to package my C# winforms app, to be deployed with MSDE, as easily as possible for the end user.

I want to create an MSI or Installshield (prefer MSI), to setup my C# app,
together with MSDE (if not already installed), and the MSDE application DB.
How can I detect if MSDE is already installed??

Has anyone does this?? How??

Thanks
Paul

Nov 16 '05 #2
In message <h9************ ****@fe3.news.b lueyonder.co.uk >, Paul Aspinall
<pa**@aspy.co.u k> writes
Hi
I want to package my C# winforms app, to be deployed with MSDE, as easily as
possible for the end user.

I want to create an MSI or Installshield (prefer MSI), to setup my C# app,
together with MSDE (if not already installed), and the MSDE application DB.

How can I detect if MSDE is already installed??

Has anyone does this?? How??


Everything I have found on the subject of packaging MSDE in your own MSI
or InstallShield package says "Just Don't Do It". It has many with
problems to deal with. This really only leaves two choices.

1. Include the standard MSDE package on your CD (or other Distribution
Media) and provide installation instructions which tell the user how to
install MSDE if required (remember the user might already have MSDE or
SQL Server installed and prefer to use that instance). In addition, you
would then need to provide a little setup / configuration program (or
embed it in your application) to Create the Database and associated
Tables etc. Obviously, this is a long winded method and can create
plenty of support calls / emails from the non computer literate.

2. The preferred method is to use the MSDE / SQL Server Deployment
Toolkit available for free download from MSDN. The includes a C# and
VB.Net examples plus full instructions to install (MSDE) and deploy your
database. This new customised package can then be called from your main
/ normal MSI or InstallShield package during the installation process.

I believe method 2 also can detect an existing instance to abort the
installation or install under a new named instance.

As for detecting whether MSDE is already installed (ie: if using method
1 above), I think the simplest way would be to add a Custom Action to
your MSI / InstallShield package to check the existence of several know
registry keys under HKLM and HKCU.

--
Andrew D. Newbould E-Mail: ne********@NOSP AMzadsoft.com

ZAD Software Systems Web : www.zadsoft.com
Nov 17 '05 #3
Thanks for the reply.

I have now resolved this issue very satisfactorily.
MS have a Deployment Toolkit for MSDE, that plugs directly in to Visual
Studio. This provides an easy to use way of packaging your app with MSDE,
and it works great.

I would recommend anyone who has any issues or problems with this, to try
using the MSDE Deployment Toolkit.

http://www.microsoft.com/downloads/d...DisplayLang=en

Thanks
Paul Aspinall

"Andrew D. Newbould" <ne********@NOz adSPANsoft.com> wrote in message
news:N4******** ******@zadsoft. gotadsl.co.uk.. .
In message <h9************ ****@fe3.news.b lueyonder.co.uk >, Paul Aspinall
<pa**@aspy.co.u k> writes
Hi
I want to package my C# winforms app, to be deployed with MSDE, as easily
as
possible for the end user.

I want to create an MSI or Installshield (prefer MSI), to setup my C# app,
together with MSDE (if not already installed), and the MSDE application
DB.

How can I detect if MSDE is already installed??

Has anyone does this?? How??


Everything I have found on the subject of packaging MSDE in your own MSI
or InstallShield package says "Just Don't Do It". It has many with
problems to deal with. This really only leaves two choices.

1. Include the standard MSDE package on your CD (or other Distribution
Media) and provide installation instructions which tell the user how to
install MSDE if required (remember the user might already have MSDE or SQL
Server installed and prefer to use that instance). In addition, you would
then need to provide a little setup / configuration program (or embed it
in your application) to Create the Database and associated Tables etc.
Obviously, this is a long winded method and can create plenty of support
calls / emails from the non computer literate.

2. The preferred method is to use the MSDE / SQL Server Deployment
Toolkit available for free download from MSDN. The includes a C# and
VB.Net examples plus full instructions to install (MSDE) and deploy your
database. This new customised package can then be called from your main /
normal MSI or InstallShield package during the installation process.

I believe method 2 also can detect an existing instance to abort the
installation or install under a new named instance.

As for detecting whether MSDE is already installed (ie: if using method 1
above), I think the simplest way would be to add a Custom Action to your
MSI / InstallShield package to check the existence of several know
registry keys under HKLM and HKCU.

--
Andrew D. Newbould E-Mail: ne********@NOSP AMzadsoft.com

ZAD Software Systems Web : www.zadsoft.com

Nov 17 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
2715
by: Bob Reynolds | last post by:
Hello, I have a requirement to create EAR and WAR packages without using the integrated package building tools built into the IDE. The packages will be created via a deployment script, preferably on a Win2k/Xp machine (less preferably we have a solaris 9x box - however i really need to get this running on xp or i'll be shuffling files...
5
8413
by: Igor Solodovnikov | last post by:
Hi. I am trying to automatically backup transaction log when error 9002 happened. So i have created appropriate job and alert to catch this error. I have two instances of sql server under Windows 2000. One of them is full SQL Server, another is msde. When transaction log is full in full SQL Server error 9002 severity 17 state 2 is logged in...
6
2368
by: Dan Webb | last post by:
Hi All, Im currently working on ways of pacakaging javascript functions/variables/objects in a similar way to the Java package statement so that scripts can be interact with each other with the minimum risk of clashing (due to function/variable name clashes). Do any of you do this already and/or are there any techniques you've come...
19
3037
by: Blair Adamache | last post by:
IBM is hosting a user focus session to get feedback on a new design concept for installing software products and maintenance. The information below gives a brief summary of the information about the session. If you are interested and feel that you are qualified, please send an e-mail to Karen Ball at kball@protocolusa.com. Or you can phone...
1
1849
by: Paul Aspinall | last post by:
Hi I have a C# Winform app which runs using SQL Server. I want to package up the app, so that it deploys with MSDE. Can anyone offer any pointers or references to help?? Thanks
15
2931
by: John Nagle | last post by:
I've been installing Python and its supporting packages on a dedicated server with Fedora Core 6 for about a day now. This is a standard dedicated rackmount server in a colocation facility, controlled via Plesk control panel, and turned over to me with Fedora Core 6 in an empty state. This is the standard way you get a server in a colo...
5
1634
by: Paul Rubin | last post by:
I've been through this kind of thing a few times in the past and received excellent advice here on clpy about how to deal with specific technical aspects (e.g. how to use setuptools, InnoSetup, etc). I'm now wondering where this type of thing is best addressed in more general terms. What I usually see happening, in projects I've worked on...
60
3801
by: jim | last post by:
I am looking for an application that will wrap my .Net application (and any needed .Net parts) into a single exe. I know of Thinstall ($4,000 for application and per copy fees for your exes) and of Xenocode (~$1,500 plus ~ $12 per copy of your exe). But, I'd like something that is actually affordable for a hobbyist programmer. This...
1
1368
by: SPE - Stani's Python Editor | last post by:
Hi All, If you wrote some python code that you want to package or know a cool python application of which you like to make a deb installer, the python packaging session is all for you! Do you develop some cross- platform open source software and you want to give its popularity a boost by bringing it to Ubuntu and Debian, read on! (Packages...
0
7496
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main...
0
7685
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. ...
0
7784
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
1
5354
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes...
0
5071
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert...
0
3485
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in...
0
3467
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1039
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
738
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.