Access 2003 "Security Warning"

G

Guest

What is the best way to stop that "warning"
from appearing when opening an Access 2003 DB?

TIA - Bob
 
J

Jeff Conrad

in message:
What is the best way to stop that "warning"
from appearing when opening an Access 2003 DB?

Here is some info on this subject:
(Watch out for any possible line wrapping on these links)

You can to go Tools, Macro, Security and set it to low.
If the security item isn't on that menu, you may need to reset your menubar. See:
http://support.microsoft.com/default.aspx?scid=kb;en-us;833219&Product=acc2003

You can also manually add the following Registry keys:
Set registry as follows:

ROOT:Local Machine
Key: SOFTWARE\Microsoft\Jet\4.0\Engines
Name:SandBoxMode
Value:#00000002

ROOT:Local Machine
Key: Software\Microsoft\Office\11.0\Access\Security
Name:Level
Value:#00000001

If these are just for your use, you can create a self cert on your computer
and digitally sign your databases. More info at:
http://www.microsoft.com/resources/documentation/office/2003/all/reskit/en-us/seca02.mspx

Other link to see:
http://office.microsoft.com/assista...ID=CH010411421033&CTT=4&Origin=CH010411391033

Frequently asked questions about Access security warnings:
http://office.microsoft.com/assista...ID=HA011225981033&CTT=4&Origin=CH010411391033

More info here:
How to configure Jet 4.0 to prevent unsafe functions from running in Access 2003
http://support.microsoft.com/default.aspx?kbid=294698

Still more info here:
http://www.fmsinc.com/free/tips.html#accesstip19

Another link on the subject:
http://www.access.qbuilt.com/html/vba.html#SetMacroSecLvl

An online course
http://office.microsoft.com/training/training.aspx?AssetID=RC011461801033

And a very interesting work-around presented by TC:
(This will not work as posted on a secured database though)IMO the best way is to start the database via a script file which sets
the macro security level to low for that single invocation of Access.
This does not require a certificate, or a registry change, and it does
not affect any other database(s) - just the one being started by that
script.

Eg. in VBScript:

dim o
set o=createobject ("Access.Application")
o.automationsecurity=1 ' set macro security LOW.
o.opencurrentdatabase "full path to your database"
o.usercontrol=true
set o=nothing
 
G

Guest

Jeff - Thank you.

Jeff Conrad said:
in message:


Here is some info on this subject:
(Watch out for any possible line wrapping on these links)

You can to go Tools, Macro, Security and set it to low.
If the security item isn't on that menu, you may need to reset your menubar. See:
http://support.microsoft.com/default.aspx?scid=kb;en-us;833219&Product=acc2003

You can also manually add the following Registry keys:
Set registry as follows:

ROOT:Local Machine
Key: SOFTWARE\Microsoft\Jet\4.0\Engines
Name:SandBoxMode
Value:#00000002

ROOT:Local Machine
Key: Software\Microsoft\Office\11.0\Access\Security
Name:Level
Value:#00000001

If these are just for your use, you can create a self cert on your computer
and digitally sign your databases. More info at:
http://www.microsoft.com/resources/documentation/office/2003/all/reskit/en-us/seca02.mspx

Other link to see:
http://office.microsoft.com/assista...ID=CH010411421033&CTT=4&Origin=CH010411391033

Frequently asked questions about Access security warnings:
http://office.microsoft.com/assista...ID=HA011225981033&CTT=4&Origin=CH010411391033

More info here:
How to configure Jet 4.0 to prevent unsafe functions from running in Access 2003
http://support.microsoft.com/default.aspx?kbid=294698

Still more info here:
http://www.fmsinc.com/free/tips.html#accesstip19

Another link on the subject:
http://www.access.qbuilt.com/html/vba.html#SetMacroSecLvl

An online course
http://office.microsoft.com/training/training.aspx?AssetID=RC011461801033

And a very interesting work-around presented by TC:
(This will not work as posted on a secured database though)
IMO the best way is to start the database via a script file which sets
the macro security level to low for that single invocation of Access.
This does not require a certificate, or a registry change, and it does
not affect any other database(s) - just the one being started by that
script.

Eg. in VBScript:

dim o
set o=createobject ("Access.Application")
o.automationsecurity=1 ' set macro security LOW.
o.opencurrentdatabase "full path to your database"
o.usercontrol=true
set o=nothing
 
G

Guest

Hi Jeff

I have read your answer with interest as this is a problem I am currently
trying to address. I am creating an application that I distribute with the
Access Runtime.

When I install this on another machine running XP Pro (no access installed)
I too get the security warnings. I decided to use the solution described by
TC, by creating an execuable in VB.Net which basically reads my ini file to
get the location of the MDE and then attempts to launch it.

However, when running this on my test machine with no office installed (or
access) but just the runtime, I get the following error when trying to create
the Access.Application object:

Error No 429 - Cannot create ActiveX component.

Do you know what this means, or what it is I am doing wrong?
 
G

Guest

Jeff, if you're still around and see this (or anyone else who knows how), can
you tell me how to use a script to lower the Access security level while
opening just one db, as mentioned at the end of the quoted post?
 
J

Jeff Conrad

Hi,

See section #10 here:

http://home.bendbroadband.com/conradsystems/accessjunkie/macrosecurity.html

Also, here is some exact steps that MVP TC has posted before:
Hi Kathie

1. Open Notepad or a similar "plain text" editor.

2. Type in the code that I showed in my previous post:

dim o
set o=createobject ("Access.Application")
o.automationsecurity=1 ' low.
o.opencurrentdatabase "full path to your database"
o.visible=true
o.usercontrol=true
set o=nothing

(Type one statement per line. Note that the 'o's are letters, not
digit zeros. Be sure to replace "full path to your database" with the
full path to your database(!) - eg. "C:/windows/desktop/mydb.mdb".)

3. Save the file to your desktop. Give it any name you want, but be
sure that it ends with a .bat (not .txt) extension.

Now you can start your database by double-clicking the .bat file. The
macro security warnings should not appear.

There are certain cases where this might *not* work, eg. if a virus
scanner interferes with starting the batch file. But it is so easy to
try, that you should give it a go.

Good luck,
TC
Hope that helps,
--
Jeff Conrad
Access Junkie - MVP
http://home.bendbroadband.com/conradsystems/accessjunkie.html
http://www.access.qbuilt.com/html/articles.html

in message:
 
G

Guest

Well it didn't work. I named the file test.bat.
I'm running XP Media Ctr Ed (simliar to Pro)
I ran it from a CMD prompt to capture the results. This is what happened:

C:\DOCUME~1\A\Desktop>test.bat

C:\DOCUME~1\A\Desktop>dim o
'dim' is not recognized as an internal or external command,
operable program or batch file.

C:\DOCUME~1\A\Desktop>set o=createobject ("Access.Application")

C:\DOCUME~1\A\Desktop>o.automationsecurity=1 ' low.
'o.automationsecurity' is not recognized as an internal or external command,
operable program or batch file.

C:\DOCUME~1\A\Desktop>o.opencurrentdatabase "C:\Documents and Settings\A\My
Docu
ments\test.mdb"
'o.opencurrentdatabase' is not recognized as an internal or external command,
operable program or batch file.

C:\DOCUME~1\A\Desktop>o.visible=true
'o.visible' is not recognized as an internal or external command,
operable program or batch file.

C:\DOCUME~1\A\Desktop>o.usercontrol=true
'o.usercontrol' is not recognized as an internal or external command,
operable program or batch file.

C:\DOCUME~1\A\Desktop>set o=nothing

What do you think?
 
D

Douglas J. Steele

Or, if the association for VBS has been set not to run scripts (as is the
case at many companies), rename your existing test.bat to test.vbs and then
create test.bat that consists of:

cscript //nologo C:\test.vbs

Replace C:\test.vbs with the correct path to test.vbs.

Run the new test.bat
 
G

Guest

Thanks for the help guys. Just renaming it to .vbs made it work....almost.
It launched but it gave an error. The error said something about my
expression having an invalid refence to the the property Visible, so I
"rem"ed out the line:
o.visible=true
After that it launched without the error but my previously successful effort
on this db to make it launch without showing the Access screen behind it was
undone. Now it launched the old-fashioned way (where my switchboard screen
is in front of the standard grey Access screen).
What about this script would be causing this?
 
G

Guest

More info...
I ran a test where I launched my db (tested before this test and functioning
properly where it does not show the Access screen behind my switchboard form)
using a plain ol' .bat file and with plain msaccess startup command line
syntax. It gives the same results as when I launch it with the .vbs file.
So that seems to elimainate the contents of the .vbs file as the cause. I
don't know what that means is going on but I thought it might help the people
that do know.
 
G

Guest

Apologies everyone! I'm probably too tired to be working on this stuff right
now. My previous post is wrong. It launches correctly when I launch the db
using a plain .bat file. So it looks like if I can lower the security level
on the db with the .vbs then launch it with the .bat then that would do it.
Is this possible?
 

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