GETOBJECT |
Demande d'objet |
|---|---|
| ASP 3.0 | |
Syntaxe
| Function GetObject([pathname][,class]) |
Paramètres
| Nom | Description |
|---|---|
| classe | Ce paramètre permet d'indiquer la classe d'objet à utiliser : |
| pathname | Ce paramètre permet d'indiquer le nom du fichier contenant l'objet |
Description
Cette fonction permet de demander la référence de l'objet ActiveX ou l'OLE.
Remarques
- La fonction GetObject permet d'instancier ou de récupérer une référence vers un objet ActiveX ou OLE déjà existant. Elle est très utile lorsqu'on souhaite manipuler des ressources externes comme des fichiers Excel, Word ou des objets COM personnalisés. Cela permet d'intégrer des composantes externes dans une application ASP côté serveur.
- Le paramètre pathname est généralement utilisé pour indiquer le chemin vers un fichier existant, comme un document .xls ou .doc. Ce fichier sert de base pour créer l'objet lié, que l'on pourra ensuite manipuler via les méthodes de l'objet. C'est donc un point d'entrée vers des documents physiques depuis le code ASP.
- Le paramètre class permet de spécifier la classe COM de l'objet à utiliser, par exemple "Excel.Application" ou "Word.Application". Ce paramètre est obligatoire si aucun pathname n'est fourni, car il permet d'identifier de façon unique l'objet souhaité. Il détermine le type et les fonctionnalités disponibles de l'objet retourné.
- La principale différence entre GetObject et CreateObject est que GetObject tente de récupérer une instance déjà existante si elle est disponible. S'il n'en trouve pas, il peut échouer sauf si pathname est fourni. Cela en fait une fonction utile pour interagir avec des objets persistants ou partagés.
- Lorsqu'on utilise GetObject, il est nécessaire que le composant ActiveX soit bien installé et enregistré sur le serveur ASP. Sinon, l'appel générera une erreur d'exécution. Cela nécessite donc une bonne gestion des dépendances logicielles côté serveur.
- GetObject est souvent utilisé dans des scripts ASP ayant besoin d'automatiser des tâches bureautiques, comme la génération automatique de rapports Word ou Excel. Cela peut par exemple permettre de remplir des modèles Word avec des données dynamiques issues d'une base de données. Cependant, cela suppose que les applications Office soient installées sur le serveur, ce qui peut poser des problèmes de performance ou de sécurité.
- L'utilisation de GetObject sur un serveur Web doit être maniée avec précaution, car elle peut engendrer des fuites de mémoire ou des blocages si les objets ne sont pas correctement libérés.
- Il est recommandé de toujours libérer explicitement les objets COM créés, par exemple en les assignant à Nothing à la fin de l'utilisation. Cela permet d'éviter une surcharge inutile du serveur.
- En environnement sécurisé ou mutualisé, certaines restrictions peuvent empêcher l'utilisation de GetObject pour des raisons de sécurité. Il est donc important de s'assurer que l'accès aux composants COM est bien autorisé dans la configuration du serveur. Sinon, l'application ASP pourrait rencontrer des erreurs d'accès ou de permissions.
Exemple
Voici un exemple d'une utilisation typique de cette fonction :
- <%
- Set Websvc = GetObject("IIS://LocalHost/W3svc")
- %>
Voir également
Articles - Les géants de l'informatique - Microsoft
Dernière mise à jour : Vendredi, le 10 octobre 2014