Transformer le code ASP en composants n'est pas seulement d'accélérer l'ASP, mais aussi de mieux protéger votre propre code. Écrivons un tutoriel sur l'écriture d'ASP dans les DLL. Suivons le rédacteur en chef de Error New.
Composants côté serveur
Tout d'abord, les composants du côté serveur doivent être différents de ceux du côté client. Les composants du côté client sont transmis sur le réseau et s'appuient sur HTML pour fonctionner. Ils ne peuvent être utiles que dans IE. Cependant, les composants du côté serveur s'exécutent sur le serveur et effectuent diverses opérations sur le serveur. Par conséquent, tous les navigateurs peuvent en profiter, et il s'appuie sur le serveur plutôt que sur le navigateur.
Lorsque IIS est invité à exécuter un programme ASP, il trouvera d'abord le code entre les balises <% %> dans le fichier ASP et l'exécutera (ou le code entre <script runat = server> </cript>). Si ce programme ASP a déjà été appelé, il utilisera le programme compilé en mémoire pour retourner le code HTML à l'utilisateur. Sinon, il se recompilera. Ici, ASP a un peu plus d'avantage de vitesse que CGI, car CGI utilise un fil pour chaque demande. Cela consomme considérablement les ressources du serveur.
Voulez-vous que le programme que vous avez écrit exécute par vous-même par vous-même!?! Maintenant, vous pouvez le faire! En utilisant VB5 (bien sûr, c'est VB6 maintenant), vous pouvez créer des bibliothèques liées dynamiques (fichier DLL), qui peuvent être exécutées directement sur IIS (s'il existe un fichier ASP à demander).
Exigences du système et des logiciels
Vous avez besoin d'un système d'exploitation 32 bits pour exécuter ASP. Bien sûr, vous devez également installer IIS ou PWS. Notre programme suivant a été développé dans l'environnement Windows95 + PWS + VB5.
Commençons
Démarrez votre VB et sélectionnez l'icône ActiveX. Cette icône peut être trouvée dans le nouveau projet! VB fournira un nom de projet par défaut (Project1) et le nom de classe (classe1). Nous changerons les deux noms. Avant de modifier le nom, veuillez d'abord confirmer que nous avons la bibliothèque d'objets Microsoft Active Server Pages, ce qui est très utile dans nos programmes. Sélectionnez "Project" dans le menu et sélectionnez "Référence", et la fenêtre "référence" apparaîtra.
Sélectionnez la bibliothèque d'objets Microsoft Active Server.
Nom des projets et des cours
Maintenant, nommons Project1 et Class1 selon nos hobbies! Les nommer est également très important. Nous utiliserons ce nom de projet et le nom de la classe pour créer une instance de ce composant à l'avenir! Cela sera introduit en détail plus tard.
Je ne veux pas en dire plus sur la façon de changer le nom!
Notre nom de projet est changé en exemple et le nom de classe est Helloword
Comment utiliser l'ingénierie et les cours
Nous avons maintenant notre propre projet (exemple1) et le nom de classe (Helloworld). À l'avenir, nous utiliserons leurs noms pour faire référence à ce composant dans le code ASP. Dans ASP, nous le référons comme ça, comme suit:
Set objReference = server.createObject ("projectName.className")
La citation de notre projet est:
Set objReference = Server.CreateObject ("Example1.Helloworld")
Maintenant, nous pouvons utiliser l'objréférence pour appeler la fonction et le sous-programme que nous avons créé dans le composant. Ensuite, nous rédigerons un sous-programme Sayhello, et notre code pour l'exécuter est le suivant:
(%
Set objReference = Server.CreateObject ("Example1.Helloworld")
ObjReference.sayhello
%>
Afin d'utiliser des méthodes ASP dans la classe Helloword, vous devez écrire une surpage sur cette classe
Sous-fonction. Comme suit:
Public sub onstartpage (passcriptingContext comme scriptingContext)
Définir myscriptingContext = passcriptingContext
Sub-Sub
Maintenant, peu importe lorsque l'utilisateur accède à un fichier ASP avec ce composant, IIS enverra le ScriptingContext à notre objet. Ce ScriptingContext comprend toutes les méthodes et propriétés ASP. En termes de mise en œuvre, cela nous permet d'accéder à tous les objets ASP. Voir le code suivant:
Public sub onstartpage (passcriptingContext comme scriptingContext)
Définir myscriptingContext = passcriptingContext
Définir MyApplication = MyScriptingContext.Application
Définir myRequest = myscriptingContext.request
Définir myResponse = myscriptingContext.Response
Définir MyServer = MyScriptingContext.Server
Définissez MySession = MyScriptingContext.Session
Sub-Sub
À l'avenir, nous pouvons utiliser MyApplication dans VB au lieu de l'application dans ASP, et de la même manière, il peut remplacer la demande, le serveur ..., mais nous voulons déclarer ces variables avant surpage:
MyScriptingContext privé comme scriptingContext
Myapplication privée comme application
MyRequest privé comme demande
MyResponse privée comme réponse
MyServer privé comme serveur
MySession privée comme session
Objets utilisant ASP
Nos variables peuvent désormais être utilisées comme des objets ASP standard! Par exemple, nous utilisons souvent request.form () dans ASP pour collecter des données pour soumettre des formulaires. Maintenant, nous implémentons cette fonction dans notre VB, le code est le suivant:
Implémenté dans ASP:
(%
Mytempvariable = request.form ("nom d'utilisateur")
Réponse.write ("vous avez entré" et mytempvariable & "comme nom d'utilisateur")
%>
Implémenté dans VB:
Mytempvariable = myRequest.form ("nom d'utilisateur")
MyResponse.write ("vous avez entré" et mytempvariable & "comme nom d'utilisateur")
En utilisant MyResponse au lieu de la réponse, nous pouvons utiliser toutes les méthodes de réponse. Bien sûr, le nom MyResponse peut être utilisé avec désinvolture et vous pouvez même choisir la réponse.
Une autre chose que nous devons noter est que nous devons écrire la sous-fonction OneNDPage dans la classe que nous avons créée, et cette surpage surpose est le contraire! OnStartPage est de créer un objet, et OneNndPage doit détruire l'objet.
Public Sub OneendPage ()
Définir MyScriptingContext = Rien
Définir myapplication = rien
Définissez MyRequest = Rien
Définir myResponse = rien
Définir MyServer = Rien
Définir MySession = rien
Sub-Sub
Méthode Sayhello
Créons une sous-fonction pour afficher "Holle World". Cette méthode Sayhello n'est qu'une sous-fonction dans la classe Helloworld. Nous utiliserons la méthode suivante pour l'afficher dans ASP à l'avenir
(%
Set objReference = Server.CreateObject ("Example1.Helloworld")
ObjReference.sayhello
%>
Le programme de Sayhello est très simple!
Sub-Sayhello public ()
MyResponse.write ("Hello World")
Sub-Sub
Maintenant qu'un petit composant est écrit, le reste est de compiler ce composant, de le enregistrer dans le menu "Project" et vous pouvez choisir n'importe quel nom. Utilisons Exemple1.vbp! Sélectionnez ensuite "Faire Exemple1.dll" dans le menu et compilez-le dans un fichier DLL. Un composant est vraiment terminé!
Notez que si vous compilez ce composant, vous devez d'abord désactiver votre PWS, puis compiler ce composant. Sinon, VB vous dira que certains composants sont utilisés.
Utilisez nos propres composants dans ASP.
Lorsque vous corrigez l'erreur dans la compilation et compile avec succès le projet Exemple1, vous devez éliminer votre éditeur HTML préféré et noter l'instruction suivante et l'enregistrer en tant que fichier ASP.
〈Html>
〈Tête>
〈Title> Exemple 1 〈/ Title>
〈/ Tête>
〈Corps>
(%
Set objReference = Server.CreateObject ("Example1.Helloworld")
ObjReference.sayhello
%>
〈/ Corps>
〈/ Html>
Après avoir coulé, vous pouvez voir les résultats:
Bonjour le monde
Enregistrer les composants
Si vous souhaitez partager vos composants avec vos amis et voisins, vous devez enregistrer vos composants sur votre système. Nous utilisons généralement le regsvr32.exe pour enregistrer les composants. Après l'inscription, vos composants apparaîtront dans le répertoire Windows / System de Win95 / Win98. Voici un exemple d'enregistrement:
Regsvr32.exe c: /example1/example1.dll
Dans votre système, VB s'inscrira automatiquement pour vous, vous utilisez donc rarement le regsvr32.exe
Nous venons d'écrire un très petit composant ici. Vous pouvez écrire vos propres composants plus grands et utiliser de nombreux contrôles dans VB.
La clé pour écrire des DLL par ASP est de savoir comment développer des composants DLL. Développer des composants DLL n'est pas un code compliqué, et il faut apprendre à travers vos propres efforts.