473,320 Members | 1,921 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,320 software developers and data experts.

Deployment Customization

I'm beginning to think this isn't doable within VB.NET Deployment
projects, but I wanted to ask before I went and spent the money on a
seperate installer. I have a program that runs off of an access DB
backend. For upgrades from older to newer version that involve a
change to the DB structure, I'm trying to on installation:

a. make a copy of the mdb to a bak.mdb file
b. install the upgrade including a blank mdb with all the modifications
c. run an upgrade utility that copies all of the data from the bak.mdb
to the new db.

Does anyone have any recommendations on how to do this (in VS.net
2003)? If not, can anyone recommend some good (hopefully cheap)
installation software that can do this?

I apppreciate the help!

Chris

Nov 22 '05 #1
4 1398
Unless you're really keen to do this all in an MSI file (which is
non-trivial when you think about rollback etc), why not just write some code
in a launcher program to do this? There's no built-in support in MSI or VS
setup projects so you'll be writing code to do this anyway, and it will be
simpler if you don't use custom actions. Write a program that copies the mdb
file, then launches your MSI file (P/Invoke to MsiInstallProduct), then do
the upgrade.
--
Phil Wilson
[Microsoft MVP-Windows Installer]
Definitive Guide to Windows Installer
http://apress.com/book/bookDisplay.html?bID=280

"Mattbooty" <ma*******@mattbooty.com> wrote in message
news:11**********************@g14g2000cwa.googlegr oups.com...
I'm beginning to think this isn't doable within VB.NET Deployment
projects, but I wanted to ask before I went and spent the money on a
seperate installer. I have a program that runs off of an access DB
backend. For upgrades from older to newer version that involve a
change to the DB structure, I'm trying to on installation:

a. make a copy of the mdb to a bak.mdb file
b. install the upgrade including a blank mdb with all the modifications
c. run an upgrade utility that copies all of the data from the bak.mdb
to the new db.

Does anyone have any recommendations on how to do this (in VS.net
2003)? If not, can anyone recommend some good (hopefully cheap)
installation software that can do this?

I apppreciate the help!

Chris

Nov 22 '05 #2
As dumb as it sounds, I never actually thought of that. I was so
single minded on trying to modify their setup it never occurred to me
to step outside of it.

Thanks for the tip, that should do what I'm looking for!

Nov 22 '05 #3
A follow up question. Here is the code I'm using to launch the MSI:

If System.IO.File.Exists("Setup.msi") Then
Shell("Setup.msi", AppWinStyle.NormalFocus, True)
End If

I'm getting a file not found error on the shell. I have no idea how
that is possible since the condition states that it doesn't execute if
the file is not found. Any thoughts, or is there a better way to
launch the MSI?

Nov 22 '05 #4
I think the Shell statement requires the full path. (File.Exists is more
friendly - it starts with the current directory in this case)
--
Phil Wilson
[Microsoft MVP-Windows Installer]
"Mattbooty" <ma*******@mattbooty.com> wrote in message
news:11**********************@g49g2000cwa.googlegr oups.com...
A follow up question. Here is the code I'm using to launch the MSI:

If System.IO.File.Exists("Setup.msi") Then
Shell("Setup.msi", AppWinStyle.NormalFocus, True)
End If

I'm getting a file not found error on the shell. I have no idea how
that is possible since the condition states that it doesn't execute if
the file is not found. Any thoughts, or is there a better way to
launch the MSI?

Nov 22 '05 #5

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

Similar topics

2
by: PatLaf | last post by:
I would like to be able to build a datagrid that has two buttons in each cell similar to the functionality provided by the winforms numericupdown control. I have an app that will require the user to...
4
by: Mattbooty | last post by:
I'm beginning to think this isn't doable within VB.NET Deployment projects, but I wanted to ask before I went and spent the money on a seperate installer. I have a program that runs off of an...
4
by: James | last post by:
I have a VB windows forms application that accesses a Microsoft Access database that has been secured using user-level security. The application is being deployed using No-Touch deployment. The...
1
by: robert d via AccessMonster.com | last post by:
I'm a fledgling developer and am just starting to get my app out to specific clients. I have been asked to bid on a project because my app already does over 90% of what the client wants. My...
2
by: Bill Nguyen | last post by:
I ran into this error trying to run an app from Publish.htm. I can't find what is wrong with the deployment. Thanks a million Bill -------- PLATFORM VERSION INFO
6
by: Jim M | last post by:
I've been distributing a fairly mature, very specific MS Access application to end users in small offices of colleges for several years now. This is a part-time venture and low volume operation-...
4
by: Zany | last post by:
I added a Web Deployment Project so I can create a debug, staging, and release version. Each set is compiled and saved in a separate folder under the csproj_deploy folder. All works fine. Here's...
0
by: Leanne | last post by:
***** I have post this one in msi group, but it seems less people there, so I post it here as well. Can someone please have a look and give me any ideas/suggestions/directions? Thank you very very...
4
by: Carly | last post by:
Hello there, Strangely enough until now I did not find any articles that describe in a "crystal clear" way how to deploy a VB.NEt application. 1. Is it mandatory to have .net framework on the...
1
by: Doug | last post by:
Hi I am using the VS2005 setup and deployment project template to deploy my new app. However it only seems to allow graphics during the setup process to be placed in the top banner area. ...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
0
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 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 former...

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.