-
Oct 12th, 2017, 05:01 AM
#1
Thread Starter
New Member
cdosys.dll is crashed with 0xe06d7363-(C++ EH exception) while sending multiple email
Please find below WinDbg log:
DEFAULT_BUCKET_ID: WRONG_SYMBOLS
PROCESS_NAME: MsgService.exe
ADDITIONAL_DEBUG_TEXT:
You can run '.symfix; .reload' to try to fix the symbol path and load symbols.
MODULE_NAME: cdosys
FAULTING_MODULE: 77d10000 ntdll
DEBUG_FLR_IMAGE_TIMESTAMP: 54503f7b
ERROR_CODE: (NTSTATUS) 0xe06d7363 - <Unable to get error code text>
EXCEPTION_CODE: (NTSTATUS) 0xe06d7363 - <Unable to get error code text>
EXCEPTION_PARAMETER1: 19930520
EXCEPTION_PARAMETER2: 07c2f958
EXCEPTION_PARAMETER3: 67e7decc
APP: MsgService.exe
MANAGED_STACK: !dumpstack -EE
Call stack:
STACK_TEXT:
07c2f8d4 77b940a2 e06d7363 00000001 00000003 KERNELBASE!RaiseException+0x48
07c2f90c 67df13df 07c2f91c 67e7decc 80070490 msvcrt!_CxxThrowException+0x59
07c2f920 67df1a89 80070490 07c2f964 07c2fa48 cdosys!auto_hr:perator=+0x28
07c2f944 67df3906 07c2faa8 00650000 00a00000 cdosys!CCacheRow::_Get+0x6e
07c2f9bc 67b9de15 07d50af0 00000001 07c2fa2c cdosys!CCacheRow::GetColumns+0x96
07c2fa6c 67b9f0e1 07d50af0 07c2fac8 07c2fbbc msado15!CRecFields::getMissingField+0x13c
07c2fb0c 11005487 01cd9bcc 00000008 00000000 msado15!CRecFields::get_Item+0x261
07c2fc00 11005bce 01cd1398 07c2fd48 07c2fcd0 MSgServiceDLL!EMailObj::SetConfigFld+0x138->Our Service DLL last Call
Sample line of code below:
Private Function SetConfigFld(Flds As ADODB.Fields, fName As String, fVal As Variant)
Dim fldNS As String ' namespace
Dim fldID As String ' complete identifier
Dim fldPortNS As String ' port namespace
Dim fldPort As String ' port
Dim fldServer As String ' server
Dim SpltArr() As String
fldNS = "http://schemas.microsoft.com/cdo/configuration/"
fldID = fldNS & fName
'Flds(fldID) = fVal
If StrComp(fName, "smtpserver") = 0 Then
SpltArr() = Split(fVal, ":")
Flds(fldID) = SpltArr(0) ' server without port
If UBound(SpltArr) > 0 Then
fldPort = SpltArr(1)
fldPortNS = "http://schemas.microsoft.com/cdo/configuration/smtpserverport"
Flds(fldPortNS) = fldPort
End If
Else
Flds(fldID) = fVal //Possible line of crash
End If
Regards,
PP
-
Oct 12th, 2017, 03:28 PM
#2
Re: cdosys.dll is crashed with 0xe06d7363-(C++ EH exception) while sending multiple e
you did not specify what version of windows you are woring in
i changed from ado.fields to cdo.configuration
Code:
Private Function SetConfigFld(Flds As CDO.Configuration, fName As String, fVal As Variant)
Dim fldNS As String ' namespace
Dim fldID As String ' complete identifier
Dim fldPortNS As String ' port namespace
Dim fldPort As String ' port
Dim fldServer As String ' server
Dim SpltArr() As String
fldNS = "http://schemas.microsoft.com/cdo/configuration/"
fldID = fldNS & fName
'Flds(fldID) = fVal
If StrComp(fName, "smtpserver") = 0 Then
SpltArr() = Split(fVal, ":")
Flds(fldID) = SpltArr(0) ' server without port
If UBound(SpltArr) > 0 Then
fldPort = SpltArr(1)
fldPortNS = "http://schemas.microsoft.com/cdo/configuration/smtpserverport"
Flds(fldPortNS) = fldPort
End If
Else
Flds(fldID) = fVal '//Possible line of crash
End If
End Function
tested like
Code:
Dim ocdo As CDO.Message
Set ocdo = New CDO.Message
res = SetConfigFld(ocdo.Configuration, "smptserverport", "xx")
no error
i do my best to test code works before i post it, but sometimes am unable to do so for some reason, and usually say so if this is the case.
Note code snippets posted are just that and do not include error handling that is required in real world applications, but avoid On Error Resume Next
dim all variables as required as often i have done so elsewhere in my code but only posted the relevant part
come back and mark your original post as resolved if your problem is fixed
pete
-
Oct 13th, 2017, 01:19 AM
#3
Thread Starter
New Member
Re: cdosys.dll is crashed with 0xe06d7363-(C++ EH exception) while sending multiple e
Hi
Thank you for the response.
OS: windows Server 2008 R2
With the code I have posted, email is sending sucesful.
But the issue comes when we send bulk emails with more than 10000 emails at a time.
cdosys.dll is crashed,
regards,
PP
-
Oct 13th, 2017, 05:28 AM
#4
Re: cdosys.dll is crashed with 0xe06d7363-(C++ EH exception) while sending multiple e
more than 10000 emails at a time.
are setting the configuration for every email? you should only need to set for that object of cdo before sending
many stmp servers limit the number of emails that can send in a single session, i know mine is around 30, i just handle the error then resume, usually a second error then another 30 or so go before the next error, all the emails are sent on completion
i do my best to test code works before i post it, but sometimes am unable to do so for some reason, and usually say so if this is the case.
Note code snippets posted are just that and do not include error handling that is required in real world applications, but avoid On Error Resume Next
dim all variables as required as often i have done so elsewhere in my code but only posted the relevant part
come back and mark your original post as resolved if your problem is fixed
pete
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|