By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
444,168 Members | 2,511 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 444,168 IT Pros & Developers. It's quick & easy.

deployment and database location

P: n/a
Ben
Hi all
I have made a vb.net windows app that works great in design. But after deploying the app on the same design computer (my own) the app can not find any of the two databases it needs to operate. I have tried setting their connection strings to application.startupath, but with no luck.
My question is, what is the correct way to code a connection string so that it will be seen by the app on any computer when deployed, especially when one of the databases has a dataset.
Right now I have a copy of both databases in the application folder and in the bin and debug folders for testing and they are still not found by the .exe
Nov 20 '05 #1
Share this Question
Share on Google+
3 Replies


P: n/a
Post your connection strings and tell us where the databse is in reality (
path \\servername\share\dbname )

--

OHM ( Terry Burns )
. . . One-Handed-Man . . .

Time flies when you don't know what you're doing

"Ben" <Be*@discussions.microsoft.com> wrote in message
news:08**********************************@microsof t.com...
Hi all
I have made a vb.net windows app that works great in design. But after deploying the app on the same design computer (my own) the app can not find
any of the two databases it needs to operate. I have tried setting their
connection strings to application.startupath, but with no luck. My question is, what is the correct way to code a connection string so that it will be seen by the app on any computer when deployed, especially
when one of the databases has a dataset. Right now I have a copy of both databases in the application folder and in

the bin and debug folders for testing and they are still not found by the
..exe
Nov 20 '05 #2

P: n/a
Ben
Ok
Here are the two strings I now use

Con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Replace(Application.StartupPath, "bin", "") & "Book.mdb"

This one below is the one to which there is a dataset attached and the code is copied from in the Windows Form Designer generated code area:

Me.odcBooks.ConnectionString = "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database L" & _
"ocking Mode=1;Data Source=""C:\Documents and Settings\My Name\My Documents\V" & _
"isual Studio Projects\About My Books\Books.mdb"";Jet OLEDB:Engine Type=5;Pro" & _
"vider=""Microsoft.Jet.OLEDB.4.0"";Jet OLEDB:System database=;Jet OLEDB:SFP=False;p" & _
"ersist security info=False;Extended Properties=;Mode=Share Deny None;Jet OLEDB:E" & _
"ncrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Cop" & _
"y Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;User ID" & _
"=Admin;Jet OLEDB:Global Bulk Transactions=1"


"One Handed Man ( OHM - Terry Burns )" wrote:
Post your connection strings and tell us where the databse is in reality (
path \\servername\share\dbname )

--

OHM ( Terry Burns )
. . . One-Handed-Man . . .

Time flies when you don't know what you're doing

"Ben" <Be*@discussions.microsoft.com> wrote in message
news:08**********************************@microsof t.com...
Hi all
I have made a vb.net windows app that works great in design. But after

deploying the app on the same design computer (my own) the app can not find
any of the two databases it needs to operate. I have tried setting their
connection strings to application.startupath, but with no luck.
My question is, what is the correct way to code a connection string so

that it will be seen by the app on any computer when deployed, especially
when one of the databases has a dataset.
Right now I have a copy of both databases in the application folder and in

the bin and debug folders for testing and they are still not found by the
..exe

Nov 20 '05 #3

P: n/a
The reason is simple.

You originally were in a Bin folder at the end of your project directory
structure. Your replace replaces Bin with "", this leaves you with

..........\

However, when you deploy this, if your directort does not end in bin, then
no replace is done. So Lets say you deployed to C:\TEST, your formula for
the connection string would result in the following
C:\TESTBOOK.MDB
SO . . . use a preprocessor directive

#If DEBUG Then

'Set your paths accordingly

#Else

'set your paths accordingly

#End If

OR

Add an app.config file and set a new key for this and have your program
read it on startup.



--

OHM ( Terry Burns )
. . . One-Handed-Man . . .

Time flies when you don't know what you're doing

"Ben" <Be*@discussions.microsoft.com> wrote in message
news:BE**********************************@microsof t.com...
Ok
Here are the two strings I now use

Con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Replace(Application.StartupPath, "bin", "") & "Book.mdb"
This one below is the one to which there is a dataset attached and the code is copied from in the Windows Form Designer generated code area:
Me.odcBooks.ConnectionString = "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database L" & _ "ocking Mode=1;Data Source=""C:\Documents and Settings\My Name\My Documents\V" & _ "isual Studio Projects\About My Books\Books.mdb"";Jet OLEDB:Engine Type=5;Pro" & _ "vider=""Microsoft.Jet.OLEDB.4.0"";Jet OLEDB:System database=;Jet OLEDB:SFP=False;p" & _ "ersist security info=False;Extended Properties=;Mode=Share Deny None;Jet OLEDB:E" & _ "ncrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Cop" & _ "y Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;User ID" & _ "=Admin;Jet OLEDB:Global Bulk Transactions=1"


"One Handed Man ( OHM - Terry Burns )" wrote:
Post your connection strings and tell us where the databse is in reality ( path \\servername\share\dbname )

--

OHM ( Terry Burns )
. . . One-Handed-Man . . .

Time flies when you don't know what you're doing

"Ben" <Be*@discussions.microsoft.com> wrote in message
news:08**********************************@microsof t.com...
Hi all
I have made a vb.net windows app that works great in design. But after

deploying the app on the same design computer (my own) the app can not find any of the two databases it needs to operate. I have tried setting their
connection strings to application.startupath, but with no luck.
My question is, what is the correct way to code a connection string so

that it will be seen by the app on any computer when deployed, especially when one of the databases has a dataset.
Right now I have a copy of both databases in the application folder
and in the bin and debug folders for testing and they are still not found by the ..exe

Nov 20 '05 #4

This discussion thread is closed

Replies have been disabled for this discussion.