Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Работа с данными

Страница: 1 |

 

  Вопрос: Пароль Добавлено: 25.01.05 06:41  

Автор вопроса:  Mihalыch | ICQ: 373-509-101 
Как программно поставить, получить, изменить пароль на базу данных Access?

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 User Unknown



Вечный Юзер!

ICQ: uu@jabber.cz 

Вопросов: 120
Ответов: 3302
 Профиль | | #1 Добавлено: 25.01.05 11:42

Поставить



Public Function SetDatabasePassword(DBPath As String, _
newPassword As String) As Boolean
    
'Usage: Password protect a database that previously had no
'password

'Parameters: sDBPath: Full Path to Access Database
'newPassword: the password
'returns true on success false otherwise

If Dir(DBPath) = "" Then Exit Function

Dim db As DAO.Database

On Error Resume Next
Set db = OpenDatabase(DBPath, True)
If Err.Number <> 0 Then Exit Function
db.newPassword "", newPassword
SetDatabasePassword = Err.Number = 0
db.Close

End Function




Изменить



Public Function ChangeDatabasePassword(DBPath As String, _
newPassword As String, oldPassWord As String) As Boolean
    
'Usage: Change DatabasePassword
'Parameters: sDBPath: Full Path to Access Database
'newPassword: the password
'oldPassword: the previous password
'returns true on success false otherwise

If Dir(DBPath) = "" Then Exit Function

Dim db As DAO.Database

On Error Resume Next
Set db = OpenDatabase(DBPath, True, False, ";pwd=" & oldPassWord)
If Err.Number <> 0 Then Exit Function
db.newPassword oldPassWord, newPassword
ChangeDatabasePassword = Err.Number = 0
db.Close

End Function




Сбросить



Public Function ResetPwd(sFileName As String) As Boolean
    Dim bChr As Byte
    Dim bAr(5) As Byte
    Dim fNum As Long
    Dim i As Integer
    
    On Error GoTo ErrHandler
    fNum = FreeFile
    Open sFileName For Binary As #fNum
    Seek #fNum, 66
    bAr(0) = 78
    bAr(1) = 134
    bAr(2) = 251
    bAr(3) = 236
    bAr(4) = 55
    For i = 0 To 4
'        Get #fNum, , bChr
        Put #fNum, , bAr(i)
    Next i
    Close #fNum
    ResetPwd = True
    Exit Function
ErrHandler:
    ResetPwd = False
End Function

Ответить

Номер ответа: 2
Автор ответа:
 Mihalыch



ICQ: 373-509-101 

Вопросов: 56
Ответов: 330
 Профиль | | #2 Добавлено: 25.01.05 11:47
Огромное спасибо!!!

Ответить

Номер ответа: 3
Автор ответа:
 Mihalыch



ICQ: 373-509-101 

Вопросов: 56
Ответов: 330
 Профиль | | #3 Добавлено: 25.01.05 17:04
Вот что нашел, может кому пригодится:
1. установить пароль при создании базы данных с помощью ADOX objCatalog.Create ("Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" & strPath & "; Jet OLEDB:Database Password = 1";)
2. Установить пароль на существующую базу данных с помощью ADO connection.Execute "alter database password NewPassword OldPassword". Если пароль устанавливается впервые, вместо OldPassword следует поставить null. При этом св-во Mode, объекта Connection должно быть = adModeShareExclusive.

Ответить

Номер ответа: 4
Автор ответа:
 vvv1



Вопросов: 1
Ответов: 2
 Профиль | | #4 Добавлено: 31.01.05 16:36
Извините делетанта
Как открыть базу аксес с паролем для чтения и записи?

Ответить

Номер ответа: 5
Автор ответа:
 Mihalыch



ICQ: 373-509-101 

Вопросов: 56
Ответов: 330
 Профиль | | #5 Добавлено: 31.01.05 16:47
    With Connection
        .Mode = adModeShareDenyNone
        .Provider = "Microsoft.Jet.OLEDB.4.0; Jet OLEDB:Database Password = " & Password
        .ConnectionString = Path
        .Open
    End With

Ответить

Номер ответа: 6
Автор ответа:
 vvv1



Вопросов: 1
Ответов: 2
 Профиль | | #6 Добавлено: 31.01.05 18:24
СПАСИБО!

Ответить

Номер ответа: 7
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #7 Добавлено: 31.01.05 18:24
Пример установки пароля

Project>References "Microsoft DAO 3.6 Object Library"

Public Function SetDatabasePassword(DBpath As String, newPassword As String) As Boolean '+
'Защищает базу данных паролем, если она до этого не имела пароля

'Параметры: sDBPath: Полный путь к базе данных Access
'newPassword: пароль
'В случае успеха, возвращает true, иначе false

If Dir(DBpath) = "" Then Exit Function

Dim db As DAO.Database

On Error Resume Next
Set db = OpenDatabase(DBpath, True)
If Err.Number <> 0 Then Exit Function
db.newPassword "", newPassword
SetDatabasePassword = Err.Number = 0
db.Close

End Function

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам