정리

eMail 발송 실패 에러 메시지

저장소/잡다한거
이메일 발송 실패 에러 메시지

▶ 421 Server too busy.
; 수신 측 서버의 응답지연. 수신서버의 트래픽 등으로 메일을 수신 받지 못하는 상황이다.

▶ 421-Microsoft ESMTP MAIL Service, Version: 5.0.2195.5600 ready at Service not available, closing transmission
channel
; MS의 SMTP 서버 장애로 인해 메일을 수신 받지 못한 상황.

▶ 441 4.4.1 No answer from host
; 수신 측 서버의 응답이 없어서 리턴 된 메시지.

▶ 451 4.4.0 DNS resolving error
; 수신 측 서버의 도메인을 못 찾아 리턴 된 메시지.

▶ 451 4.3.0 Other or undefined mail system status
; 수신 측 메일 시스템의 프로토콜이 틀리거나 수신 SMTP 서버가 아닌 경우.

▶ 451 4.3.0 Temporary system failure. Please try again later.
; 수신 서버의 일시적인 장애로 인해 메일을 수신 되지 못한 경우.

▶ 451 4.4.2 Bad connection (io timeout)
; 수신 서버의 응답이 없어서 응답시간이 초과로 리턴 된 메시지.

▶ 451 Relay Server Not Ready.
; 수신 측 서버에서 릴레이 기능이 안 되어 리턴 된 메시지.

▶ 452 4.4.5 Insufficient disk space; try again later
; 수신 서버의 디스크 용량이 부족하여 메일을 수신 받지 못해 리턴 된 메시지.

▶ 452 4.4.5 ... Insufficient disk space; try again later
; 수신자의 메일함 용량이 부족하여 메일을 수신 받지 못한 경우.

▶ 500 Syntax Error, Command Unrecognized EHLO mo02.hanafos.com
; 메일 발송 시 수신 측 메일 서버에서 SMTP 명령어를 인식하지 못해 리턴 된 경우.

▶ 500 5.5.1 Command unrecognized: “XXXX mo02.hanafos.com”
; 수신 서버가 SMTP 명령어를 인식 하지 못한 경우(위와 동일).

▶ 501 Denied domain name
; 도메인 주소를 잘못 입력했거나 수신 측에서 도메인을 수신 거부한 경우.

▶ 501 5.1.8 Sender domain must exist(honorstech.com)
; 수신 측 도메인이 존재 하지 않아 리턴 된 경우.

▶ 502 Not implemented
; 수신 측 서버가 SMTP 명령어를 인식 하지 못해 리턴 된 경우.

▶ 505 Authentication required
; 수신 측 서버가 릴레이 인증 등을 허용하지 않아 리턴 된 경우.

▶ 512 5.1.2 Bad destination system address
; 수신 서버의 장애나 네트워크 트래픽 등으로 인해 수신 서버가 응답하지 못하여 메시지가 리턴 된 경우.

▶ 550 Requested action not taken: mailbox unavailable
; 수신자의 메일 함을 찾지 못해 리턴 된 경우.

▶ 550 Mail is reject ( filtering reject )
; 수신 서버에서 발신자의 메일 주소나 IP를 필터링하여 거부되어 메시지가 리턴 된 경우.

▶ 550 Invalid recipient singha@rrr.com
; 수신자 계정을 찾지 못해 메시지가 리턴 된 경우.

▶ 550 RCPT ERROR. Mailbox doesn’t exist
; 수신자의 메일함이 존재 하지 않아서 메시지가 리턴 된 경우.

▶ 550 5.1.1 ... User unknown
; 수신자 (ggg@fff.co.kr)계정을 찾지 못해 메시지가 리턴 된 경우.

▶ 550 5.1.1 Suspended user
; 수신 측의 사용자 계정이 중단 된 상태인 경우.

▶ 550 5.1.2 ... Unsupported mail destination
; 수신 서버의 응답이 지연되어 메시지가 리턴 된 경우.

▶ 550 5.7.1 ... Relaying denied. IP name lookup failed [10.10.10.10]
; 수신 서버에서 발신자의 IP에 대해 릴레이를 거부하여 메일을 전송하지 못한 경우.

▶ 550 5.7.1 Unable to relay for ttt@hhh.net
; 수신 서버에서 릴레이를 거부하여 메시지가 리턴 된 경우.

▶ 553 sorry, your envelope sender is in my badmailfrom list
; 발신자의 메일 주소가 수신 서버상에 블랙리스트로 등록되어 메시지가 리턴 된 경우.

▶ 553 sorry, that domain isn’t in my list of allowed rcpt hosts
; 발신자의 메일 도메인 주소 자체가 수신 서버에서 차단되어있어 메시지가 리턴 된 경우.

▶ 553 sorry, your envelope sender is enlisted as spammer.
; 발신자의 메일 주소가 수신 서버상의 스패머 리스트에 등록 되어있어 메시지가 리턴 된 경우.

▶ 553-This target address is not our MX service
; 수신자의 주소가 수신 서버에서 서비스 안 하는 도메인일 경우. 또는 발신자의 도메인이 없는 도메인으로 체크되어 메시지가 리턴 된 경우.

▶ 553 5.0.0 We do not accept mail from spammers - If you have questions, please email admins@www.yyy.net.
; 발신자의 메일 계정이 수신 서버상에 스패머로 등록되어있어 메시지가 리턴 된 경우.

▶ 553 5.0.0 Your message may contain the Win32.Klez worm!!- If you have questions,please email postmasters@email.bbb.co.kr.
; 발신자의 메일에서 Win32.Klez라는 웜 바이러스가 발견되어 메시지가 수신되지 않고 반송 된 경우.

▶ 554 : Recipient address rejected: Access denied
; 수신자가 발신자의 계정에 대해 수신 거부를 설정해 놓은 상태.

▶ 554 delivery error: dd Sorry, your message to singha@yahoo.co.kr cannot be delivered. This account is
over quota. - mta111.mail.yahoo.co.kr
; 수신자의 메일함 용량이 초과되어 메시지가 리턴 된 경우.

▶ 554 5.1.0 Sender Denied
; 발신자의 계정을 수신서버에서 수신 거부한 경우.

▶ 554 5.3.0 Mail have traversed Too many hops. Reject it.
; 발신자가 메일을 보낼 때 동보 메일로 입력한 수신자 메일 계정이 수신 서버에서 제한하고 있는 수량을 초과하여 리턴 된 경우.

▶ 554 5.3.2 Rejected by mailbox host. REPLY:(250 ... Sender ok)
; 수신자가 발송자의 메일 계정에 대해 수신 거부를 하여 메시지가 리턴 된 경우.

▶ 554 5.3.2 Rejected by mailbox host. REPLY:(550 5.1.1 unknown or illegal alias: aaa@xxx.com)
; 수신자가 발송자의 메일 계정에 대해 수신거부를 설정하여 메시지가 리턴 된 경우.
function moreOpen130025714871(){document.getElementById('btnhead130025714871').style.display='none';document.getElementById('btntail130025714871').style.display='';document.getElementById('moretail130025714871').innerHTML=document.getElementById('moretail130025714871').innerHTML;document.getElementById('moretail130025714871').style.display=''; }function moreClose130025714871(){document.getElementById('btnhead130025714871').style.display='';document.getElementById('btntail130025714871').style.display='none';document.getElementById('moretail130025714871').style.display='none'; }

[MSDN][VS6.0] Windows Data Types

저장소/VC++
Windows Data Types

The data types supported by Microsoft® Windows® are used to define function return values, function and message parameters, and structure members. They define the size and meaning of these elements.

The following table contains the following types: character, integer, Boolean, pointer, and handle. The character, integer, and Boolean types are common to most C compilers. Most of the pointer-type names begin with a prefix of P or LP. Handles refer to a resource that has been loaded into memory.

