Access 2003 developer extensions

S

StuJol

i've used access 2003 developer extensions to package my applicaton. Once my
application has been installed on a pc, you cant uninstall it from the
control panel\add and remove programs. When you try and do this windows asks
for the original disk.

How can i uninstall the program without the original disk?
 
A

Albert D.Kallal

What I do is build two installs.

install#1....this installs the runtime ONLY...don't include your
application. Just a text file...or a dummy mdb file...

Then build a 2nd install..and don't include the runtime..but only your
application. If you do this..then your application can be un-installed
without the need for the office disk....

This does mean that your runtime is left behind when they un-install....
 
S

StuJol

when i try to uninstall i get this message "the feature you are trying to
use is on a network resourse that is unavailable. click ok to try again, or
entre an alternative path to a folder containing the installation package
"JobMan.msi" in the box below"
 
A

Albert D.Kallal

StuJol said:
when i try to uninstall i get this message "the feature you are trying to
use is on a network resourse that is unavailable. click ok to try again,
or
entre an alternative path to a folder containing the installation package


Is the above referring to the 2nd install you built?

(I assume you are testing each install on a 100% clean machine..right?) --
time to get virtual pc if you are not.

Anyway, is the above problem a result of the "2nd install" idea I suggested?
(that means you do NOT include the ms-access runtime with your install). If
you don't include the runtime with your install..then you should not be
prompted for the disk when you try to un-install your application.
 
S

StuJol

im refferring to a first install, not a second. is their anyway to copy the
contects of my install disk to the users pc automatically?
 
A

Albert D.Kallal

StuJol said:
im refferring to a first install, not a second.

I think you misunderstood my suggestion. I am suggesting to build TWO
installs. The first install will install the runtime ONLY.

You then package your application with the 2nd part (part 2). This means the
part 1 install DOES NOT include your application part...but ONLY the
runtime. This approach means that you will NOT be prompted for a install
disk when you remove your application. (but, as I also did mention, this
means that the runtime would not be un-installed...it would be left behind
if the user un-installs your software).
is their anyway to copy the
contects of my install disk to the users pc automatically?

Well, if you want to modify the MSI script..you could do this (but, the
learning curve to do this is quite large - you need to find and download the
ORCA tools from ms..and that lets you edit the msi install file).

However even better, and much less learning time is to use the Inno
installer.

Simply build your runtime install (as step one above suggested - without
your appcation part). You can thus install this runtime separate..or even
use the innno installer to install the package you just made (so, you can
use inno to wrap up your access developer install..and to copy it to the pc
to have a "copy" on the target pc.).

For your mde part..and desktop shortcuts...use inno.

Besides...inno is far easier to use for updates to your software (you are
only copying a new mde anyway). You can find inno here

http://www.jrsoftware.org/isinfo.php


So, don't use the package wizard to install your application (use inno).
Only use the package wizard to create your runtime install (but without your
application part included).
 
S

StuJol

ok, this sounds good. I will give it a try. Can i put both installs onto 1
disk or should i have 2 seperate disks. If both are on one disk how do i run
the install for both of them?

Thanks for all ur replys
 
A

Albert D.Kallal

StuJol said:
ok, this sounds good. I will give it a try. Can i put both installs onto 1
disk or should i have 2 seperate disks. If both are on one disk how do i
run
the install for both of them?

You simply create two directories...and put in each install. Of course, this
means the disk will not auto install. So, even better would be to use
inno...and wrap both part 1, and part 2 into a single install process......

The following inno script would install the runtime

[Files]
Source: "*"; DestDir: "{app}"
Source: "files\*"; DestDir: "{app}\files"
Source: "files\setup\*"; DestDir: "{app}\files\setup"
[Run]
FileName: {app}\setup.exe; Parameters: "/qb"

note we are just simply useing the "setup" command with a /qb (q = quiet, b
= progress bar). The "q" thus eliminates all of the prompts (and questions
like custom/typical install). This is the msi (Microsoft) setup we are
talking about here.

You have to play with inno for a few hours..but it really is easy to learn
and use. Read the help..and there is also a newsgroup for inno (you find all
of this in the link I gave you).

Further, since you are likely not a 100% perfect developer, you going to
need
to setup a "update" disk (or better web site) where people can
download/install a updated version of your software (and, you will NOT need
to re-install or even waste space packaging the runtime anyway....they
already have it!!). So, having a separate install prepares you a whole
setup systems that will allow easy update of your uses (and, you will have
to do this anyway...so, might as well kill two birds with one stone).

IF you look at the following ms-access screens...you can see that I use a
web site..and inno installer to update my software...

http://www.kallal.ca/ridestutorial/upgrade.html

The last few screens are not ms-access...but of course inno....

The intial help screens etc..are ms-access....
 
S

StuJol

Thank you so much for your advice, ive downloaded inno and are getting to
grips with it. Two more questions please if u dont mind. When creating the
access runtime.msi im going to have to use a blank database arnt i because
the access 2003 dev extension wizard needs an mde to pack?

looking at the link to your website that u provided me, one of your forms
has a push button that allows updates to be downloaded. how does all that
work?

