Chào mừng đến với Diễn đàn Dân Kế Toán - Kế toán tổng hợp thực tế.
Trang 1 của 3 123 CuốiCuối
Kết quả 1 đến 10 của 21
  1. #1
    Ngày tham gia
    Nov 2015
    Bài viết
    4

    Đặt password cho Front End bằng VB

    :xinloinhe:

    Mình đang muốn làm cái phần đặt pass cho Front End bằng VB thay vì dùng cái mặc định của Access.
    Và ý tưởng của mình là trên Front End sẽ tạo 1 nút mở một cái file Access Changepass khác có cùng thư mục với Front End để đổi pass cho Front End .
    Nhưng vấn đề nằm ở chỗ mình đã thử 3 cách từ dùng Shell, hàm API mà nó chỉ có thể mở pm Access nên chứ không mở cái file Changepass.
    Bác nào có cách mở 1 pm access từ 1 pm access khác không ?
    Hay có cách nào để đổi pass hay hơn thì chỉ em với .
    :k5429592:

  2. #2
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Đặt password cho Front End bằng VB




    Trích dẫn Gửi bởi glasseggs
    :xinloinhe:

    Mình đang muốn làm cái phần đặt pass cho Front End bằng VB thay vì dùng cái mặc định của Access.
    Và ý tưởng của mình là trên Front End sẽ tạo 1 nút mở một cái file Access Changepass khác có cùng thư mục với Front End để đổi pass cho Front End .
    Nhưng vấn đề nằm ở chỗ mình đã thử 3 cách từ dùng Shell, hàm API mà nó chỉ có thể mở pm Access nên chứ không mở cái file Changepass.
    Bác nào có cách mở 1 pm access từ 1 pm access khác không ?
    Hay có cách nào để đổi pass hay hơn thì chỉ em với .
    :k5429592:
    1/ Dùng ngay một table và một form đổi pass ngay trong file của bạn ===> Cách này dễ nhất
    2/ Dùng file access khác thì muốn mở file này hãy dùng kỹ thuật DAO hoặc ADODB (Dùng DAO đơn giản hơn ADOD8-)
    Thân

  3. #3
    Ngày tham gia
    Nov 2015
    Bài viết
    0
    Ðề: Đặt password cho Front End bằng VB

    Cách 1 dễ nhất nhưng cũng không an toàn nhất,nó lưu pass vào table.
    Em muốn dùng phần đặt pass của chính access cơ bác. Mà cái DAO thì em chịu.

  4. #4
    Ngày tham gia
    Aug 2015
    Bài viết
    5
    Ðề: Đặt password cho Front End bằng VB




    Trích dẫn Gửi bởi glasseggs
    Cách 1 dễ nhất nhưng cũng không an toàn nhất,nó lưu pass vào table.
    Em muốn dùng phần đặt pass của chính access cơ bác. Mà cái DAO thì em chịu.
    Đây là một kỹ thuật DAO đơn giản



    Mã nguồn PHP:
    [COLOR=#000000]
    Dim AppPass [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Database Dim rPass [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Recodset Dim TenTapTin [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]String Set TenTapTin [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]CurrentProject[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Path [/COLOR][COLOR=#007700]& [/COLOR][COLOR=#DD0000]"\PassChange.mdb" [/COLOR][COLOR=#0000BB]Set AppPass [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]DBEngine[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]0[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]OpenDatabase[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]TenTapTin[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Set rPass [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]AppPass[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]OpenRecordset[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"tblPass"[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]dbOpenTable[/COLOR][COLOR=#007700]) ................... [/COLOR
    Nhớ chọn Microsof DAO 3.x Object Library trong Reference

  5. #5
    Ngày tham gia
    Nov 2015
    Bài viết
    15
    Ðề: Đặt password cho Front End bằng VB

    Cho em hỏi chút ,đoạn code này cho vào sự kiện Click của command button à.
    Mà khi em chạy nó báo lỗi :
    Object required ở dòng Set TenTapTin =
    Mà còn cái này nữa :
    \PassChange.mdb : là cái file sẽ mở phải không ?
    Vậy cái tblPass là cái gì hở bác ?

  6. #6
    Ngày tham gia
    May 2016
    Bài viết
    0
    Ðề: Đặt password cho Front End bằng VB




    Trích dẫn Gửi bởi glasseggs
    Cho em hỏi chút ,đoạn code này cho vào sự kiện Click của command button à.
    Mà khi em chạy nó báo lỗi :
    Object required ở dòng Set TenTapTin =
    Mà còn cái này nữa :
    \PassChange.mdb : là cái file sẽ mở phải không ?
    Vậy cái tblPass là cái gì hở bác ?
    Cái này bác đó ví dụ mở một cái bảng lên cho vui thôi. Có thể 2 bác ko hiểu ý nhau.

  7. #7
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Đặt password cho Front End bằng VB




    Trích dẫn Gửi bởi glasseggs
    Cho em hỏi chút ,đoạn code này cho vào sự kiện Click của command button à.
    Mà khi em chạy nó báo lỗi :
    Object required ở dòng Set TenTapTin =
    Mà còn cái này nữa :
    \PassChange.mdb : là cái file sẽ mở phải không ?
    Vậy cái tblPass là cái gì hở bác ?
    PassChange.mdb là file Access cần mở nằm chung với thư mục của file Access hiện hành
    tblPass tà tên Table trong cái PassChange.mdb cần mở, còn mở để lam gì là tùy ý bạn
    Thân

  8. #8
    Ngày tham gia
    Nov 2015
    Bài viết
    0
    Ðề: Đặt password cho Front End bằng VB

    Mấy bác ơi nhưng em chạy đoạn này nó vẫn lỗi :
    Object required ở dòng Set TenTapTin =

    Và nếu ở file PassChange.mdb em không muốn mở cái table đó lên mà chỉ muốn mở cái PassChange.mdb nên có được không ?
    Vì trong file PassChange.mdb này không có table nào mà chỉ có 1 cái Form dùng để đổi pass bằng code cho cái file khác thôi.
    -----------------------------------------------------------------------------------------
    Có lẽ bác hiểu nhầm ý em thật. Em xin trình bày rõ lại như sau :
    Em có 2 file ChangePass.accdb và CRMS.accdb (Front End)
    File ChangePass.accdb nhằm mục đích đổi pass cho CRMS.accdb (Pass này là pass của Access quản lý chứ không phải pass cho lưu vào table nhé )

    Và file ChangePass.accdb chỉ có 1 cái Form có 2 textbox Oldpass và Newpass và 1 nút có code như sau :



    Mã:
    Sub setPass(oldPass as String, newPass As String) 
    Set tempDB = OpenDatabase(CurrentProject.Path & "\" & "CRMS.accdb ", True, False, "MS Access;PWD=" & oldPass)
    tempDB.NewPassword oldPass, NewPass
    tempDB.Close
    End Sub
    
    Private Sub Command1_Click()
    setPass  Oldpass,  Newpass
    end sub
    Mà vấn đề là muốn đổi pass như thế thì phải đóng cái CRMS.accdb lại và mở cái ChangePass.accdb ra. Thế nên em muốn tạo 1 cái nút trên CRMS.accdb để mở cái ChangePass.accdb ra cho nó Pro .

  9. #9
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Đặt password cho Front End bằng VB




    Trích dẫn Gửi bởi glasseggs
    Mấy bác ơi nhưng em chạy đoạn này nó vẫn lỗi :
    Object required ở dòng Set TenTapTin =

    Và nếu ở file PassChange.mdb em không muốn mở cái table đó lên mà chỉ muốn mở cái PassChange.mdb nên có được không ?
    Vì trong file PassChange.mdb này không có table nào mà chỉ có 1 cái Form dùng để đổi pass bằng code cho cái file khác thôi.
    -----------------------------------------------------------------------------------------
    Có lẽ bác hiểu nhầm ý em thật. Em xin trình bày rõ lại như sau :
    Em có 2 file ChangePass.accdb và CRMS.accdb (Front End)
    File ChangePass.accdb nhằm mục đích đổi pass cho CRMS.accdb (Pass này là pass của Access quản lý chứ không phải pass cho lưu vào table nhé )

    Và file ChangePass.accdb chỉ có 1 cái Form có 2 textbox Oldpass và Newpass và 1 nút có code như sau :



    Mã:
    Sub setPass(oldPass as String, newPass As String) 
    Set tempDB = OpenDatabase(CurrentProject.Path & "\" & "CRMS.accdb ", True, False, "MS Access;PWD=" & oldPass)
    tempDB.NewPassword oldPass, NewPass
    tempDB.Close
    End Sub
    
    Private Sub Command1_Click()
    setPass  Oldpass,  Newpass
    end sub
    Mà vấn đề là muốn đổi pass như thế thì phải đóng cái CRMS.accdb lại và mở cái ChangePass.accdb ra. Thế nên em muốn tạo 1 cái nút trên CRMS.accdb để mở cái ChangePass.accdb ra cho nó Pro .
    Vậy thì dùng thử hàm Sheel xem sao nhé
    Thân

  10. #10
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Đặt password cho Front End bằng VB

    Nói "một câu" ngắn gọn:

    Bạn glasseggs không nên "cố chấp" cho cái quan điểm của mình khi làm cái vụ này.

    Vì nó phá sản ngay cái ý tưởng mở một cái form từ mdb khác để thay đổi cái password của cái mdb hiện hành (tức cái Front End đang mở của bạn). Một lẽ đơn giản là nó bị đụng về quyền truy cập. Bởi cái Front End đang mở, nó mở theo một file ldb để quản lý cái vụ truy cập. Một remote khác truy cập vào nó sẽ bị "đụng" ngay cái ldb này.

    Với một người đã có một ít năm làm việc với Access, tôi chỉ khuyên bạn là hãy suy nghĩ một cách đơn giản, đừng tự gây khó cho mình quá.

 

 
Trang 1 của 3 123 CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •