خطأ في الفئة المرجعية - cdonts
-
03-10-2019 - |
سؤال
أحصل على خطأ في السطر التالي في طلبي:
'create NewMail object'
Line 96: Function SendHTMLEMail (strFrom, strTo, strCC, strSubject, strBodyHTML)
Line 97: Set objNewMail = Server.CreateObject("CDONTS.NewMail")
الخطأ هو:
Error Type:
Server object, ASP 0177 (0x800401F3)
Invalid class string
/Utils.inc, line 97
لقد أضفت interop.cdonts.dll إلى مراجع التطبيق ، ولكن ما زلت أتلقى نفس الخطأ.
لست متأكدًا مما إذا كانت هذه الوظيفة تستخدم في أي صفحة أخرى وتعمل.
أستخدم .NET 2003 Framework 1.1 ، ويقوم الخادم بتشغيل Windows Server 2003
المحلول 2
حصلت على الحل. أضفت cdonts.dll جديد وسجلته باستخدام
regsvr32 c: sysroot system32 cdonts.dll
هذا حل المشكلة. لا حاجة لإضافتها إلى المراجع.
نصائح أخرى
ASP الكلاسيكية
منذ توقف Cdonts منذ Win2000 وأحدث يجب عليك التبديل إلى cdosys.
نموذج رمز للإرسال عبر الخادم البعيد
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 = "recipient@acme.com"
.From = "sender@acme.com"
.Subject = "A Subject Line"
.TextBody = "A Text body message"
.Fields.Update
.Send
End With
يتميز الموقع المرتبط بأمثلة مفصلة لجميع أنواع السيناريوهات.
ASP.NET
إذا كنت تستهدف ASP.NET ، فيجب عليك استخدامها System.net.Mail بدلا من CDO
لا تنتمي إلى StackOverflow