Once again many thanks, you have really helped me

Albert D.Kallal said:
StuJol said:
ok, this sounds good. I will give it a try. Can i put both installs onto 1
disk or should i have 2 seperate disks. If both are on one disk how do i
run
the install for both of them?

You simply create two directories...and put in each install. Of course, this
means the disk will not auto install. So, even better would be to use
inno...and wrap both part 1, and part 2 into a single install process......

The following inno script would install the runtime

[Files]
Source: "*"; DestDir: "{app}"
Source: "files\*"; DestDir: "{app}\files"
Source: "files\setup\*"; DestDir: "{app}\files\setup"
[Run]
FileName: {app}\setup.exe; Parameters: "/qb"

note we are just simply useing the "setup" command with a /qb (q = quiet, b
= progress bar). The "q" thus eliminates all of the prompts (and questions
like custom/typical install). This is the msi (Microsoft) setup we are
talking about here.

You have to play with inno for a few hours..but it really is easy to learn
and use. Read the help..and there is also a newsgroup for inno (you find all
of this in the link I gave you).

Further, since you are likely not a 100% perfect developer, you going to
need
to setup a "update" disk (or better web site) where people can
download/install a updated version of your software (and, you will NOT need
to re-install or even waste space packaging the runtime anyway....they
already have it!!). So, having a separate install prepares you a whole
setup systems that will allow easy update of your uses (and, you will have
to do this anyway...so, might as well kill two birds with one stone).

IF you look at the following ms-access screens...you can see that I use a
web site..and inno installer to update my software...

http://www.kallal.ca/ridestutorial/upgrade.html

The last few screens are not ms-access...but of course inno....

The intial help screens etc..are ms-access....

--
Albert D. Kallal (Access MVP)
Edmonton, Alberta Canada
(e-mail address removed)
http://www.members.shaw.ca/AlbertKallal
 
A

Albert D.Kallal

because
the access 2003 dev extension wizard needs an mde to pack?

Atually, I juist make a direclity..and incluce a readme.txt file.....

You do NOT have to actaullyy include a mde file. In the "file to package",
you can use a .txt file if you want...
looking at the link to your website that u provided me, one of your forms
has a push button that allows updates to be downloaded. how does all that
work?

The code behind that buttion is dead simple....Here it is....

If MsgBox("This will download the lastest version of Rides" & vbCrLf & _
"Do you want to update Rides?", vbQuestion + vbYesNoCancel,
AppName) <> vbYes Then
Exit Sub
End If

' ok...start the update....

strExe = "http://www.YouWebSiteName/ridesxp.exe"

Application.FollowHyperlink strExe

Application.Quit

The above is all you need. You web site page simple needs a link to your
YouInnoApplication.Exe (in the above example, that was ridesxp.exe)

So, if you build a web page..and have simple link to a file on that web site
page, then when you click on it...it will download...or, as above execute a
followhyperlink...the same thing happens....

Really, the above is only two lines of code.....

Application.FollowHyperlink "http://www.YouWebSiteName/ridesxp.exe"
Application.Quit

And the rest is a nice inno install..
 
S

StuJol

Many thanks for all your assistance

Albert D.Kallal said:
Atually, I juist make a direclity..and incluce a readme.txt file.....

You do NOT have to actaullyy include a mde file. In the "file to package",
you can use a .txt file if you want...


The code behind that buttion is dead simple....Here it is....

If MsgBox("This will download the lastest version of Rides" & vbCrLf & _
"Do you want to update Rides?", vbQuestion + vbYesNoCancel,
AppName) <> vbYes Then
Exit Sub
End If

' ok...start the update....

strExe = "http://www.YouWebSiteName/ridesxp.exe"

Application.FollowHyperlink strExe

Application.Quit

The above is all you need. You web site page simple needs a link to your
YouInnoApplication.Exe (in the above example, that was ridesxp.exe)

So, if you build a web page..and have simple link to a file on that web site
page, then when you click on it...it will download...or, as above execute a
followhyperlink...the same thing happens....

Really, the above is only two lines of code.....

Application.FollowHyperlink "http://www.YouWebSiteName/ridesxp.exe"
Application.Quit

And the rest is a nice inno install..


--
Albert D. Kallal (Access MVP)
Edmonton, Alberta Canada
(e-mail address removed)
http://www.members.shaw.ca/AlbertKallal
 
S

StuJol

Sorry but i keep thinking of new questions, downloading updates for my
application from my application was something that i never thought of.

Do you know how you would go about checking for latest updates from your
application, not neccessarly installing a known exe file. For instant i may
have version 1, 2 and 3 on my site. if a user using version 1 clicks a cmd
button to check for updates, how can i search my website for the latest
version and then download it?

Do you know any good reading material that may help me on this topic?
 
T

Tony Toews

StuJol said:
Do you know how you would go about checking for latest updates from your
application, not neccessarly installing a known exe file. For instant i may
have version 1, 2 and 3 on my site. if a user using version 1 clicks a cmd
button to check for updates, how can i search my website for the latest
version and then download it?

I'm jumping in on Albert's thread but I've been thinking about this
problem lately. I'd suggest using an INI, or really any text, file
with some data in it in standard format. Such as latest version
number, URL of that file and maybe a description of the changes. Then
your program can download that small 1 or 2 kb file. Your program
then reads that file and sees if there is a newer version available.
If not cancel. If so then use the URL supplied to download the latest
version.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
 
S

StuJol

Thanks for your info Tony,

How would you get access to read a text file? I've not come across anything
like this before
 
T

Tony Toews

StuJol said:
Thanks for your info Tony,

How would you get access to read a text file? I've not come across anything
like this before

Using the exact same method of downloading a file that Albert
mentions. Except that rather than downloading the complete zip (or
exe or whatever) file you are downloading a "starter" or "status"
file. Then your app reads that 1 kb file to determine if a newer
version is available.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
 
S

StuJol

I think you mis-understood my question, i understand how access can download
the txt file but what i dont understand is what commands you would use in vb
code to read the text file? would the text file be imported into a table and
then access can interegate the table?
 
D

Douglas J. Steele

Depending on the nature of the text file, you can use the TransferText
method to import it into a table, or you can use the Open statement, the
Input # or Line Input # statements and the Close statement to read the data
that's in the file and manipulate it yourself.
 
A

Albert D.Kallal

StuJol said:
I think you mis-understood my question, i understand how access can
download
the txt file

Actually, I have not yet sorted out the above problem yet. Remember, in
those screen shots, the END USER has to either "save" or "run" the download
that starts (on the other hand, Tony's idea of a simple text file is a
really smart idea......kind of going duh!..here! As always, simple simple
simple is the best approach).

So, the folllowhuperlink does in effect "click" on the link....but to
continue the download, the user does have accept.

I suppose I could use the built in ftp, but then I would be exposing my
password to the script (I kind of don't want to do that...but I just might).
I have a good number of windows scripts now that I use to "upload" clients
versions of their software. But, that script would have to run on the
clients machine...and that means my web site password would be in that
script...

note that in my case, as for versions...when they hit update...the simply
get the latest version. I don't support multiple versions. If a previous
client has missed a few updates...it as a general rule don't matter (my
changes to the back end table are cumulative in some update code I have).
So, if they restore a old back end, and run it....it will be updated to the
latest version anyway). So, if I make changes......it is upward
compatable......
but what i dont understand is what commands you would use in vb
code to read the text file? would the text file be imported into a table
and
then access can interegate the table?

Reading text files is standard fair in VB or VBA.....

eg:

Sub ReadTextFile

Dim strFile As String
Dim intF As Integer
Dim strLineBuf As String
Dim lngLines As Long
Dim lngBlank As Long

strFile = "c:\my data\MyData.txt"

intF = FreeFile()
Open strFile For Input As #intF

Do While EOF(intF) = False
Line Input #intF, strLineBuf
If Trim(strLineBuf) = "" Then
lngBlank = lngBlank + 1
Else
lngLines = lngLines + 1
End If
Loop
Close intF

End If

MsgBox "Number non blank lines = " & lngLines & vbCrLf & _
"Blank lines = " & lngBlank & vbCrLf & _
"Total = " & lngBlank + lngLines

End Function


The above don't do much...but it shows the general approach and what a loop
looks like to read/process a text file..
 
B

Brendan Reynolds

Rather than downloading a text file, you could use an ASP.NET Web Service
that returned the status information (e.g. whether a newer version was
available) as XML. Interfacing with the Web Service from Access is quite
easy with the Office Web Services Toolkit. The advantage is that the user
would not be faced with any download prompts when checking for available
updates, only when actually downloading the update itself.
 
T

Tony Toews

Albert D.Kallal said:
Actually, I have not yet sorted out the above problem yet. Remember, in
those screen shots, the END USER has to either "save" or "run" the download
that starts

Ah, interesting. I hadn't realized that.
(on the other hand, Tony's idea of a simple text file is a
really smart idea......kind of going duh!..here! As always, simple simple
simple is the best approach).

Well, when I see my antivirus software doing it's daily download it
stops at about 3 kb for a few seconds and then either halts or
continues if there are more files. It doesn't take a rocket scientist
to figure out they're downloading a small file of some sort first.
I suppose I could use the built in ftp, but then I would be exposing my
password to the script (I kind of don't want to do that...but I just might).
I have a good number of windows scripts now that I use to "upload" clients
versions of their software. But, that script would have to run on the
clients machine...and that means my web site password would be in that
script...

Well, you could setup a read only userid and password which could only
do downloads.
note that in my case, as for versions...when they hit update...the simply
get the latest version. I don't support multiple versions. If a previous
client has missed a few updates...it as a general rule don't matter (my
changes to the back end table are cumulative in some update code I have).
So, if they restore a old back end, and run it....it will be updated to the
latest version anyway). So, if I make changes......it is upward
compatable......

Fair enough. But in the case of my Auto FE Updater I like having
older versions available just in case. And that has come up where
folks need to use older versions because the new logic doesn't quite
work for them.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top