กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
356 2
URL.หัวข้อ /
URL
เรียนถาม อ. สุภาพ หรือ อ. BAdman อีกครั้งครับเรื่อง AllowBypassKey
มีท่านหนึ่งได้สอบถามคำถามข้างล่างไว้ที่
http://pantip.inet.co.th/tech/software/topic/SA661216.html
"ป้องกันการกดแป้น Shift ใน Access เราจะทำการป้องกันไม่ให้ ผู้ใช้เข้ามาในฐานข้อมูลที่เราสร้าง จาก Access โดยการกด Shift อย่างไร
หรือ จะตั้งค่า Allow BypassKey อย่างไร ช่วยด้วยครับ
(ไม่ต้องการตั้งค่า password จากโปรแกรมที่มีอยู่) ขอบคุณครับ
จากคุณ : job [9 เม.ย. 2544 - 20:59:33] "
คำตอบคือ ให้ศึกษาจาก Help ของ Access โดยค้นคำว่า
AllowBypassKey แล้วศึกษาจากตัวอย่างที่ให้มา
หรือถ้าไม่อยากอ่าน ก็ให้ทำการคัดลอกโค้ดข้างล่างไปใช้ได้เลย
Sub SetStartupProperties()
ChangeProperty "AllowBypassKey", dbBoolean, True
End Sub
Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer
Dim dbs As Database, prp As Property
Const conPropNotFoundError = 3270
Set dbs = CurrentDb
On Error GoTo Change_Err
dbs.Properties(strPropName) = varPropValue
ChangeProperty = True
Change_Bye:
Exit Function
Change_Err:
If Err = conPropNotFoundError Then ' Property not found.
Set prp = dbs.CreateProperty(strPropName, _
varPropType, varPropValue)
dbs.Properties.Append prp
Resume Next
Else
' Unknown error.
ChangeProperty = False
Resume Change_Bye
End If
End Function
โดยจะต้องมีการเรียกใช้ StartUp ใน Tools ด้วย
จากคุณ สุภาพ เมื่อวันที่ 4 พฤศจิกายน 2544 เวลา 3:50:03 น.
ใช้ที่โมดูล หรือเปล่าครับ ลองทำดูแล้วยังไม่ได้ หรือต้อง สร้างมาโครเพื่อ run โมดูลดัวนี้อีกครั้ง แล้วจะเรียกใช้ StartUp จากมาโคร หรือเปล่าครับ
จากคุณ ผู้สนใจ เมื่อวันที่ 17 เมษายน 2544 เวลา 2:19:19 น.
ขั้นตอนการทำ
1. คัดลอกโค้ดข้างบนลงไปไว้ใน Module หรือ Form ใดๆ ก็ได้ เมื่ออยู่ใน Visual Basic Editor ให้เอาเคอร์เซอร์ไปวางไว้ที่ Sub SetStartupProperties() แล้วกด F5 เพื่อ Run
2. เข้าไปที่ Tools>StartUP แล้วเลือก Form ที่ต้องการจะใช้เปิดเมื่อเข้าสู่โปรแกรมในช่อง Display Form: แล้วคลิก OK
ส่วนประกอบอื่นๆ ในนี้ค่อยมาเรียนรู้เพิ่มเติมได้เองไม่ยาก
3. ให้ปิดไฟล์นี้แล้วเข้ามาใหม่ โดยให้ลอกกด Shift ดู จะเห็นว่าไม่มีผล Form ที่ได้เลือกในข้อ 2 ก็จะแสดงออกมา
ข้อดีของการทำตรงนี้ คือ ไม่ต้องการให้ผู้ใช้เข้ามาดูสิ่งที่เราไม่ต้องการ หรือ ต้องการให้ผู้ใช้เข้าทางเดียวและออกทางเดียวเท่านั้น
ยังมีเทคนิคอีกมากเกี่ยวกับเรื่องนี้ ไม่เข้าใจหรือสงสัยก็เข้ามาแลกเปลี่ยนกันได้ครับ
ข้อควรระวัง ให้ลองทำกับไฟล์อื่นก่อน อย่าพึ่งทำกับไฟล์จริง ถ้าเผลอทำไปแล้ว ก็ให้โวยวายมาได้จะบอกวิธีแก้ให้ทีหลังครับ
จากคุณ สุภาพ เมื่อวันที่ 17 เมษายน 2544 เวลา 5:46:43 น.
ได้ทำการทดสอบแล้ว ขอบคุณมากๆเลยครับ (สำหรับผมคิดว่า Access เป็นฐานข้อมูลที่น่าใ้ช้ และน่าสนใจครับ คุณสุภาพมีความเห็นอย่างไรครับ)
จากคุณ ผู้สนใจ เมื่อวันที่ 17 เมษายน 2544 เวลา 12:26:00 น.
เห็นด้วยครับ
เพราะเรียนรู้ได้ไม่ยาก เพราะมีตำรา หรือ คนที่มีความรู้ด้านนี้พร้อมที่จะให้คำแนะนำหรือแลกเปลี่ยนประสบการณ์มากมาย และยังมี web site เกี่ยวกับโปรแกรมนี้หลายที่
เมื่อต้องการที่จะขยายไปสู่ SQL Server ก็สามารถทำได้ง่าย
มีอะไรก็เข้ามาแลกเปลี่ยนกันได้ครับ ผมจะได้เรียนรู้ไปด้วย
จากคุณ สุภาพ เมื่อวันที่ 17 เมษายน 2544 เวลา 21:57:08 น.
ขอบคุณมากๆ เช่นกันครับ ผมกำลังศึกษาเรื่องนี้อยู่เช่นกัน เลยถามไปที่ http://www.pantio.com แล้วสมาชิกแนะนำให้มาอ่านที่นี่ครับ
จากคุณ นิพนธ์ เมื่อวันที่ 5 พฤษภาคม 2545 เวลา 15:07:05 น.
ลองทำดูแล้วไม่ได้ผลครับ หากท่านที่ทำได้ช่วยแนะนำให้ละเอียดเพิ่มเป็นวิทยาทานด้วยครับ
ขอบคุณครับ
http://pantip.inet.co.th/tech/software/topic/SA661216.html
"ป้องกันการกดแป้น Shift ใน Access เราจะทำการป้องกันไม่ให้ ผู้ใช้เข้ามาในฐานข้อมูลที่เราสร้าง จาก Access โดยการกด Shift อย่างไร
หรือ จะตั้งค่า Allow BypassKey อย่างไร ช่วยด้วยครับ
(ไม่ต้องการตั้งค่า password จากโปรแกรมที่มีอยู่) ขอบคุณครับ
จากคุณ : job [9 เม.ย. 2544 - 20:59:33] "
คำตอบคือ ให้ศึกษาจาก Help ของ Access โดยค้นคำว่า
AllowBypassKey แล้วศึกษาจากตัวอย่างที่ให้มา
หรือถ้าไม่อยากอ่าน ก็ให้ทำการคัดลอกโค้ดข้างล่างไปใช้ได้เลย
Sub SetStartupProperties()
ChangeProperty "AllowBypassKey", dbBoolean, True
End Sub
Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer
Dim dbs As Database, prp As Property
Const conPropNotFoundError = 3270
Set dbs = CurrentDb
On Error GoTo Change_Err
dbs.Properties(strPropName) = varPropValue
ChangeProperty = True
Change_Bye:
Exit Function
Change_Err:
If Err = conPropNotFoundError Then ' Property not found.
Set prp = dbs.CreateProperty(strPropName, _
varPropType, varPropValue)
dbs.Properties.Append prp
Resume Next
Else
' Unknown error.
ChangeProperty = False
Resume Change_Bye
End If
End Function
โดยจะต้องมีการเรียกใช้ StartUp ใน Tools ด้วย
จากคุณ สุภาพ เมื่อวันที่ 4 พฤศจิกายน 2544 เวลา 3:50:03 น.
ใช้ที่โมดูล หรือเปล่าครับ ลองทำดูแล้วยังไม่ได้ หรือต้อง สร้างมาโครเพื่อ run โมดูลดัวนี้อีกครั้ง แล้วจะเรียกใช้ StartUp จากมาโคร หรือเปล่าครับ
จากคุณ ผู้สนใจ เมื่อวันที่ 17 เมษายน 2544 เวลา 2:19:19 น.
ขั้นตอนการทำ
1. คัดลอกโค้ดข้างบนลงไปไว้ใน Module หรือ Form ใดๆ ก็ได้ เมื่ออยู่ใน Visual Basic Editor ให้เอาเคอร์เซอร์ไปวางไว้ที่ Sub SetStartupProperties() แล้วกด F5 เพื่อ Run
2. เข้าไปที่ Tools>StartUP แล้วเลือก Form ที่ต้องการจะใช้เปิดเมื่อเข้าสู่โปรแกรมในช่อง Display Form: แล้วคลิก OK
ส่วนประกอบอื่นๆ ในนี้ค่อยมาเรียนรู้เพิ่มเติมได้เองไม่ยาก
3. ให้ปิดไฟล์นี้แล้วเข้ามาใหม่ โดยให้ลอกกด Shift ดู จะเห็นว่าไม่มีผล Form ที่ได้เลือกในข้อ 2 ก็จะแสดงออกมา
ข้อดีของการทำตรงนี้ คือ ไม่ต้องการให้ผู้ใช้เข้ามาดูสิ่งที่เราไม่ต้องการ หรือ ต้องการให้ผู้ใช้เข้าทางเดียวและออกทางเดียวเท่านั้น
ยังมีเทคนิคอีกมากเกี่ยวกับเรื่องนี้ ไม่เข้าใจหรือสงสัยก็เข้ามาแลกเปลี่ยนกันได้ครับ
ข้อควรระวัง ให้ลองทำกับไฟล์อื่นก่อน อย่าพึ่งทำกับไฟล์จริง ถ้าเผลอทำไปแล้ว ก็ให้โวยวายมาได้จะบอกวิธีแก้ให้ทีหลังครับ
จากคุณ สุภาพ เมื่อวันที่ 17 เมษายน 2544 เวลา 5:46:43 น.
ได้ทำการทดสอบแล้ว ขอบคุณมากๆเลยครับ (สำหรับผมคิดว่า Access เป็นฐานข้อมูลที่น่าใ้ช้ และน่าสนใจครับ คุณสุภาพมีความเห็นอย่างไรครับ)
จากคุณ ผู้สนใจ เมื่อวันที่ 17 เมษายน 2544 เวลา 12:26:00 น.
เห็นด้วยครับ
เพราะเรียนรู้ได้ไม่ยาก เพราะมีตำรา หรือ คนที่มีความรู้ด้านนี้พร้อมที่จะให้คำแนะนำหรือแลกเปลี่ยนประสบการณ์มากมาย และยังมี web site เกี่ยวกับโปรแกรมนี้หลายที่
เมื่อต้องการที่จะขยายไปสู่ SQL Server ก็สามารถทำได้ง่าย
มีอะไรก็เข้ามาแลกเปลี่ยนกันได้ครับ ผมจะได้เรียนรู้ไปด้วย
จากคุณ สุภาพ เมื่อวันที่ 17 เมษายน 2544 เวลา 21:57:08 น.
ขอบคุณมากๆ เช่นกันครับ ผมกำลังศึกษาเรื่องนี้อยู่เช่นกัน เลยถามไปที่ http://www.pantio.com แล้วสมาชิกแนะนำให้มาอ่านที่นี่ครับ
จากคุณ นิพนธ์ เมื่อวันที่ 5 พฤษภาคม 2545 เวลา 15:07:05 น.
ลองทำดูแล้วไม่ได้ผลครับ หากท่านที่ทำได้ช่วยแนะนำให้ละเอียดเพิ่มเป็นวิทยาทานด้วยครับ
ขอบคุณครับ
2 Reply in this Topic. Dispaly 1 pages and you are on page number 1
1 @R01449
ลองศึกษาจากตัวอย่างข้างล่างนี้ดูนะครับ
Access 97 = http://www.utteraccess.com/forums/showthreaded.php?Cat=&Board=codearchive&Number=113314&page=0&view=expanded&sb=5&o=&fpart=1
Access 2000-02 = http://www.utteraccess.com/forums/showthreaded.php?Cat=&Board=codearchive&Number=153345&page=0&view=expanded&sb=5&o=&fpart=1
2 @R01459
ขอบคุณครับ อาจารย์ 8 ปีแห่งการค้นหาในที่สุดก็พบจนได้
Time: 0.1097s