⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mapiwin.h

📁 希望我上传的这些东西可以对搞编程的程序员有点小小的帮助!谢谢!
💻 H
📖 第 1 页 / 共 2 页
字号:
#define LoadLibraryA                LoadLibrary
#define lstrcatA                    lstrcat
#define RegisterWindowMessageA      RegisterWindowMessage
#define MAKEINTRESOURCEA            MAKEINTRESOURCE

#define WNDCLASSA                   WNDCLASS                                    

#endif  /* !_MAC */

/* Synchronization */
#define InterlockedIncrement(plong) (++(*(plong)))
#define InterlockedDecrement(plong) (--(*(plong)))

#ifndef CreateMutex
#define CreateMutexA    CreateMutex
#define CreateMutexW    CreateMutex
#define CreateMutex(pv, bool, sz)   (INVALID_HANDLE_VALUE)
#endif

#define WaitForSingleObject(hObj, dw)   ((void)0)
#define ReleaseMutex(hObj)              ((BOOL)1)
#define CloseMutexHandle(hObj)          TRUE

#define CRITICAL_SECTION            ULONG
#define InitializeCriticalSection(_pcs) ((void)0)
#define DeleteCriticalSection(_pcs)     ((void)0)
#define EnterCriticalSection(_pcs)      ((void)0)
#define LeaveCriticalSection(_pcs)      ((void)0)

#define MAX_PATH                    260

#ifndef _MAC
/*
 *  File Access Modes
 *
 *  The possible combination of file access modes as passed into
 *  the CreateFile() api map to OpenFile() as follows:
 *
 *   GENERIC_READ                       OPEN_ACCESS_READONLY
 *   GENERIC_WRITE                      OPEN_ACCESS_WRITEONLY
 *   GENERIC_READ | GENERIC_WRITE       OPEN_ACCESS_READWRITE
 *
 *   0                                  OPEN_SHARE_DENYREADWRITE
 *   FILE_SHARE_READ                    OPEN_SHARE_DENYWRITE
 *   FILE_SHARE_WRITE                   OPEN_SHARE_DENYREAD
 *   FILE_SHARE_READ | FILE_SHARE_WRITE OPEN_SHARE_DENYNONE
 *
 *  Due to the mappings we cannot pass them through directly,
 *  so we will have to use a conversion within APIs that test
 *  these bits.  It would be best to use the Win32 #defines
 *  for these flags and convert as needed in the APIs.
 */
#define GENERIC_READ                (0x80000000) /* from WINNT.H */
#define GENERIC_WRITE               (0x40000000) /* from WINNT.H */
#define FILE_SHARE_READ             (0x00000001) /* from WINNT.H */
#define FILE_SHARE_WRITE            (0x00000002) /* from WINNT.H */
#endif  /* _MAC */

#define FILE_FLAG_SEQUENTIAL_SCAN   0x08000000

#define CREATE_NEW          1
#define CREATE_ALWAYS       2
#define OPEN_EXISTING       3
#define OPEN_ALWAYS         4
#define TRUNCATE_EXISTING   5

#ifndef _MAC
#define INVALID_HANDLE_VALUE        ((HANDLE)(-1))
#define DELETE                      0x00010000L

#define FILE_BEGIN                  0
#define FILE_CURRENT                1
#define FILE_END                    2
#endif

#define FILE_ATTRIBUTE_READONLY         0x00000001
#define FILE_ATTRIBUTE_HIDDEN           0x00000002
#define FILE_ATTRIBUTE_SYSTEM           0x00000004
#define FILE_ATTRIBUTE_DIRECTORY        0x00000010
#define FILE_ATTRIBUTE_ARCHIVE          0x00000020
#define FILE_ATTRIBUTE_NORMAL           0x00000080
#define FILE_ATTRIBUTE_TEMPORARY        0x00000100

#define FILE_FLAG_WRITE_THROUGH     0x80000000
#define FILE_FLAG_RANDOM_ACCESS     0x10000000

#ifndef _MAC
typedef struct _WIN32_FIND_DATA {
    DWORD       dwFileAttributes;
    FILETIME    ftCreationTime;
    FILETIME    ftLastAccessTime;
    FILETIME    ftLastWriteTime;
    DWORD       nFileSizeHigh;
    DWORD       nFileSizeLow;
    DWORD       dwReserved0;
    DWORD       dwReserved1;
    CHAR        cFileName[ MAX_PATH ];
    CHAR        cAlternateFileName[ 16 ];
} WIN32_FIND_DATA, *PWIN32_FIND_DATA, *LPWIN32_FIND_DATA;

#define TIME_ZONE_ID_INVALID        0xFFFFFFFF
#endif
#define TIME_ZONE_ID_UNKNOWN        0
#define TIME_ZONE_ID_STANDARD       1
#define TIME_ZONE_ID_DAYLIGHT       2



DWORD WINAPI    GetLastError(void);
DWORD WINAPI    GetFileAttributes(LPCSTR lpFileName);
DWORD WINAPI    GetFileSize(HANDLE hFile, LPDWORD lpFileSizeHigh);
BOOL WINAPI     GetFileTime(HANDLE hFile, FILETIME FAR *lpftCreation,
                FILETIME FAR *lpftLastAccess, FILETIME FAR *lpftLastWrite);
BOOL WINAPI     SetFileTime(HANDLE hFile, const FILETIME FAR *lpftCreation,
                const FILETIME FAR *lpftLastAccess,
                const FILETIME FAR *lpftLastWrite);
#ifndef _MAC
/*  IsTask can crash - here's a safer one.  */
BOOL WINAPI     FIsTask(HTASK hTask);

