从CDO.Message未知电子邮件code发送方法 [英] Unknown email code from CDO.Message send method

查看:1948
本文介绍了从CDO.Message未知电子邮件code发送方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想通过VBScript来发送电子邮件。这里是我的电子邮件code:
我已经隐藏课程的电子邮件地址。在我的实际code我使用一个有效的电子邮件地址。

I'm trying to send an email via vbscript. Here's my email code: I've hidden the email address of course. In my actual code I'm using a valid email address.

Dim objCDO
Set objCDO = Server.CreateObject("CDO.Message") 
objCDO.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.oa.caiso.com" 
objCDO.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 
objCDO.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 
objCDO.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60 
objCDO.Configuration.Fields.Update 
objCDO.To = "abcemail@devnull.com"
objCDO.From = Sender
objCDO.cc = ""
objCDO.bcc = ""
objCDO.Subject = txtSubject
objCDO.HTMLBody = Replace(sBody, Chr(10),"<br>")
On Error GoTo 0
On Error Resume Next
objCDO.Send
If Err.Number <> 0 Then 
    Response.Write "Just after the send command "
    Response.Write "Err.Number is " & Err.Number & "<br>"
    On Error GoTo 0
End If
set objCDO = nothing

在此code运行时我看到了以下错误:

When this code runs I see the following error:

刚过send命令Err.Number的是-2147220978

Just after the send command Err.Number is -2147220978

现在,当我研究这个错误号码没有错误code -2147220978事实上,谷歌搜索次数-2147220978返回任何结果的。

Now, when I research this error number there is no reference anywhere for error code -2147220978 In fact, a Google search for the number -2147220978 returns no results at all.

请问您有什么想法是什么奇怪的错误code手段?

Would you have any idea what that odd error code means?

推荐答案

-2147220978 = 8004020E

-2147220978 = 8004020E

从CDOSYSERR.h

From CDOSYSERR.h

//
// MessageId: CDO_E_SENDER_REJECTED
//
// MessageText:
//
// The server rejected the sender address. The server response was: %1
//
#define CDO_E_SENDER_REJECTED            0x8004020EL

解码错误

-2147220978风格的数字是32位有符号整数,转换与计算器为十六进制。

-2147220978 style numbers are 32 bit signed integers, convert to hex with calculator.

的Windows错误(短小号)和COM的HRESULT(通常是,但有例外,有一个8在0x80040154的启动)的WinError.h中的定义,除了8007nnnn你往哪里看的窗口错误编号,它包含的内容。

Windows errors (smallish numbers) and COM HResults (typically, but with exceptions, start with an 8 as in 0x80040154) are defined in WinError.h, except 8007nnnn where you look up the Window error number that it contains.

作为一般规则的Windows误差小于65,535(0xFFFF的)。开始0x80000001错误是组件对象模型(COM)的HRESULT。开始0xc0000001错误是NTSTATUS结果。

As a general rule Windows errors are less than 65,535 (0xFFFF). Errors starting 0x80000001 are Component Object Model (COM) HResults. Errors starting 0xc0000001 are NTStatus results.

NTSTATUS错误(通常但不总是与C作为在0xC0000022开始)在NTSTATUS.H限定。

NTStatus errors (typically but not always start with an C as in 0xC0000022) are defined in NTStatus.h.

.h文件是最好的来源,因为它包含可以提供线索,如错误源错误的符号名。的FormatMessage不给的符号名只有描述。

.h files are the best source because it includes the symbolic name of the error which can give clues such as the source of the error. FormatMessage doesn't give the symbolic name only the description.

您通过下载平台SDK获取这些文件(它的千兆字节)
<一href=\"http://www.microsoft.com/en-us/download/details.aspx%3Fid%3D8279&sa=U&ei=w2IrULDDLsHFmAWbmIHoBg&ved=0CBwQFjAA&usg=AFQjCNHZn9-4f2NnuN9o3UWUsOF3wL7HBQ\" rel=\"nofollow\">http://www.microsoft.com/en-us/download/details.aspx%3Fid%3D8279&sa=U&ei=w2IrULDDLsHFmAWbmIHoBg&ved=0CBwQFjAA&usg=AFQjCNHZn9-4f2NnuN9o3UWUsOF3wL7HBQ