Type Definition
ATOM Atom. For more information, see Atoms.
BOOL Boolean variable (should be TRUE or FALSE).
BOOLEAN Boolean variable (should be TRUE or FALSE).
BYTE Byte (8 bits).
CALLBACK Calling convention for callback functions.
CHAR 8-bit Windows (ANSI) character. For more information, see Character Sets Used By Fonts.
COLORREF Red, green, blue (RGB) color value (32 bits). See COLORREF for information on this type.
CONST Variable whose value is to remain constant during execution.
CRITICAL_SECTION Critical-section object. For more information, see Critical Section Objects.
DWORD 32-bit unsigned integer.
DWORD_PTR Unsigned long type for pointer precision. Use when casting a pointer to a long type to perform pointer arithmetic.
DWORD32 32-bit unsigned integer.
DWORD64 64-bit unsigned integer.
FLOAT Floating-point variable.
HACCEL Handle to an accelerator table.
HANDLE Handle to an object.
HBITMAP Handle to a bitmap.
HBRUSH Handle to a brush.
HCONV Handle to a dynamic data exchange (DDE) conversation.
HCONVLIST Handle to a DDE conversation list.
HCURSOR Handle to a cursor.
HDC Handle to a device context (DC).
HDDEDATA Handle to DDE data.
HDESK Handle to a desktop.
HDROP Handle to an internal drop structure.
HDWP Handle to a deferred window position structure.
HENHMETAFILE Handle to an enhanced metafile.
HFILE Handle to a file opened by OpenFile, not CreateFile.
HFONT Handle to a font.
HGDIOBJ Handle to a GDI object.
HGLOBAL Handle to a global memory block.
HHOOK Handle to a hook.
HICON Handle to an icon.
HIMAGELIST Handle to an image list.
HIMC Handle to input context.
HINSTANCE Handle to an instance.
HKEY Handle to a registry key.
HKL Input locale identifier.
HLOCAL Handle to a local memory block.
HMENU Handle to a menu.
HMETAFILE Handle to a metafile.
HMODULE Handle to a module.
HMONITOR Handle to a display monitor.
HPALETTE Handle to a palette.
HPEN Handle to a pen.
HRGN Handle to a region.
HRSRC Handle to a resource.
HSZ Handle to a DDE string.
HWINSTA Handle to a window station.
HWND Handle to a window.
INT 32-bit signed integer.
INT_PTR Signed integral type for pointer precision. Use when casting a pointer to an integer to perform pointer arithmetic.
INT32 32-bit signed integer.
INT64 64-bit signed integer.
LANGID Language identifier. For more information, see Locales.
LCID Locale identifier. For more information, see Locales.
LCTYPE Locale information type. For a list, see Locale and Language Information
LONG 32-bit signed integer.
LONG_PTR Signed long type for pointer precision. Use when casting a pointer to a long to perform pointer arithmetic.
LONG32 32-bit signed integer.
LONG64 64-bit signed integer.
LONGLONG 64-bit signed integer.
LPARAM Message parameter.
LPBOOL Pointer to a BOOL.
LPBYTE Pointer to a BYTE.
LPCOLORREF Pointer to a COLORREF value.
LPCRITICAL_SECTION Pointer to a CRITICAL_SECTION.
LPCSTR Pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.
LPCTSTR An LPCWSTR if UNICODE is defined, an LPCSTR otherwise.
LPCVOID Pointer to a constant of any type.
LPCWSTR Pointer to a constant null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.
LPDWORD Pointer to a DWORD.
LPHANDLE Pointer to a HANDLE.
LPINT Pointer to an INT.
LPLONG Pointer to a LONG.
LPSTR Pointer to a null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.
LPTSTR An LPWSTR if UNICODE is defined, an LPSTR otherwise.
LPVOID Pointer to any type.
LPWORD Pointer to a WORD.
LPWSTR Pointer to a null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.
LRESULT Signed result of message processing.
LUID Locally unique identifier.
PBOOL Pointer to a BOOL.
PBOOLEAN Pointer to a BOOL.
PBYTE Pointer to a BYTE.
PCHAR Pointer to a CHAR.
PCRITICAL_SECTION Pointer to a CRITICAL_SECTION.
PCSTR Pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.
PCTSTR A PCWSTR if UNICODE is defined, a PCSTR otherwise.
PCWCH Pointer to a constant WCHAR.
PCWSTR Pointer to a constant null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.
PDWORD Pointer to a DWORD.
PFLOAT Pointer to a FLOAT.
PHANDLE Pointer to a HANDLE.
PHKEY Pointer to an HKEY.
PINT Pointer to an INT.
PLCID Pointer to an LCID.
PLONG Pointer to a LONG.
PLUID Pointer to a LUID.
POINTER_32 32-bit pointer. On a 32-bit system, this is a native pointer. On a 64-bit system, this is a truncated 64-bit pointer.
POINTER_64 64-bit pointer. On a 64-bit system, this is a native pointer. On a 32-bit system, this is a sign-extended 32-bit pointer.
PSHORT Pointer to a SHORT.
PSTR Pointer to a null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.
PTBYTE Pointer to a TBYTE.
PTCHAR Pointer to a TCHAR.
PTSTR A PWSTR if UNICODE is defined, a PSTR otherwise.
PUCHAR Pointer to a UCHAR.
PUINT Pointer to a UINT.
PULONG Pointer to a ULONG.
PUSHORT Pointer to a USHORT.
PVOID Pointer to any type.
PWCHAR Pointer to a WCHAR.
PWORD Pointer to a WORD.
PWSTR Pointer to a null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.
REGSAM Security access mask for registry key.
SC_HANDLE Handle to a service control manager database. For more information, see SCM Handles.
SC_LOCK Handle to a service control manager database lock. For more information, see SCM Handles.
SERVICE_STATUS_HANDLE Handle to a service status value. For more information, see SCM Handles.
SHORT Short integer (16 bits).
SIZE_T The maximum number of bytes to which a pointer can point. Use for a count that must span the full range of a pointer.
SSIZE_T Signed SIZE_T.
TBYTE A WCHAR if UNICODE is defined, a CHAR otherwise.
TCHAR A WCHAR if UNICODE is defined, a CHAR otherwise.
UCHAR Unsigned CHAR.
UINT Unsigned INT.
UINT_PTR Unsigned INT_PTR.
UINT32 Unsigned INT32.
UINT64 Unsigned INT64.
ULONG Unsigned LONG.
ULONG_PTR Unsigned LONG_PTR.
ULONG32 Unsigned LONG32.
ULONG64 Unsigned LONG64.
ULONGLONG 64-bit unsigned integer.
UNSIGNED Unsigned attribute.
USHORT Unsigned SHORT.
VOID Any type.
WCHAR 16-bit Unicode character. For more information, see Character Sets Used By Fonts.
WINAPI Calling convention for system functions.
WORD 16-bit unsigned integer.
WPARAM Message parameter.

'저장소 > VC++' 카테고리의 다른 글

[Win32] GetFileAttributes  (0) 2009.09.22
[C++] Calling Convention  (0) 2009.09.22
[MSDN][VS6.0] ASSERT  (0) 2009.09.22
[MSDN][VS6.0] IMPLEMENT_DYNCREATE  (0) 2009.09.22
[MSDN][VS6.0] RUNTIME_CLASS  (0) 2009.09.22

[MSDN][VS6.0] ASSERT

저장소/VC++

ASSERT

ASSERT( booleanExpression )

Parameters

booleanExpression

Specifies an expression (including pointer values) that evaluates to nonzero or 0.

Remarks

Evaluates its argument. If the result is 0, the macro prints a diagnostic message and aborts the program. If the condition is nonzero, it does nothing.

The diagnostic message has the form

assertion failed in file <name> in line <num>

where name is the name of the source file, and num is the line number of the assertion that failed in the source file.

In the Release version of MFC, ASSERT does not evaluate the expression and thus will not interrupt the program. If the expression must be evaluated regardless of environment, use the VERIFY macro in place of ASSERT.

Note   This function is available only in the Debug version of MFC.

Example

// example for ASSERTCAge* pcage = new CAge( 21 ); // CAge is derived from CObject.ASSERT( pcage!= NULL )ASSERT( pcage->IsKindOf( RUNTIME_CLASS( CAge ) ) )// Terminates program only if pcage is NOT a CAge*.

See Also   VERIFY

'저장소 > VC++' 카테고리의 다른 글

