Artikel ini menggunakan kode ASP yang dienkapsulasi DLL yang dihasilkan oleh VB untuk terhubung ke database (mengambil database akses sebagai contoh).
Secara umum, ketika kami menggunakan ASP untuk terhubung ke database mengakses, kami biasanya melakukan operasi berikut.
'//Proconn.asp
<%
Dimproconn
setProconn = server.CreateObject ("adodb.connection")
Proconn.open "driver = {microsoft accessDriver (*. Mdb)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp")
'File dengan sufiks db.asp yang awalnya db.mdb diubah menjadi db.asp, kata sandi basis data 123
iferr.number <> 0then
Response.write "Database tidak memiliki koneksi, silakan periksa"
Respons.end
kalau tidak
Response.write "Tautan database berhasil"
Respons.end
endif
%>
Jika server dikonfigurasi, akses Proconn.asp. Jika koneksi database berhasil, output akan menjadi "koneksi database berhasil".
Namun, tingkat keamanan seperti kode ASP sangat rendah. Jika asp asli ini terlihat, maka dengan file database ini, orang lain dapat dengan mudah
Buka database Anda untuk operasi.
Jadi tugas kita ada di sini, bagaimana cara merangkum konten kunci ini?
Pertama, kita perlu menentukan metode dan objek.
Setelah memeriksa beberapa informasi di Internet, mereka terutama menggunakan VB untuk menghasilkan DLL untuk merangkumnya. Jadi kita juga harus mengadopsi metode ini, (walaupun saya belum benar -benar menggunakan VB)
Metode ini ditentukan, jadi apa saja objek yang perlu kita selimut?
Datang dan lihat semua orang
"driver = {microsoft accessDriver (*. mdb)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp")
Itu adalah kode yang paling kritis. Kode ini harus lebih baik dienkapsulasi dalam DLL yang dihasilkan dengan VB.
Alasan mengapa tidak meletakkan keseluruhan
Dimproconn
setProconn = server.CreateObject ("adodb.connection")
Proconn.open "driver = {microsoft accessDriver (*. Mdb)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp")
Semua dienkapsulasi (karena dikatakan bahwa seluruh kode koneksi dienkapsulasi) adalah karena ketika file ASP lainnya merujuk ke Proconn.asp,
Saya juga membutuhkan Proconn di dalam untuk melakukan operasi lain, dan jika dienkapsulasi, tidak nyaman untuk merujuk dan beroperasi.
(Alasan untuk penjelasan di atas dari objek enkapsulasi adalah pendapat pribadi saya. Beberapa teman mengatakan bahwa enkapsulasi keseluruhan tidak berpengaruh pada penggunaan Proconn. Saya tidak mengerti ini, beri tahu saya jika Anda mengetahuinya)
Saya hanya ingin merangkum bagian paling kritis "" "driver = {microsoft accessDriver (*. Mdb)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp") "
Menganalisis konten yang akan dienkapsulasi.
Paruh pertama adalah string:
"driver = {microsoft accessDriver (*. mdb)}; uid =; pwd = 123; dbq ="
Gunakan & untuk menghubungkan string lain di babak kedua.
String lain di babak kedua adalah nilai pengembalian dari fungsi objek server.mappath.
Berikut ini adalah proses operasi paket ini.
Pertama
Buat Proyek ActiveXDLL baru di bawah VB, ubah nama proyek proyek1 menjadi condbdll ?? Nama metode class1 diubah menjadi CS