HANDLE WINAPI   CreateFile(LPCSTR lpFileName, DWORD dwDesiredAccess,
                DWORD dwShareMode, LPVOID lpSecurityAttributes,
                DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes,
                HANDLE hTemplateFile);
BOOL WINAPI     ReadFile(HANDLE hFile, LPVOID lpBuffer,
                DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead,
                LPVOID lpOverlapped);
BOOL WINAPI     WriteFile(HANDLE hFile, LPCVOID lpBuffer,
                DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten,
                LPVOID lpOverlapped);
#endif
DWORD WINAPI    SetFilePointer(HANDLE hFile, LONG lDistanceToMove,
                LONG FAR *lpDistanceToMoveHigh, DWORD dwMoveMethod);
BOOL WINAPI     SetEndOfFile(HANDLE hFile);
BOOL WINAPI     CloseHandle(HANDLE hObject);
DWORD WINAPI    GetTempPath(DWORD nBufferLength, LPSTR lpBuffer);
UINT WINAPI     GetTempFileName32 (LPCSTR lpPathName, LPCSTR lpPrefixString,
                UINT uUnique, LPSTR lpTempFileName);
BOOL WINAPI     DeleteFile(LPCSTR lpFileName);
#ifndef _MAC
BOOL WINAPI     CreateDirectory(LPCSTR lpPathName, LPVOID lpSecurityAttributes);
#endif
BOOL WINAPI     RemoveDirectory(LPCSTR lpPathName);
BOOL WINAPI     CopyFile(LPCSTR szSrc, LPCSTR szDst, BOOL fFailIfExists);
BOOL WINAPI     MoveFile(LPCSTR lpExistingFileName, LPCSTR lpNewFileName);
HANDLE WINAPI   FindFirstFile(LPCSTR lpFileName, LPWIN32_FIND_DATA lpFindFileData);
BOOL WINAPI     FindNextFile(HANDLE hFindFile, LPWIN32_FIND_DATA lpFindFileData);
BOOL WINAPI     FindClose(HANDLE hFindFile);
DWORD WINAPI    GetFullPathName(LPCSTR lpFileName, DWORD nBufferLength,
                LPSTR lpBuffer, LPSTR *lpFilePart);
void WINAPI     Sleep(DWORD dwMilliseconds);
LONG WINAPI     CompareFileTime(const FILETIME FAR *, const FILETIME FAR *);
BOOL WINAPI     LocalFileTimeToFileTime(const FILETIME FAR *, FILETIME FAR *);
BOOL WINAPI     FileTimeToLocalFileTime(const FILETIME FAR *, FILETIME FAR *);
BOOL WINAPI     FileTimeToSystemTime(const FILETIME FAR *, SYSTEMTIME FAR *);
BOOL WINAPI     SystemTimeToFileTime(const SYSTEMTIME FAR *, FILETIME FAR *);
void WINAPI     GetSystemTime(SYSTEMTIME FAR *);
void WINAPI     GetLocalTime(SYSTEMTIME FAR *);
BOOL WINAPI     FileTimeToDosDateTime(const FILETIME FAR * lpFileTime,
                WORD FAR *lpFatDate, WORD FAR *lpFatTime);
BOOL WINAPI     DosDateTimeToFileTime(WORD wFatDate, WORD wFatTime,
                FILETIME FAR * lpFileTime);
DWORD WINAPI    GetTimeZoneInformation(
                LPTIME_ZONE_INFORMATION lpTimeZoneInformation);
BOOL WINAPI     SetTimeZoneInformation(
                const TIME_ZONE_INFORMATION FAR *lpTimeZoneInformation);

DWORD WINAPI    GetCurrentProcessId(void);
long WINAPI     MulDiv32(long, long, long);
#ifndef _MAC
BOOL WINAPI     FBadReadPtr(const void FAR* lp, UINT cb);
#endif

#else   /* !WIN16 */

/* Remaps GetTempFileName32() to the real 32bit version */

#define GetTempFileName32(_szPath,_szPfx,_n,_lpbuf) GetTempFileName(_szPath,_szPfx,_n,_lpbuf)

#define CloseMutexHandle    CloseHandle

#endif  /* !WIN16 */


#ifdef _MAC
#define CRITICAL_SECTION            ULONG
#define InitializeCriticalSection(_pcs) ((void)0)
#define DeleteCriticalSection(_pcs)     ((void)0)
#define EnterCriticalSection(_pcs)      ((void)0)
#define LeaveCriticalSection(_pcs)      ((void)0)
#endif

/********************************/
/*  Our private conventions     */
/*  (common to WIN16/WIN32)     */
/********************************/

#define Cbtszsize(_a)   ((lstrlen(_a)+1)*sizeof(TCHAR))
#define CbtszsizeA(_a)  ((lstrlenA(_a) + 1))
#define CbtszsizeW(_a)  ((lstrlenW(_a) + 1) * sizeof(WCHAR))
#define HexCchOf(_s)    (sizeof(_s)*2+1)
#define HexSizeOf(_s)   (HexCchOf(_s)*sizeof(TCHAR))

BOOL WINAPI IsBadBoundedStringPtr(const void FAR* lpsz, UINT cchMax);

/* FUTURE - obsolete. OLE2 no longer contains these */
#define GetSCode                    GetScode
#define ReportResult(_a,_b,_c,_d)   ResultFromScode(_b)

#ifdef __cplusplus
}
#endif

#pragma option pop /*P_O_Pop*/
#endif /* __MAPIWIN_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -