John W. Colby
jwcolby at gmail.com
Mon Feb 2 22:12:45 CST 2015
LOL, well... I had this thing called C2DbProperties, written somewhere before the turn of the century. Of course it doesn't work with 2007 so Doug had to fiddle with it a bit. But I still like the thing, it can be plopped down and run to address just this issue. -- John W. Colby On 2/2/2015 10:20 PM, Dan Waters wrote: > That John guy - he's my biggest competition! ;-) > > Good to hear from you John! > > Dan > > > > Doug Steele <dbdoug at gmail.com> wrote: > > Thanks, Dan. I was actually given code privately (by John Colby, no less!) > that does a similar thing. Having unlocked the mystery db, I've discovered > that it isn't an .accdb file, but a renamed .accde file. So unless my > client can find the original uncompiled file, he's going to be out of luck. > > On Mon, Feb 2, 2015 at 5:53 PM, Dan Waters <df.waters at outlook.com> 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 >> > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com >