2010-09-16 13 views
0

je reçois une erreur à la ligne suivante dans ma demande:erreur en classe se référant - CDONTS

'create NewMail object' 
Line 96: Function SendHTMLEMail (strFrom, strTo, strCC, strSubject, strBodyHTML) 
Line 97: Set objNewMail = Server.CreateObject("CDONTS.NewMail") 

L'erreur est:

Error Type: 
Server object, ASP 0177 (0x800401F3) 
Invalid class string 
/Utils.inc, line 97 

J'ai ajouté interop.CDONTS.dll aux références d'application, mais je reçois toujours la même erreur.

Je ne suis pas sûr si cette fonctionnalité est utilisée dans une autre page et fonctionne.

J'utilise .NET Framework 1.1 2003 et le serveur exécute Windows Server 2003

+1

Est-ce asp.net ou asp-classic? – Filburt

+1

1. Vous ne pouvez écrire aucun code mentionné dans .NET. 2. N'utilisez pas .NET 1.x de toute façon, passez à 2.0 obligatoire. 3. Supprimez donc les balises .NET et laissez ASP uniquement – abatishchev

Répondre

0

Je suis la solution. J'ai ajouté un CDONTS.dll et enregistré à l'aide

regsvr32 C: \ SYSROOT \ system32 \ cdonts.dll

Ce résolu le problème. Pas besoin de l'ajouter aux références.

4

ASP-classique

Depuis CDONTS est interrompu depuis Win2000 et plus récent vous devriez switch to CDOSYS.

Exemple de code pour l'envoi via un serveur distant

Set oMessage = CreateObject("CDO.Message") 
Set oConfig = CreateObject("CDO.Configuration") 

Set oFields = oConfig.Fields 

With oFields 
    .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.acme.com" 
    .Update 
End With 

With oMessage 
    Set .Configuration = oConfig 
    .To = "[email protected]" 
    .From = "[email protected]" 
    .Subject = "A Subject Line" 
    .TextBody = "A Text body message" 
    .Fields.Update 
    .Send 
End With 

Le site lié présente des exemples détaillés pour toutes sortes de scénarios.

ASP.NET

Si vous ciblez ASP.NET, vous devez utiliser System.Net.Mail au lieu de CDO