[AccessD] Locked down database

Dan Waters df.waters at outlook.com
Tue Feb 3 11:24:21 CST 2015


Do I need to change something?

Dan

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Tina Norris
Fields
Sent: Tuesday, February 03, 2015 11:12 AM
To: Access Developers discussion and problem solving
Subject: Re: [AccessD] Locked down database

Never mind - it was a line-ending at the function creation causing the
problem.  Fixed.
TNF

Tina Norris Fields
tinanfields-at-torchlake-dot-com
231-322-2787

On 2/3/2015 12:01 PM, Tina Norris Fields wrote:
> Hi Dan,
>
> Access 2013 is not liking the ChangeProperty line (first appears on 
> line 12).  What is equivalent command?
>
> TNF
>
> Tina Norris Fields
> tinanfields-at-torchlake-dot-com
> 231-322-2787
>
> On 2/2/2015 8:53 PM, Dan Waters wrote:
>> Hi Doug,
>>
>> A few years ago I wrote an Access mdb as a tool to clear the Shift 
>> Bypass lockout.
>>
>> Create a new ACCDB file, and put this code into a module.  Add a new 
>> macro named AutoExec to run the function UnlockAccessFile().  You 
>> will need to hold down the shift key to get into the code in this 
>> file.  I wrote this to work with the MDB files I work with, but it 
>> might also work on an ACCDB.
>>
>> Save the Access file and name it Allow Bypass (works for me).
>>
>> If you get an error send it to me and let me know what you were 
>> trying to do.
>>
>> Now open the Allow Bypass access file, locate the Access file you 
>> want to get opened, and see if it works.  Also - it might be that the 
>> Allow Bypass tool is actually working, but something else in your 
>> file is still locking you out - but I don't know what would do that.
>>
>> Good Luck!
>> Dan
>>
>> -----------------------------------
>> Option Compare Database
>> Option Explicit
>>
>> Private MappSource As Access.Application
>>
>> Public Function UnlockAccessFile()
>> 1     On Error GoTo EH
>>
>>            '-- Note:  Run this application from this procedure.
>>
>>            Dim stgSourceFilePath As String
>>            Dim stgPrompt As String
>>                       '-- Select Access File
>> 2         stgSourceFilePath = SelectFile
>> 3         If stgSourceFilePath = "File Not Selected" Or 
>> stgSourceFilePath =
>> "" Then
>> 4             MsgBox "Can't find file!", vbExclamation + vbOKOnly, 
>> "No File"
>> 5             Exit Function
>> 6         End If
>> 7         DoEvents
>>                       '-- Set Source MDB or ACCDB as the CurrentDatabase
>> 8         Set MappSource = New Access.Application
>> 9         MappSource.Visible = False
>> 10        MappSource.OpenCurrentDatabase stgSourceFilePath
>> 11        DoEvents
>>            12        ChangeProperty "AllowBypassKey", dbBoolean, 
>> True  '-- Allow shift
>> key bypass
>> 13        ChangeProperty "AllowSpecialKeys", dbBoolean, True '-- 
>> Allow F11
>> key
>> 14        ChangeProperty "AllowBreakIntoCode", dbBoolean, True
>> 15        ChangeProperty "AllowFullMenus", dbBoolean, True
>> 16        ChangeProperty "StartupShowDBWindow", dbBoolean, True
>>            17        MappSource.CloseCurrentDatabase
>> 18        Set MappSource = Nothing
>>            19        MsgBox "Your file at " & stgSourceFilePath & " 
>> is now available!",
>> vbInformation + vbOKOnly, "File Now Available"
>>            20        Exit Function
>>            EH:
>> 21        stgPrompt = "ERROR: SelectFile" & vbNewLine & vbNewLine _
>>                & "Line:            " & Erl & vbNewLine _
>>                & "Number:        " & Err.Number & vbNewLine _
>>                & "Description: " & Err.Description
>> 22        MsgBox stgPrompt, vbExclamation + vbOKOnly
>> 23        Stop
>>            End Function
>>
>> Private Function SelectFile() As String
>> 1         On Error GoTo EH
>>
>>            Dim fDialog As Office.FileDialog
>>            Dim stgPrompt As String
>>            Dim varFile As Variant
>>
>> 2         Set fDialog = FileDialog(msoFileDialogFilePicker)
>>
>> 3         With fDialog
>>
>> 4             .AllowMultiSelect = False
>> 5             .InitialView = msoFileDialogViewList
>> 6             .InitialFileName = CurrentProject.Path
>> 7             .Title = "Select the Access file."
>>
>> 8             .Filters.Clear
>> 9             .Filters.Add "Access Databases", "*.MDB"
>> 10            .Filters.Add "Access Databases", "*.ACCDB"
>>                '.Filters.Add "Access Projects", "*.ADP"
>>
>>                '-- Show the dialog box. If the .Show method returns 
>> True, the _
>>                 user picked at least one file. If the .Show method 
>> returns _
>>                 False, the user clicked Cancel.
>> 11            If .Show = True Then
>> 12                For Each varFile In .SelectedItems
>> 13                    SelectFile = varFile
>> 14                Next varFile
>> 15            Else
>> 16                SelectFile = "File Not Selected"
>> 17            End If
>>
>> 18        End With
>>
>> 19        Exit Function
>>
>> EH:
>> 20        stgPrompt = "ERROR: SelectFile" & vbNewLine & vbNewLine _
>>                        & "Line:            " & Erl & vbNewLine _
>>                        & "Number:        " & Err.Number & vbNewLine _
>>                        & "Description: " & Err.Description
>> 21        MsgBox stgPrompt, vbExclamation + vbOKOnly
>> 22    Stop
>>
>> End Function
>>
>> Public Function ChangeProperty(stgPropName As String, varPropType As 
>> Variant, varPropValue As Variant) As Boolean
>> 1     On Error GoTo EH
>>
>>            Dim prp As DAO.Property
>>            Dim stgPrompt As String
>>            Dim dbs As DAO.Database
>>            2         Set dbs = MappSource.DBEngine(0)(0)
>>
>> 3         dbs.Properties(stgPropName) = varPropValue
>>
>> 4         ChangeProperty = True
>>
>> XH:
>> 5         Exit Function
>>
>> EH:
>> 6         Select Case Err.Number
>>
>>                Case 3270
>>                    '-- Add property if not already created
>> 7                 Set prp = DBEngine(0)(0).CreateProperty(stgPropName,
>> varPropType, varPropValue)
>> 8                 DBEngine(0)(0).Properties.Append prp
>> 9                 Set prp = Nothing
>> 10                Resume Next
>>
>> 11            Case Else
>> 12                stgPrompt = "ERROR: SelectFile" & vbNewLine & 
>> vbNewLine _
>>                        & "Line:            " & Erl & vbNewLine _
>>                        & "Number:        " & Err.Number & vbNewLine _
>>                        & "Description: " & Err.Description
>> 13                MsgBox stgPrompt, vbExclamation + vbOKOnly
>> 14                Stop
>>
>> 15        End Select
>>
>> End Function
>>
>> ---------------------------------
>>
>>
>>
>> -----Original Message-----
>> From: accessd-bounces at databaseadvisors.com
>> [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Doug 
>> Steele
>> Sent: Monday, February 02, 2015 16:35 PM
>> To: Access Developers discussion and problem solving
>> Subject: [AccessD] Locked down database
>>
>> I've just been asked by an old client to 'rescue' a database so it 
>> can be developed again.  This db was left in a locked down state of 
>> some kind by an ex-employee of theirs. It wasn't an amicable parting 
>> :)
>>
>> The database is in Access 2007 format.  It's not password protected, 
>> and it is in .accdb format, not accde. The 'hold down the shift key 
>> to open'
>> option has been bypassed.  There is no 'design view' option when you 
>> right click on a form, and of course all menus have been hidden.  I 
>> tried creating an blank db and importing, but the forms list in the 
>> import window is greyed out.
>>
>> Does anyone have any suggestions?
>>
>> Thanks,
>> Doug
>> --
>> AccessD mailing list
>> AccessD at databaseadvisors.com
>> http://databaseadvisors.com/mailman/listinfo/accessd
>> Website: http://www.databaseadvisors.com
>>
>

--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com



More information about the AccessD mailing list