[C++] Calling Convention  (0) 2009.09.22
[MSDN][VS6.0] Windows Data Types  (0) 2009.09.22
[MSDN][VS6.0] IMPLEMENT_DYNCREATE  (0) 2009.09.22
[MSDN][VS6.0] RUNTIME_CLASS  (0) 2009.09.22
[MSDN][VS6.0] DECLARE_DYNCREATE  (0) 2009.09.22

[MSDN][VS6.0] IMPLEMENT_DYNCREATE

저장소/VC++

IMPLEMENT_DYNCREATE

IMPLEMENT_DYNCREATE( class_name, base_class_name )

Parameters

class_name

The actual name of the class (not enclosed in quotation marks).

base_class_name

The actual name of the base class (not enclosed in quotation marks).

Remarks

Use the IMPLEMENT_DYNCREATE macro with the DECLARE_DYNCREATE macro to enable objects of CObject-derived classes to be created dynamically at run time. The framework uses this ability to create new objects dynamically, for example, when it reads an object from disk during serialization. Add the IMPLEMENT_DYNCREATE macro in the class implementation file. For more information, seeCObject Class Topics in Visual C++ Programmer’s Guide.

If you use the DECLARE_DYNCREATE and IMPLEMENT_DYNCREATE macros, you can then use the RUNTIME_CLASS macro and the CObject::IsKindOf member function to determine the class of your objects at run time.

If DECLARE_DYNCREATE is included in the class declaration, then IMPLEMENT_DYNCREATE must be included in the class implementation.

Example

// CAge.hclass CAge : public CObject{     int num;public:     DECLARE_DYNCREATE(CAge)};//==============// CAge.cpp#include "stdafx.h"#include "CAge.h"IMPLEMENT_DYNCREATE(CAge, CObject) 

See Also   DECLARE_DYNCREATE, RUNTIME_CLASS, CObject::IsKindOf


'저장소 > VC++' 카테고리의 다른 글

[MSDN][VS6.0] Windows Data Types  (0) 2009.09.22
[MSDN][VS6.0] ASSERT  (0) 2009.09.22
[MSDN][VS6.0] RUNTIME_CLASS  (0) 2009.09.22
[MSDN][VS6.0] DECLARE_DYNCREATE  (0) 2009.09.22
[MSDN][VS6.0] Predefined Macros  (0) 2009.09.22

[MSDN][VS6.0] RUNTIME_CLASS

저장소/VC++

RUNTIME_CLASS

RUNTIME_CLASS( class_name )

Parameters

class_name

The actual name of the class (not enclosed in quotation marks).

Remarks

Use this macro to get the run-time class structure from the name of a C++ class.

RUNTIME_CLASS returns a pointer to a CRuntimeClass structure for the class specified by class_name. Only CObject-derived classes declared with DECLARE_DYNAMIC, DECLARE_DYNCREATE, or DECLARE_SERIAL will return pointers to a CRuntimeClass structure.

For more information, seeCObject Class Topics in Visual C++ Programmer’s Guide.

Example

// example for RUNTIME_CLASSCRuntimeClass* prt = RUNTIME_CLASS( CAge );ASSERT( lstrcmp( prt->m_lpszClassName, "CAge" )  == 0 );

See Also   DECLARE_DYNAMIC, DECLARE_DYNCREATE, DECLARE_SERIAL, CObject::GetRuntimeClass, CRuntimeClass

'저장소 > VC++' 카테고리의 다른 글

[MSDN][VS6.0] ASSERT  (0) 2009.09.22
[MSDN][VS6.0] IMPLEMENT_DYNCREATE  (0) 2009.09.22
[MSDN][VS6.0] DECLARE_DYNCREATE  (0) 2009.09.22
[MSDN][VS6.0] Predefined Macros  (0) 2009.09.22
[Error/Warning] fatal error C1902  (0) 2009.09.22

Windows 파일 또는 폴더 복사 오류

저장소/잡다한거
출처 : 네이버 지식iN


파일시스템이 FAT를 사용하는지 확인하세요.
FAT인 경우 복사를 못하고 에러가 발생합니다.

파일시스템이 FAT인경우 NTFS로 변경을 해야만 큰 파일을
이동 복사 할수 있습니다.

FAT은 최대 4G까지만 복사 및 이동을 할 수 있습니다.

C와 D드라이브 둘다 NTFS 파일시스템을 가지고  있어야 합니다.

NTFS 변경법은

시작-> 실행-> 'cmd'  (Enter)

도스창에서 'c:\>convert c: /fs:ntfs' (Enter)

그게 끝나면 다시 'c:\>convert d: /fs:ntfs' (Enter)

================================================================================================

FAT32와 NTFS 의 비교
 

NTFS

장점

1.FAT32에서는 가능하지 않은, 일부 디스크 관련 오류를 자동으로 복구할 수 있다.

2.대용량 디스크에 대한 지원이 향상되었다.

3.사용 권한 및 암호화를 사용하여 승인된 사용자만 특정 파일에 액세스할 수 있게 하므로 보안이 향상되었다.

4.디스크 조각 모음을 하지 않아도 된다.

단점

FAT32는 이 NTFS에 접근을 하지 못하므로 Windows 95, Windows 98 또는 Windows ME 등과 같은 FAT32를

사용하는 버전과 다중 부팅을할 수 없다.

 

FAT32

장점

Windows 95, Windows 98 및 Windows ME과 같은 버전의과 다중 부팅을 구성할 수 있다.

단점

1.FAT32에는 NTFS가 제공하는 보안 기능이 없으므로 컴퓨터에 FAT32 파티션 또는 볼륨이 있는 경우 컴퓨터에

  액세스 가능한 모든 사용자가 파일을 읽을 수 있다. 그리고 FAT32에는 크기 제한이 있다.

2.32GB보다 큰 FAT32 파티션을 만들 수 없고 FAT32 파티션에 4GB를 초과하는 파일을 저장할 수 없다.


[MSDN][VS6.0] DECLARE_DYNCREATE

저장소/VC++

DECLARE_DYNCREATE

DECLARE_DYNCREATE( class_name )

Parameters

class_name

The actual name of the class (not enclosed in quotation marks).

Remarks

Use the DECLARE_DYNCREATE macro to enable objects of CObject-derived classes to be created dynamically at run time. The framework uses this ability to create new objects dynamically, for example, when it reads an object from disk during serialization. Document, view, and frame classes should support dynamic creation because the framework needs to create them dynamically.

Add the DECLARE_DYNCREATE macro in the .H module for the class, then include that module in all .CPP modules that need access to objects of this class.

If DECLARE_DYNCREATE is included in the class declaration, then IMPLEMENT_DYNCREATE must be included in the class implementation.

For more information on the DECLARE_DYNCREATE macro, seeCObject Class Topics in Visual C++ Programmer’s Guide.

Example

See the example for IMPLEMENT_DYNCREATE.

See Also   DECLARE_DYNAMIC, IMPLEMENT_DYNAMIC, IMPLEMENT_DYNCREATE, RUNTIME_CLASS, CObject::IsKindOf


'저장소 > VC++' 카테고리의 다른 글

[MSDN][VS6.0] IMPLEMENT_DYNCREATE  (0) 2009.09.22
[MSDN][VS6.0] RUNTIME_CLASS  (0) 2009.09.22
[MSDN][VS6.0] Predefined Macros  (0) 2009.09.22
[Error/Warning] fatal error C1902  (0) 2009.09.22
[Tool] VS2005 단축키 및 매크로  (0) 2009.09.22

[MSDN][VS6.0] Predefined Macros

저장소/VC++
Predefined Macros

The compiler recognizes six predefined ANSI C macros (see Table 1.1), and the Microsoft C++ implementation provides several more (see Table 1.2). These macros take no arguments and cannot be redefined. Their value (except for __LINE__ and __FILE__) must be constant throughout compilation. Some of the predefined macros listed below are defined with multiple values. Their values can be set by selecting the corresponding menu option in the Visual C++ development environment, or by using a command-line switch. See the tables below for more information.

Table 1.1   ANSI Predefined Macros

Macro Description
__DATE__ The compilation date of the current source file. The date is a string literal of the form Mmm dd yyyy. The month name Mmm is the same as for dates generated by the library function asctime declared in TIME.H.
__FILE__ The name of the current source file. __FILE__ expands to a string surrounded by double quotation marks.
__LINE__ The line number in the current source file. The line number is a decimal integer constant. It can be altered with a #line directive.
__STDC__ Indicates full conformance with the ANSI C standard. Defined as the integer constant 1 only if the /Za compiler option is given and you are not compiling C++ code; otherwise is undefined.
__TIME__ The most recent compilation time of the current source file. The time is a string literal of the form hh:mm:ss.
__TIMESTAMP__ The date and time of the last modification of the current source file, expressed as a string literal in the form Ddd Mmm Date hh:mm:ss yyyy, where Ddd is the abbreviated day of the week and Date is an integer from 1 to 31.

 

Table 1.2   Microsoft-Specific Predefined Macros

Macro Description
_CHAR_UNSIGNED Default char type is unsigned. Defined when /J is specified.
__cplusplus Defined for C++ programs only.
_CPPRTTI Defined for code compiled with /GR (Enable Run-Time Type Information).
_CPPUNWIND Defined for code compiled with /GX (Enable Exception Handling).
_DLL Defined when /MD or /MDd (Multithread DLL) is specified.
_M_ALPHA Defined for DEC ALPHA platforms. It is defined as 1 by the ALPHA compiler, and it is not defined if another compiler is used.
_M_IX86 Defined for x86 processors. See Table 1.3 for more details.
_M_MPPC Defined for Power Macintosh platforms. Default is 601 (/QP601). See Table 1.4 for more details.
_M_MRX000 Defined for MIPS platforms. Default is 4000 (/QMR4000). See Table 1.5 for more details.
_M_PPC Defined for PowerPC platforms. Default is 604 (/QP604). See Table 1.6 for more details.
_MFC_VER Defines the MFC version. Defined as 0x0421 for Microsoft Foundation Class Library 4.21. Always defined.
_MSC_EXTENSIONS This macro is defined when compiling with the /Ze compiler option (the default).  Its value, when defined, is 1.
_MSC_VER Defines the compiler version. Defined as 1200 for Microsoft Visual C++ 6.0. Always defined.
_MT Defined when /MD or /MDd (Multithreaded DLL) or /MT or /MTd (Multithreaded) is specified.
_WIN32 Defined for applications for Win32®. Always defined.

As shown in following tables, the compiler generates a value for the preprocessor identifiers that reflect the processor option specified.

Table 1.3   Values for _M_IX86

Option in Developer Studio Command-Line Option Resulting Value
Blend /GB _M_IX86 = 500 (Default. Future compilers will emit a different value to reflect the dominant processor.)
Pentium /G5 _M_IX86 = 500
Pentium Pro /G6 _M_IX86 = 600
80386 /G3 _M_IX86 = 300
80486 /G4 _M_IX86 = 400

 

Table 1.4   Values for _M_MPPC

Option in development environment Command-Line Option Resulting Value
PowerPC 601 /QP601 _M_MPPC = 601 (Default)
PowerPC 603 /QP603 _M_MPPC = 603
PowerPC 604 /QP604 _M_MPPC = 604
PowerPC 620 /QP620 _M_MPPC = 620

 

Table 1.5   Values for _M_MRX000

Option in Developer Studio Command-Line Option Resulting Value
R4000 /QMR4000 _M_MRX000 = 4000 (Default)
R4100 /QMR4100 _M_MRX000 = 4100
R4200 /QMR4200 _M_MRX000 = 4200
R4400 /QMR4400 _M_MRX000 = 4400
R4600 /QMR4600 _M_MRX000 = 4600
R10000 /QMR10000 _M_MRX000 = 10000

 

Table 1.6   Values for _M_PPC

Option in Developer Studio Command-Line Option Resulting Value
PowerPC 601 /QP601 _M_PPC = 601
PowerPC 603 /QP603 _M_PPC = 603
PowerPC 604 /QP604 _M_PPC = 604 (Default)
PowerPC 620 /QP620 _M_PPC = 620


