Annotation of mstools/mfc/src/olemisc.cpp, revision 1.1.1.1

1.1       root        1: // This is a part of the Microsoft Foundation Classes C++ library. 
                      2: // Copyright (C) 1992 Microsoft Corporation 
                      3: // All rights reserved. 
                      4: //  
                      5: // This source code is only intended as a supplement to the 
                      6: // Microsoft Foundation Classes Reference and Microsoft 
                      7: // QuickHelp documentation provided with the library. 
                      8: // See these sources for detailed information regarding the 
                      9: // Microsoft Foundation Classes product. 
                     10: 
                     11: 
                     12: #include "afxole.h"
                     13: #pragma hdrstop
                     14: 
                     15: #include <limits.h>
                     16: 
                     17: #ifdef AFX_OLE_SEG
                     18: #pragma code_seg(AFX_OLE_SEG)
                     19: #endif
                     20: 
                     21: #ifdef _DEBUG
                     22: #undef THIS_FILE
                     23: static char BASED_CODE THIS_FILE[] = __FILE__;
                     24: #endif
                     25: 
                     26: /////////////////////////////////////////////////////////////////////////////
                     27: // Exceptions for OLE Support
                     28: 
                     29: #ifdef _DEBUG
                     30: // character strings to use for dumping COleException
                     31: 
                     32: static char BASED_CODE szOK[] = "OLE_OK";
                     33: static char BASED_CODE szWAIT_FOR_RELEASE[] = "OLE_WAIT_FOR_RELEASE";
                     34: static char BASED_CODE szBUSY[] = "OLE_BUSY";
                     35: static char BASED_CODE szErrPROTECT_ONLY[] = "OLE_ERROR_PROTECT_ONLY";
                     36: static char BASED_CODE szErrMEMORY[] = "OLE_ERROR_MEMORY";
                     37: static char BASED_CODE szErrSTREAM[] = "OLE_ERROR_STREAM";
                     38: static char BASED_CODE szErrSTATIC[] = "OLE_ERROR_STATIC";
                     39: static char BASED_CODE szErrBLANK[] = "OLE_ERROR_BLANK";
                     40: static char BASED_CODE szErrDRAW[] = "OLE_ERROR_DRAW";
                     41: static char BASED_CODE szErrMETAFILE[] = "OLE_ERROR_METAFILE";
                     42: static char BASED_CODE szErrABORT[] = "OLE_ERROR_ABORT";
                     43: static char BASED_CODE szErrCLIPBOARD[] = "OLE_ERROR_CLIPBOARD";
                     44: static char BASED_CODE szErrFORMAT[] = "OLE_ERROR_FORMAT";
                     45: static char BASED_CODE szErrOBJECT[] = "OLE_ERROR_OBJECT";
                     46: static char BASED_CODE szErrOPTION[] = "OLE_ERROR_OPTION";
                     47: static char BASED_CODE szErrPROTOCOL[] = "OLE_ERROR_PROTOCOL";
                     48: static char BASED_CODE szErrADDRESS[] = "OLE_ERROR_ADDRESS";
                     49: static char BASED_CODE szErrNOT_EQUAL[] = "OLE_ERROR_NOT_EQUAL";
                     50: static char BASED_CODE szErrHANDLE[] = "OLE_ERROR_HANDLE";
                     51: static char BASED_CODE szErrGENERIC[] = "OLE_ERROR_GENERIC";
                     52: static char BASED_CODE szErrCLASS[] = "OLE_ERROR_CLASS";
                     53: static char BASED_CODE szErrSYNTAX[] = "OLE_ERROR_SYNTAX";
                     54: static char BASED_CODE szErrDATATYPE[] = "OLE_ERROR_DATATYPE";
                     55: static char BASED_CODE szErrPALETTE[] = "OLE_ERROR_PALETTE";
                     56: static char BASED_CODE szErrNOT_LINK[] = "OLE_ERROR_NOT_LINK";
                     57: static char BASED_CODE szErrNOT_EMPTY[] = "OLE_ERROR_NOT_EMPTY";
                     58: static char BASED_CODE szErrSIZE[] = "OLE_ERROR_SIZE";
                     59: static char BASED_CODE szErrDRIVE[] = "OLE_ERROR_DRIVE";
                     60: static char BASED_CODE szErrNETWORK[] = "OLE_ERROR_NETWORK";
                     61: static char BASED_CODE szErrNAME[] = "OLE_ERROR_NAME";
                     62: static char BASED_CODE szErrTEMPLATE[] = "OLE_ERROR_TEMPLATE";
                     63: static char BASED_CODE szErrNEW[] = "OLE_ERROR_NEW";
                     64: static char BASED_CODE szErrEDIT[] = "OLE_ERROR_EDIT";
                     65: static char BASED_CODE szErrOPEN[] = "OLE_ERROR_OPEN";
                     66: static char BASED_CODE szErrNOT_OPEN[] = "OLE_ERROR_NOT_OPEN";
                     67: static char BASED_CODE szErrLAUNCH[] = "OLE_ERROR_LAUNCH";
                     68: static char BASED_CODE szErrCOMM[] = "OLE_ERROR_COMM";
                     69: static char BASED_CODE szErrTERMINATE[] = "OLE_ERROR_TERMINATE";
                     70: static char BASED_CODE szErrCOMMAND[] = "OLE_ERROR_COMMAND";
                     71: static char BASED_CODE szErrSHOW[] = "OLE_ERROR_SHOW";
                     72: static char BASED_CODE szErrDOVERB[] = "OLE_ERROR_DOVERB";
                     73: static char BASED_CODE szErrADVISE_NATIVE[] = "OLE_ERROR_ADVISE_NATIVE";
                     74: static char BASED_CODE szErrADVISE_PICT[] = "OLE_ERROR_ADVISE_PICT";
                     75: static char BASED_CODE szErrADVISE_RENAME[] = "OLE_ERROR_ADVISE_RENAME";
                     76: static char BASED_CODE szErrPOKE_NATIVE[] = "OLE_ERROR_POKE_NATIVE";
                     77: static char BASED_CODE szErrREQUEST_NATIVE[] = "OLE_ERROR_REQUEST_NATIVE";
                     78: static char BASED_CODE szErrREQUEST_PICT[] = "OLE_ERROR_REQUEST_PICT";
                     79: static char BASED_CODE szErrSERVER_BLOCKED[] = "OLE_ERROR_SERVER_BLOCKED";
                     80: static char BASED_CODE szErrREGISTRATION[] = "OLE_ERROR_REGISTRATION";
                     81: static char BASED_CODE szErrALREADY_REGISTERED[] = "OLE_ERROR_ALREADY_REGISTERED";
                     82: static char BASED_CODE szErrTASK[] = "OLE_ERROR_TASK";
                     83: static char BASED_CODE szErrOUTOFDATE[] = "OLE_ERROR_OUTOFDATE";
                     84: static char BASED_CODE szErrCANT_UPDATE_CLIENT[] = "OLE_ERROR_CANT_UPDATE_CLIENT";
                     85: static char BASED_CODE szErrUPDATE[] = "OLE_ERROR_UPDATE";
                     86: 
                     87: static char FAR* BASED_CODE errorStrings[] =
                     88: {
                     89:        szOK,
                     90:        szWAIT_FOR_RELEASE,
                     91:        szBUSY,
                     92:        szErrPROTECT_ONLY,
                     93:        szErrMEMORY,
                     94:        szErrSTREAM,
                     95:        szErrSTATIC,
                     96:        szErrBLANK,
                     97:        szErrDRAW,
                     98:        szErrMETAFILE,
                     99:        szErrABORT,
                    100:        szErrCLIPBOARD,
                    101:        szErrFORMAT,
                    102:        szErrOBJECT,
                    103:        szErrOPTION,
                    104:        szErrPROTOCOL,
                    105:        szErrADDRESS,
                    106:        szErrNOT_EQUAL,
                    107:        szErrHANDLE,
                    108:        szErrGENERIC,
                    109:        szErrCLASS,
                    110:        szErrSYNTAX,
                    111:        szErrDATATYPE,
                    112:        szErrPALETTE,
                    113:        szErrNOT_LINK,
                    114:        szErrNOT_EMPTY,
                    115:        szErrSIZE,
                    116:        szErrDRIVE,
                    117:        szErrNETWORK,
                    118:        szErrNAME,
                    119:        szErrTEMPLATE,
                    120:        szErrNEW,
                    121:        szErrEDIT,
                    122:        szErrOPEN,
                    123:        szErrNOT_OPEN,
                    124:        szErrLAUNCH,
                    125:        szErrCOMM,
                    126:        szErrTERMINATE,
                    127:        szErrCOMMAND,
                    128:        szErrSHOW,
                    129:        szErrDOVERB,
                    130:        szErrADVISE_NATIVE,
                    131:        szErrADVISE_PICT,
                    132:        szErrADVISE_RENAME,
                    133:        szErrPOKE_NATIVE,
                    134:        szErrREQUEST_NATIVE,
                    135:        szErrREQUEST_PICT,
                    136:        szErrSERVER_BLOCKED,
                    137:        szErrREGISTRATION,
                    138:        szErrALREADY_REGISTERED,
                    139:        szErrTASK,
                    140:        szErrOUTOFDATE,
                    141:        szErrCANT_UPDATE_CLIENT,
                    142:        szErrUPDATE,
                    143: };
                    144: #endif //_DEBUG
                    145: 
                    146: 
                    147: IMPLEMENT_DYNAMIC(COleException, CException)
                    148: 
                    149: COleException::COleException(OLESTATUS status)
                    150: {
                    151:        ASSERT(status != OLE_OK);
                    152:        m_status = status;
                    153: }
                    154: 
                    155: void AfxThrowOleException(OLESTATUS status)
                    156: {
                    157: #ifdef _DEBUG
                    158:        TRACE("Warning: Throwing OLE Exception (OLESTATUS = %d)\n", status);
                    159:        TRACE("\t[%Fs]\n", (LPCSTR)errorStrings[status]);
                    160: #endif
                    161:        THROW(new COleException(status));
                    162: }
                    163: 
                    164: /////////////////////////////////////////////////////////////////////////////
                    165: // Turn a caught exception into an OLE return code
                    166: 
                    167: OLESTATUS COleException::Process(CException* pAnyException)
                    168: {
                    169:        OLESTATUS status;
                    170: 
                    171:        if (pAnyException->IsKindOf(RUNTIME_CLASS(COleException)))
                    172:                status = ((COleException*)pAnyException)->m_status;
                    173:        else if (pAnyException->IsKindOf(RUNTIME_CLASS(CMemoryException)))
                    174:                status = OLE_ERROR_MEMORY;
                    175:        else
                    176:                status = OLE_ERROR_GENERIC;     // some other problem
                    177: 
                    178:        return status;
                    179: }
                    180: 
                    181: /////////////////////////////////////////////////////////////////////////////

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.