Cet article utilise le code ASP encapsulé DLL généré par VB pour se connecter à la base de données (en prenant la base de données d'accès comme exemple).
De manière générale, lorsque nous utilisons ASP pour nous connecter aux bases de données d'accès, nous effectuons généralement les opérations suivantes.
'//Proonn.asp
<%
dalprocn
setProonn = server.createObject ("adodb.connection")
Proconn.open "Driver = {Microsoft AccessDriver (*. MDB)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp")
'Un fichier avec le suffixe db.asp qui était à l'origine db.mdb a changé en db.asp, mot de passe de la base de données 123
iFerr.Number <> 0THEN
Response.Write "La base de données n'a pas de connexion, veuillez vérifier"
Réponse.
autre
Response.Write "Lien de base de données avec succès"
Réponse.
endire
%>
Si le serveur est configuré, accédez à ProCNCon.asp. Si la connexion de la base de données est réussie, la sortie sera "la connexion de la base de données réussie".
Cependant, le niveau de sécurité du code ASP est très faible. Si cet original ASP est vu, avec ce fichier de base de données, d'autres peuvent facilement
Ouvrez votre base de données pour le fonctionnement.
Donc, notre tâche est ici, comment encapsuler ce contenu clé?
Tout d'abord, nous devons déterminer les méthodes et les objets.
Après avoir vérifié certaines informations sur Internet, ils utilisent principalement VB pour générer des DLL pour les encapsuler. Nous devons donc également adopter cette méthode (même si je n'ai pas encore vraiment utilisé VB)
La méthode est déterminée, alors quels sont les objets dont nous avons besoin pour encapsuler?
Venez voir tout le monde
"Driver = {Microsoft AccessDriver (*. MDB)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp")
C'est le code le plus critique. Ce code doit être mieux encapsulé dans une DLL générée avec VB.
La raison pour laquelle ne pas mettre le tout
dalprocn
setProonn = server.createObject ("adodb.connection")
Proconn.open "Driver = {Microsoft AccessDriver (*. MDB)}; uid =; pwd = 123; dbq =" & server.mappath ("db.asp")
Tous sont encapsulés (car il est dit que l'ensemble du code de connexion est encapsulé) est dû au fait que lorsque d'autres fichiers ASP se réfèrent à ProCCON.asp,
J'ai également besoin du proconn à l'intérieur pour effectuer d'autres opérations, et s'ils sont encapsulés, il n'est pas pratique de référencer et de fonctionner.
(La raison de l'explication ci-dessus de l'objet d'encapsulation est mon opinion personnelle. Certains amis ont dit que l'encapsulation globale n'a aucun effet sur l'utilisation de ProCCC. Je ne comprends pas cela, dites-moi si vous le savez)
Je veux seulement résumer la partie la plus critique "" Driver = {Microsoft AccessDriver (*. MDB)}; uid =; pwd = 123; dbq = "& server.mappath (" db.asp ")"
Analysez le contenu à encapsuler.
La première moitié est une chaîne:
"Driver = {Microsoft AccessDriver (*. MDB)}; uid =; pwd = 123; dbq ="
Utiliser et pour connecter une autre chaîne dans la seconde moitié.
Une autre chaîne dans la seconde moitié est la valeur de retour de la fonction d'objet server.mappath.
Ce qui suit est le processus de fonctionnement de ce package.
d'abord
Créez un nouveau projet ActiveXDLL sous VB, modifiez le nom du projet Project1 en condbdll ?? Le nom de la méthode Class1 est changé en cs