2009-01-06 7 views
3

Quand j'appelle Server.CreateObject(), de ma page ASP classique, je reçoisASP classique: server.CreateObject pas pris en charge

Microsoft VBScript runtime (0x800A01B6) 
Object doesn't support this property or method 

J'ai essayé les suivantes (séparément):

Server.CreateObject("Microsoft.XMLHTTP") 
Server.CreateObject("MSXML2.XMLHTTP") 
Server.CreateObject("MSXML.DOMDocument") 

Je sais que les objets ActiveX sont installés parce que les appels javascript suivants fonctionnent

var test = new ActiveXObject("Microsoft.XMLHTTP"); 
var test = new ActiveXObject("MSXML2.XMLHTTP"); 
var test = new ActiveXObject("MSXML.DOMDocument"); 

Je l'appeler de mon localhost IIS s erver. Des idées pour résoudre ce problème?

+0

Comment savez-vous l'appel Javascript fonctionne? – madcolor

Répondre

6

Si vous effectuez les opérations suivantes:

Dim x: x = Server.CreateObject("My.ProgID.Here") 

... VBScript crée l'objet et tente d'accéder à la propriété par défaut pour le stockage dans « x ». Comme aucun de ces objets n'a de propriété par défaut définie (en particulier une propriété basée sur IDispatch avec [id (DISPID_VALUE)]), cela échoue avec "Object ne supporte pas cette propriété ou méthode".

Qu'est-ce que vous voulez réellement est ceci:

Dim x: Set x = Server.CreateObject("My.ProgID.Here") 
+0

Cette solution a fonctionné! Lorsque j'ai écrit un code similaire sur un serveur différent, je n'ai pas eu le même problème. Je ne suis pas sûr pourquoi. Merci! –

0

Les appeler à partir du navigateur ne signifie pas qu'ils sont installés dans IIS.

Questions connexes