บทความนี้ใช้รหัส ASP DLL ที่สร้างขึ้นโดย VB เพื่อเชื่อมต่อกับฐานข้อมูล (นำฐานข้อมูลการเข้าถึงเป็นตัวอย่าง)
โดยทั่วไปเมื่อเราใช้ ASP เพื่อเชื่อมต่อกับฐานข้อมูลการเข้าถึงเรามักจะดำเนินการต่อไปนี้
'//proconn.asp
-
dimproconn
setProconn = server.createObject ("adodb.connection")
proconn.open "driver = {microsoft accessDriver (*. mdb)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp")
'ไฟล์ที่มีคำต่อท้าย db.asp ที่เดิม db.mdb เปลี่ยนเป็น db.asp, รหัสผ่านฐานข้อมูล 123
iferr.number <> 0 แล้ว
Response.write "ฐานข้อมูลไม่มีการเชื่อมต่อโปรดตรวจสอบ"
Response.end
อื่น
Response.write "ลิงก์ฐานข้อมูลสำเร็จ"
Response.end
endif
-
หากมีการกำหนดค่าเซิร์ฟเวอร์ให้ Access Proconn.asp หากการเชื่อมต่อฐานข้อมูลสำเร็จเอาต์พุตจะเป็น "การเชื่อมต่อฐานข้อมูลสำเร็จ"
อย่างไรก็ตามระดับความปลอดภัยของรหัส ASP ต่ำมาก หากเห็นต้นฉบับ ASP นี้ด้วยไฟล์ฐานข้อมูลนี้
เปิดฐานข้อมูลของคุณสำหรับการทำงาน
ดังนั้นงานของเราอยู่ที่นี่วิธีการห่อหุ้มเนื้อหาคีย์เหล่านี้อย่างไร
ก่อนอื่นเราต้องกำหนดวิธีการและวัตถุ
หลังจากตรวจสอบข้อมูลบางอย่างบนอินเทอร์เน็ตพวกเขาส่วนใหญ่ใช้ VB เพื่อสร้าง DLL เพื่อห่อหุ้มพวกเขา ดังนั้นเราควรใช้วิธีนี้ด้วย (แม้ว่าฉันจะยังไม่ได้ใช้ VB จริงๆ)
วิธีการถูกกำหนดดังนั้นวัตถุที่เราต้องห่อหุ้มคืออะไร?
มาดูทุกคน
"driver = {Microsoft AccessDriver (*. mdb)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp")
มันเป็นรหัสที่สำคัญที่สุด รหัสนี้ควรจะห่อหุ้มได้ดีกว่าใน DLL ที่สร้างขึ้นด้วย VB
เหตุผลที่ไม่ใส่ทั้งหมด
dimproconn
setProconn = server.createObject ("adodb.connection")
proconn.open "driver = {microsoft accessDriver (*. mdb)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp")
ทั้งหมดถูกห่อหุ้ม (เพราะมีการกล่าวว่ารหัสการเชื่อมต่อทั้งหมดถูกห่อหุ้ม) เป็นเพราะเมื่อไฟล์ ASP อื่น ๆ อ้างถึง proconn.asp,
ฉันยังต้องการ proconn ภายในเพื่อดำเนินการอื่น ๆ และหากห่อหุ้มมันไม่สะดวกในการอ้างอิงและการทำงาน
(เหตุผลสำหรับคำอธิบายข้างต้นของวัตถุห่อหุ้มคือความเห็นส่วนตัวของฉันเพื่อนบางคนบอกว่าการห่อหุ้มโดยรวมไม่มีผลต่อการใช้ Proconn ฉันไม่เข้าใจสิ่งนี้โปรดบอกฉันว่าคุณรู้ว่ามัน)
ฉันต้องการห่อหุ้มส่วนที่สำคัญที่สุด "" driver = {Microsoft AccessDriver (*. mdb)}; uid =; pwd = 123; dbq = "& server.mappath (" db.asp ")"
วิเคราะห์เนื้อหาที่จะห่อหุ้ม
ครึ่งแรกของมันคือสตริง:
"driver = {Microsoft AccessDriver (*. mdb)}; uid =; pwd = 123; dbq ="
ใช้ & เพื่อเชื่อมต่อสตริงอื่นในครึ่งหลัง
สตริงอื่นในครึ่งหลังคือค่าส่งคืนของฟังก์ชันวัตถุ Server.Mappath
ต่อไปนี้เป็นกระบวนการดำเนินการของแพ็คเกจนี้
อันดับแรก
สร้างโครงการ ActiveXdll ใหม่ภายใต้ VB เปลี่ยนชื่อโครงการโครงการ 1 เป็น condbdll ?? ชื่อของเมธอด Class1 ถูกเปลี่ยนเป็น CS