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

📄 mywindows.h

📁 sleuthit-2.09 一个磁盘的工具集
💻 H
字号:
// MyWindows.h#ifndef __MYWINDOWS_H#define __MYWINDOWS_H#ifdef _WIN32#include <windows.h>#define CHAR_PATH_SEPARATOR '\\'#define WCHAR_PATH_SEPARATOR L'\\'#define STRING_PATH_SEPARATOR "\\"#define WSTRING_PATH_SEPARATOR L"\\"#else#define CHAR_PATH_SEPARATOR '/'#define WCHAR_PATH_SEPARATOR L'/'#define STRING_PATH_SEPARATOR "/"#define WSTRING_PATH_SEPARATOR L"/"#include <stddef.h> // for wchar_t#include <string.h>#include "MyGuidDef.h"typedef char CHAR;typedef unsigned char UCHAR;#undef BYTEtypedef unsigned char BYTE;typedef short SHORT;typedef unsigned short USHORT;#undef WORDtypedef unsigned short WORD;typedef short VARIANT_BOOL;typedef int INT;typedef Int32 INT32;typedef unsigned int UINT;typedef UInt32 UINT32;typedef INT32 LONG;   // LONG, ULONG and DWORD must be 32-bittypedef UINT32 ULONG;#undef DWORDtypedef UINT32 DWORD;typedef Int64 LONGLONG;typedef UInt64 ULONGLONG;typedef struct LARGE_INTEGER { LONGLONG QuadPart; }LARGE_INTEGER;typedef struct _ULARGE_INTEGER { ULONGLONG QuadPart;} ULARGE_INTEGER;typedef const CHAR *LPCSTR;typedef CHAR TCHAR;typedef const TCHAR *LPCTSTR;typedef wchar_t WCHAR;typedef WCHAR OLECHAR;typedef const WCHAR *LPCWSTR;typedef OLECHAR *BSTR;typedef const OLECHAR *LPCOLESTR;typedef OLECHAR *LPOLESTR;typedef struct _FILETIME{  DWORD dwLowDateTime;  DWORD dwHighDateTime;}FILETIME;#define HRESULT LONG#define FAILED(Status) ((HRESULT)(Status)<0)typedef ULONG PROPID;typedef LONG SCODE;#define S_OK    ((HRESULT)0x00000000L)#define S_FALSE ((HRESULT)0x00000001L)#define E_NOTIMPL ((HRESULT)0x80004001L)#define E_NOINTERFACE ((HRESULT)0x80004002L)#define E_ABORT ((HRESULT)0x80004004L)#define E_FAIL ((HRESULT)0x80004005L)#define STG_E_INVALIDFUNCTION ((HRESULT)0x80030001L)#define E_OUTOFMEMORY ((HRESULT)0x8007000EL)#define E_INVALIDARG ((HRESULT)0x80070057L)#ifdef _MSC_VER#define STDMETHODCALLTYPE __stdcall #else#define STDMETHODCALLTYPE #endif#define STDMETHOD_(t, f) virtual t STDMETHODCALLTYPE f#define STDMETHOD(f) STDMETHOD_(HRESULT, f)#define STDMETHODIMP_(type) type STDMETHODCALLTYPE#define STDMETHODIMP STDMETHODIMP_(HRESULT)#define PURE = 0#define MIDL_INTERFACE(x) struct struct IUnknown{  STDMETHOD(QueryInterface) (REFIID iid, void **outObject) PURE;  STDMETHOD_(ULONG, AddRef)() PURE;  STDMETHOD_(ULONG, Release)() PURE;  #ifndef _WIN32  virtual ~IUnknown() {}  #endif};typedef IUnknown *LPUNKNOWN;#define VARIANT_TRUE ((VARIANT_BOOL)-1)#define VARIANT_FALSE ((VARIANT_BOOL)0)enum VARENUM{  VT_EMPTY = 0,  VT_NULL = 1,  VT_I2 = 2,  VT_I4 = 3,  VT_R4 = 4,  VT_R8 = 5,  VT_CY = 6,  VT_DATE = 7,  VT_BSTR = 8,  VT_DISPATCH = 9,  VT_ERROR = 10,  VT_BOOL = 11,  VT_VARIANT = 12,  VT_UNKNOWN = 13,  VT_DECIMAL = 14,  VT_I1 = 16,  VT_UI1 = 17,  VT_UI2 = 18,  VT_UI4 = 19,  VT_I8 = 20,  VT_UI8 = 21,  VT_INT = 22,  VT_UINT = 23,  VT_VOID = 24,  VT_HRESULT = 25,  VT_FILETIME = 64};typedef unsigned short VARTYPE;typedef WORD PROPVAR_PAD1;typedef WORD PROPVAR_PAD2;typedef WORD PROPVAR_PAD3;typedef struct tagPROPVARIANT{  VARTYPE vt;  PROPVAR_PAD1 wReserved1;  PROPVAR_PAD2 wReserved2;  PROPVAR_PAD3 wReserved3;  union   {    CHAR cVal;    UCHAR bVal;    SHORT iVal;    USHORT uiVal;    LONG lVal;    ULONG ulVal;    INT intVal;    UINT uintVal;    LARGE_INTEGER hVal;    ULARGE_INTEGER uhVal;    VARIANT_BOOL boolVal;    SCODE scode;    FILETIME filetime;    BSTR bstrVal;  };} PROPVARIANT;typedef PROPVARIANT tagVARIANT;typedef tagVARIANT VARIANT;typedef VARIANT VARIANTARG;MY_EXTERN_C BSTR SysAllocStringByteLen(LPCSTR psz, UINT len);MY_EXTERN_C BSTR SysAllocString(const OLECHAR *sz);MY_EXTERN_C void SysFreeString(BSTR bstr);MY_EXTERN_C UINT SysStringByteLen(BSTR bstr);MY_EXTERN_C UINT SysStringLen(BSTR bstr);MY_EXTERN_C DWORD GetLastError();MY_EXTERN_C HRESULT VariantClear(VARIANTARG *prop);MY_EXTERN_C HRESULT VariantCopy(VARIANTARG *dest, VARIANTARG *src);MY_EXTERN_C LONG CompareFileTime(const FILETIME* ft1, const FILETIME* ft2);#define CP_ACP    0#define CP_OEMCP  1typedef enum tagSTREAM_SEEK{  STREAM_SEEK_SET = 0,  STREAM_SEEK_CUR = 1,  STREAM_SEEK_END = 2} STREAM_SEEK;#endif#endif

⌨️ 快捷键说明

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