'저장소 > VC++' 카테고리의 다른 글

[MSDN][VS6.0] RUNTIME_CLASS  (0) 2009.09.22
[MSDN][VS6.0] DECLARE_DYNCREATE  (0) 2009.09.22
[Error/Warning] fatal error C1902  (0) 2009.09.22
[Tool] VS2005 단축키 및 매크로  (0) 2009.09.22
[Tool] VS2005 환경설정 및 단축키 설정  (0) 2009.09.22

[XPCOM | C++] nsIContentPolicy - ShouldLoad

저장소/잡다한거
nsIContentPolicy의  ShouldLoad함수는 그냥 그때그때 상황에 맞는 상태만 확인할 수 있음.
navigate 제어나 뭐 그딴건 안됨.
aContentType에 따라서 aContext로 들어오는 DOMNode가 달라짐.
어쨌든 제어 안됨.

*_retval = REJECT_REQUEST or REJECT_SERVER로 return하게되면 현재 동작에 대해 진행이 안됨.
aExtra에 뭔짓을 하면 ShouldLoad()를 벗어나 뭔가 할 수 있다 하는 것 같은데
어이 하는지 모르는 관계로 걍 Observer()를 통해 처리하기로 함.

/************************************************************************/
/* nsIContentPolicy interface                                           */
/************************************************************************/
/**
* Should the resource at this location be loaded?
* ShouldLoad will be called before loading the resource at aContentLocation
* to determine whether to start the load at all.
*
* @param aContentType      the type of content being tested. This will be one
*                          one of the TYPE_* constants.
*
* @param aContentLocation  the location of the content being checked; must
*                          not be null
*
* @param aRequestOrigin    OPTIONAL. the location of the resource that
*                          initiated this load request; can be null if
*                          inapplicable
*
* @param aContext          OPTIONAL. the nsIDOMNode or nsIDOMWindow that
*                          initiated the request, or something that can QI
*                          to one of those; can be null if inapplicable.
*
* @param aMimeTypeGuess    OPTIONAL. a guess for the requested content's
*                          MIME type, based on information available to
*                          the request initiator (e.g., an OBJECT's type
*                          attribute); does not reliably reflect the
*                          actual MIME type of the requested content
*
* @param aExtra            an OPTIONAL argument, pass-through for non-Gecko
*                          callers to pass extra data to callees.
*
* @return ACCEPT or REJECT_*
*
* @note shouldLoad can be called while the DOM and layout of the document
* involved is in an inconsistent state.  This means that implementors of
* this method MUST NOT do any of the following:
* 1)  Modify the DOM in any way (e.g. setting attributes is a no-no).
* 2)  Query any DOM properties that depend on layout (e.g. offset*
*     properties).
* 3)  Query any DOM properties that depend on style (e.g. computed style).
* 4)  Query any DOM properties that depend on the current state of the DOM
*     outside the "context" node (e.g. lengths of node lists).
* 5)  [JavaScript implementations only] Access properties of any sort on any
*     object without using XPCNativeWrapper (either explicitly or
*     implicitly).  Due to various DOM0 things, this leads to item 4.
* If you do any of these things in your shouldLoad implementation, expect
* unpredictable behavior, possibly including crashes, content not showing
* up, content showing up doubled, etc.  If you need to do any of the things
* above, do them off timeout or event.
**/
/* short shouldLoad (in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeTypeGuess, in nsISupports aExtra); */

NS_IMETHODIMP XXXXXXX::ShouldLoad(PRUint32 aContentType,
             nsIURI *aContentLocation,
             nsIURI *aRequestOrigin,
             nsISupports *aContext,
             const nsACString & aMimeTypeGuess,
             nsISupports *aExtra,
             PRInt16 *_retval)

[Error/Warning] fatal error C1902

저장소/VC++

fatal error C1902: 프로그램 데이터베이스 관리자가 일치하지 않습니다.

이건 뭐임? -_-;;

dumpbin.exe 사용 좀 하려 했더니
mspdb80.dll을 찾는다.

그래서 복사했더니 요모양 요꼴~

지워주면 정상적으로 된다.
원인은 도데체 무엇인가...