472,325 Members | 1,515 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

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

disable/enable the shift key

Hi all,
First of all I'd like to thank you very very much ,as finally after many years of searching,I could find a code to disable/enable the shift key,but actually i cannot use the code as I'm very new to VBA,i tried to follow the instructions reported in the code,but i got no result,i still can use the shift key,can you explain in details how to use it correctly to enable/disable users from pressing shift key to view database windw?,the code i was talking about is the below

'This code was originally written by Michael Kaplan.
'It is not to be altered or distributed,
'except as part of an application.
'You are free to use it in any application,
'provided the copyright notice is left unchanged.
'Code Courtesy of
'Michael Kaplan
Function ChangePropertyDdl(stPropName As String, _
PropType As DAO.DataTypeEnum, vPropVal As Variant) _
As Boolean
' Uses the DDL argument to create a property
' that only Admins can change.
' Current CreateProperty listing in Access help
' is flawed in that anyone who can open the db
' can reset properties, such as AllowBypassKey
On Error GoTo ChangePropertyDdl_Err

Dim db As DAO.Database
Dim prp As DAO.Property

Const conPropNotFoundError = 3270

Set db = CurrentDb
' Assuming the current property was created without
' using the DDL argument. Delete it so we can
' recreate it properly
db.Properties.Delete stPropName
Set prp = db.CreateProperty(stPropName, _
PropType, vPropVal, True)
db.Properties.Append prp

' If we made it this far, it worked!
ChangePropertyDdl = True

Set prp = Nothing
Set db = Nothing
Exit Function

If Err.Number = conPropNotFoundError Then
' We can ignore when the prop does not exist
Resume Next
End If
Resume ChangePropertyDdl_Exit
End Function
' *********** Code End ***********

Paste the above code into a module. Then you can use the following
procedures to disable and enable the shift key for when you need it.

Public Sub DisableShiftKey()
If ChangePropertyDdl("AllowBypassKey", dbBoolean, False) Then
MsgBox "Shift key access disabled."
Msgbox "An error occured."
End If
End Sub

Public Sub EnableShiftKey()
If ChangePropertyDdl("AllowBypassKey", dbBoolean, True) Then
MsgBox "Shift key access enabled."
Msgbox "An error occured."
End If
End Sub

One problem I note in my version of Access 2003. The error number for
property not in collection seems to be 3265 now, not 3270. If you get
the an error occured message, change the line:

Const conPropNotFoundError = 3270
Const conPropNotFoundError = 3265

This code will disable the shift key for everyone, including you. Make
sure that you put a button or give your self some way to run the enable
code even if you don't have access to the database window. Here's how
I do it.

On a form in the database, I almost always have some sort of
administration functions. I put two buttons on there, one for
disabling and one for enabling the shift key. If I am using user-level
security, I just restrict access to that form to only admins.
Otherwise, you can write a simple piece of code to force a password
prompt on the two buttons.

Private Sub cmdDisableShift_Click()
If MsgBox("Do you want to disable the shift key?", vbYesNo,
"Confirm") = vbYes Then
If InputBox("Password:", "Restricted") = "1234" Then
MsgBox "Incorrect password."
End If
MsgBox "Shift key access is not disabled."
End If
End Sub

Private Sub cmdEnableShift_Click()
If MsgBox("Do you want to enable the shift key?", vbYesNo,
"Confirm") = vbYes Then
If InputBox("Password:", "Restricted") = "1234" Then
MsgBox "Incorrect password."
End If
MsgBox "Shift key access is not enabled."
End If
End Sub

Just replace 1234 with whatever password you want to use.
Jul 25 '07 #1
3 11356
3,532 Expert 2GB
I have to tell you that disabling the <Shift> key is fraught with peril! Think of all the things you can't do! You couldn't even enter an uppercase character in a textbox! What is the key combination you're trying to prevent? <Shift> + ???
You talk of "enable/disable users from pressing shift key to view database window" but pressing F11 brings up the database window.

Linq ;0)>
Jul 26 '07 #2
I think what is trying to be done is stop a user holding down the shift key when they are starting up the database so as to restrict access to the database structure (modify tables, design forms, etc). basically a security feature without having to use the jet database security.

I would also be intrested in this solution as at the moment i am using /runtime on the end of a shortcut to the database. as shown below.

"C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE" "Drive:Path\My Database.mdb" /runtime
This works to some extent but most people would be able to get round this if they look at the properties of the shortcut and remove the /runtime from the end
Jul 26 '07 #3
184 Expert 100+
why don't you just create an MDE file then?
Jul 26 '07 #4

Sign in to post your reply or Sign up for a free account.

Similar topics

by: PerryC | last post by:
I have search googles and there are hundreds of tips about AllowByPassKey... however, none works for me... well, perhaps I am too new to such high...
by: Paul T. RONG | last post by:
Dear All, I add two new tables to the database and then the disable shift key codes don't work. These two new tables are actually created by two...
by: simonmarkjones | last post by:
Hi i'm trying to disable the shift key from allowing users to access the design view. I've done a search in groups and know i need to somehow do...
by: talal | last post by:
How to check whether javascript is enable or disable in client browser. Remeber i can check wheter browser client support javascript with...
by: PamelaDV | last post by:
I am wondering if there is a way to disable the "X" used to close the Access application window? I know how to disable it for individual forms,...
by: Phoe6 | last post by:
Hi all, I am trying to disable the NIC card (and other cards) enabled in my machine to test diagnostics on that card. I am trying to disable it...
by: CanuckChuck | last post by:
I have a code for enabling a command button to password protect the enabling/disabling of the Shift bypass. For some reason though I keep recieving a...
by: sebouh181 | last post by:
I am writing to registry using javascript. var wsh = new ActiveXObject("WScript.Shell"); var key =...
by: Naushad | last post by:
Hi all, I am using the countinous form. I want to Enable/Disable the some fields for perticular records as per the following condition when open...
by: tammygombez | last post by:
Hey fellow JavaFX developers, I'm currently working on a project that involves using a ComboBox in JavaFX, and I've run into a bit of an issue....
by: better678 | last post by:
Question: Discuss your understanding of the Java platform. Is the statement "Java is interpreted" correct? Answer: Java is an object-oriented...
by: CD Tom | last post by:
This happens in runtime 2013 and 2016. When a report is run and then closed a toolbar shows up and the only way to get it to go away is to right...
by: CD Tom | last post by:
This only shows up in access runtime. When a user select a report from my report menu when they close the report they get a menu I've called Add-ins...
by: Naresh1 | last post by:
What is WebLogic Admin Training? WebLogic Admin Training is a specialized program designed to equip individuals with the skills and knowledge...
by: jalbright99669 | last post by:
Am having a bit of a time with URL Rewrite. I need to incorporate http to https redirect with a reverse proxy. I have the URL Rewrite rules made...
by: antdb | last post by:
Ⅰ. Advantage of AntDB: hyper-convergence + streaming processing engine In the overall architecture, a new "hyper-convergence" concept was...
by: Matthew3360 | last post by:
Hi there. I have been struggling to find out how to use a variable as my location in my header redirect function. Here is my code. ...
by: AndyPSV | last post by:
HOW CAN I CREATE AN AI with an .executable file that would suck all files in the folder and on my computerHOW CAN I CREATE AN AI with an .executable...

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.