You get these files by downloading the Platform SDK (it's gigabytes) http://www.microsoft.com/en-us/download/details.aspx%3Fid%3D8279&sa=U&ei=w2IrULDDLsHFmAWbmIHoBg&ved=0CBwQFjAA&usg=AFQjCNHZn9-4f2NnuN9o3UWUsOF3wL7HBQ

如果你只是想两个文件我有他们在我的SkyDrive这样我就可以参考它们无论我去哪里。
https://skydrive.live.com/redir?resid=E2F0CE17A268A4FA!121

If you just want the two files I have them on my skydrive so I can reference them anywhere I go. https://skydrive.live.com/redir?resid=E2F0CE17A268A4FA!121

请注意网上的错误(12,000 - 12999)的窗口错误,但在上述WININET.H也可指定。

Note internet errors (12,000 - 12,999) are windows errors but are specified in wininet.h also available above.

有其他.h文件中定义的错误。但是99%是在上述三个

There are errors defined in other .h files. But 99% are in the three above.

HRESULTS和NTSTATUS codeS结构

在HRESULTS最显著位,并在NTSTATUS两个最显著位在错误设定。因此HRESULTS出错启动8 NTSTATUS上的错误开始℃。接下来的14或15位被保留,一些指定的设施 - 错误是什么区这是第三个和第四个数字阅读十六进制时。 EG 0xnn07nnnn - 一个HRESULT设施code 7是一个正常的Windows的错误(从COM程序返回 - 因此它返回一个HResult的)。设施codeS在Winerror.h中定义的HRESULT和NTSTATUS.H为NTSTATUS codeS。它们是不同的。

The most significant bit in HResults, and the two most significant bits in NTStatus are set on error. Hence Hresults start 8 on error and NTStatus starts C on Error. The next 14 or 15 bits are reserved and some specify the facility - what area the error is in. This is the third and fourth number when reading hex. EG 0xnn07nnnn - An HResult facility code 7 is a normal Windows' error (returned from a COM program - hence it's returned as a HResult). Facility codes are defined in Winerror.h for HResults and NTStatus.h for NTStatus codes. They are different.

脱code 0x8003nnnn错误

HRESULTS与设施code 3是指包含的HResult OLE结构化存储错误(0x0到0xFF的)。这些似乎并没有在Windows的头文件和$名单C $ CS为这篇文章的结尾。

HResults with facility code 3 means the HResult contains OLE Structured Storage errors (0x0 to 0xff). These don't seem to be in Windows' header files and the list of codes is at the end of this post.

脱code 0x8004nnnn错误

HRESULTS与设施code 4指产生HResult包含OLE错误(0x0到到0x1FF),而范围的其余部分(为0x200起)是组件的具体错误,所以20E从一个组件都会有不同的含义20E从另一个组件。

HResults with facility code 4 means the HResult contains OLE errors (0x0 to 0x1ff) while the rest of the range (0x200 onwards) is component specific errors so 20e from one component will have a different meaning to 20e from another component.

这是为什么错误的来源是额外重要上面0x80040200错误。

This is why the source of the error is extra important for errors above 0x80040200.

脱code 0x8007nnnn错误

与设施code 7 HRESULTS意味着产生HResult包含一个Windows的错误code。你要回去看看Windows的错误code不是HRESULT。

HResults with facility code 7 means the HResult contains a Windows' error code. You have to look up the Windows' error code not the HResult.

要取消code 0x80070002。该0X意味着它是一个十六进制数,8表示错误,前7意味着Windows错误,并且数量,2的其余部分,是实际的Windows错误。

To decode 0x80070002. The 0x means it's a hexadecimal number, the 8 means error, the first 7 means it a windows error, and the rest of the number, 2, is the actual Windows error.

要查找我们需要它以十进制格式错误。启动计算器(开始 - 所有程序 - 附件 - 计算器),并选择查看菜单 - 科学,然后查看菜单 - 十六进制。输入2.然后查看菜单 - 十进制。它会说2

To look up the error we need it in decimal format. Start Calculator (Start - All Programs - Accessories - Calculator) and choose View menu - Scientific, then View menu - Hex. Enter 2. Then View menu - Decimal. It will say 2.

启动命令提示符(开始 - 所有程序 - 附件 - 命令提示符),然后键入

Start a Command Prompt (Start - All Programs - Accessories - Command Prompt) and type

net helpmsg 2

和它会说

The system cannot find the file specified.

或Winerror.h中查找它

or look it up in winerror.h

//
// MessageId: ERROR_FILE_NOT_FOUND
//
// MessageText:
//
// The system cannot find the file specified.
//
#define ERROR_FILE_NOT_FOUND             2L

的DOS错误codeS(用于0x8003nnnn错误)

的DOS错误codeS(用于0x8003nnnn错误)

Dos Error Codes (for 0x8003nnnn errors)

Code    Message
01  Invalid function number
02  File not found
03  Path not found
04  Too many open files (no handles left)
05  Access denied
06  Invalid handle
07  Memory control blocks destroyed
08  Insufficient memory
09  Invalid memory block address
0A  Invalid environment
0B  Invalid format
0C  Invalid access mode (open mode is invalid)
0D  Invalid data
0E  Reserved
0F  Invalid drive specified
10  Attempt to remove current directory
11  Not same device
12  No more files
13  Attempt to write on a write-protected diskette
14  Unknown unit
15  Drive not ready
16  Unknown command
17  CRC error
18  Bad request structure length
19  Seek error
1A  Unknown media type
1B  Sector not found
1C  Printer out of paper
1D  Write fault
1E  Read fault
1F  General failure
20  Sharing violation
21  Lock violation
22  Invalid disk change
23  FCB unavailable
24  Sharing buffer overflow
25  Reserved
26  Unable to complete file operation (DOS 4.x)
27-31   Reserved
32  Network request not supported
33  Remote computer not listening
34  Duplicate name on network
35  Network name not found
36  Network busy
37  Network device no longer exists
38  NetBIOS command limit exceeded
39  Network adapter error
3A  Incorrect network response
3B  Unexpected network error
3C  Incompatible remote adapter
3D  Print queue full
3E  No space for print file
3F  Print file deleted
40  Network name deleted
41  Access denied
42  Network device type incorrect
43  Network name not found
44  Network name limit exceeded
45  NetBIOS session limit exceeded
46  Temporarily paused
47  Network request not accepted
48  Print or disk redirection is paused
49-4F   Reserved
50  File already exists
51  Reserved
52  Cannot make directory entry
53  Fail on INT 24
54  Too many redirections
55  Duplicate redirection
56  Invalid password
57  Invalid parameter
58  Network device fault
59  Function not supported by network (DOS 4.x)
5A  Required system component not installed (DOS 4.x)

设施codeS

NTSTATUS设施

Common status values    0x0
Debugger    0x1
Rpc_runtime 0x2
Rpc_stubs   0x3
Io_error_code   0x4
Various drivers 0x5-0xf
Ntwin32 0x7
Ntsspi  0x9
Terminal_server 0xa
Faciltiy_mui_error_code 0xb
Usb_error_code  0x10
Hid_error_code  0x11
Firewire_error_code 0x12
Cluster_error_code  0x13
Acpi_error_code 0x14
Sxs_error_code  0x15
Transaction 0x19
Commonlog   0x1a
Video   0x1b
Filter_manager  0x1c
Monitor 0x1d
Graphics_kernel 0x1e
Driver_framework    0x20
Fve_error_code  0x21
Fwp_error_code  0x22
Ndis_error_code 0x23
Hypervisor  0x35
Ipsec   0x36
Maximum_value   0x37

HRESULTS设施

Null    0x0
Rpc 0x1
Dispatch    0x2
Storage 0x3
Itf 0x4
Win32   0x7
Windows 0x8
Sspi    0x9
Security    0x9
Control 0xa
Cert    0xb
Internet    0xc
Mediaserver 0xd
Msmq    0xe
Setupapi    0xf
Scard   0x10
Complus 0x11
Aaf 0x12
Urt 0x13
Acs 0x14
Dplay   0x15
Umi 0x16
Sxs 0x17
Windows_ce  0x18
Http    0x19
Usermode_commonlog  0x1a
Usermode_filter_manager 0x1f
Backgroundcopy  0x20
Configuration   0x21
State_management    0x22
Metadirectory   0x23
Windowsupdate   0x24
Directoryservice    0x25
Graphics    0x26
Shell   0x27
Tpm_services    0x28
Tpm_software    0x29
Pla 0x30
Fve 0x31
Fwp 0x32
Winrm   0x33
Ndis    0x34
Usermode_hypervisor 0x35
Cmi 0x36
Windows_defender    0x50

这篇关于从CDO.Message未知电子邮件code发送方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