📄 bsedos.mh
字号:
#define FS_SPOOLATTACH 2
#define FS_SPOOLDETACH 3
#define FSCTL_HANDLE 1
#define FSCTL_PATHNAME 2
#define FSCTL_FSDNAME 3
#define FSCTL_ERROR_INFO 1
#define FSCTL_MAX_EASIZE 2
#define FSCTL_GET_NEXT_ROUTE_NAME 3
#define FSCTL_DAEMON_QUERY 4
#define FSCTL_QUERY_COMPLETE 0
#define FSCTL_QUERY_AGAIN 1
#define FSAIL_QUERYNAME 1
#define FSAIL_DEVNUMBER 2
#define FSAIL_DRVNUMBER 3
#define FSAT_CHARDEV 1
#define FSAT_PSEUDODEV 2
#define FSAT_LOCALDRV 3
#define FSAT_REMOTEDRV 4
#define HANDTYPE_FILE 0x0000
#define HANDTYPE_DEVICE 0x0001
#define HANDTYPE_PIPE 0x0002
#define HANDTYPE_PROTECTED 0x4000
#define HANDTYPE_NETWORK 0x8000
#define EAT_APPTYP_PMAPI 0x00
#define EAT_APPTYP_DOS 0x01
#define EAT_APPTYP_PMW 0x02
#define EAT_APPTYP_NOPMW 0x03
#define EAT_APPTYP_EXETYPE 0x03
#define EAT_APPTYP_RESERVED ~(EAT_APPTYP_EXETYPE)
#define EAT_BINARY 0xFFFE
#define EAT_ASCII 0xFFFD
#define EAT_BITMAP 0xFFFB
#define EAT_METAFILE 0xFFFA
#define EAT_ICON 0xFFF9
#define EAT_EA 0xFFEE
#define EAT_MVMT 0xFFDF
#define EAT_MVST 0xFFDE
#define EAT_ASN1 0xFFDD
#define FEA_NEEDEA 0x80
#define DSPI_WRTTHRU 0x10
#define LISTIO_ORDERED 1
#define LISTIO_UNORDERED 2
#define LISTIO_READ 4
#define LISTIO_WRITE 8
#define ENUMEA_LEVEL_NO_VALUE 1
#define ENUMEA_REFTYPE_FHANDLE 0
#define ENUMEA_REFTYPE_PATH 1
#define ENUMEA_REFTYPE_MAX ENUMEA_REFTYPE_PATH
typedef LHANDLE HDIR, *PHDIR;
typedef ULONG FHLOCK, *PFHLOCK;
typedef struct _FILELOCK {
LONG lOffset;
LONG lRange;
} FILELOCK, *PFILELOCK;
typedef struct _FILELOCKL {
LONGLONG lOffset;
LONGLONG lRange;
} FILELOCKL, *PFILELOCKL;
typedef struct _FDATE {
USHORT day:5;
USHORT month:4;
USHORT year:7;
} FDATE, *PFDATE;
typedef struct _FTIME {
USHORT twosecs:5;
USHORT minutes:6;
USHORT hours:5;
} FTIME, *PFTIME;
typedef struct _FILEFINDBUF {
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
ULONG cbFile;
ULONG cbFileAlloc;
USHORT attrFile;
UCHAR cchName;
CHAR achName[CCHMAXPATHCOMP];
} FILEFINDBUF, *PFILEFINDBUF;
typedef _Packed struct _FILEFINDBUF2 {
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
ULONG cbFile;
ULONG cbFileAlloc;
USHORT attrFile;
ULONG cbList;
UCHAR cchName;
CHAR achName[CCHMAXPATHCOMP];
} FILEFINDBUF2, *PFILEFINDBUF2;
typedef struct _FILEFINDBUF3 {
ULONG oNextEntryOffset;
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
ULONG cbFile;
ULONG cbFileAlloc;
ULONG attrFile;
UCHAR cchName;
CHAR achName[CCHMAXPATHCOMP];
} FILEFINDBUF3, *PFILEFINDBUF3;
typedef struct _FILEFINDBUF4 {
ULONG oNextEntryOffset;
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
ULONG cbFile;
ULONG cbFileAlloc;
ULONG attrFile;
ULONG cbList;
UCHAR cchName;
CHAR achName[CCHMAXPATHCOMP];
} FILEFINDBUF4, *PFILEFINDBUF4;
typedef struct _FILEFINDBUF3L {
ULONG oNextEntryOffset;
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
LONGLONG cbFile;
LONGLONG cbFileAlloc;
ULONG attrFile;
UCHAR cchName;
CHAR achName[CCHMAXPATHCOMP];
} FILEFINDBUF3L, *PFILEFINDBUF3L;
typedef struct _FILEFINDBUF4L {
ULONG oNextEntryOffset;
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
LONGLONG cbFile;
LONGLONG cbFileAlloc;
ULONG attrFile;
ULONG cbList;
UCHAR cchName;
CHAR achName[CCHMAXPATHCOMP];
} FILEFINDBUF4L, *PFILEFINDBUF4L;
typedef struct _FILESTATUS {
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
ULONG cbFile;
ULONG cbFileAlloc;
USHORT attrFile;
} FILESTATUS, *PFILESTATUS;
typedef _Packed struct _FILESTATUS2 {
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
ULONG cbFile;
ULONG cbFileAlloc;
USHORT attrFile;
ULONG cbList;
} FILESTATUS2, *PFILESTATUS2;
typedef struct _FILESTATUS3 {
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
ULONG cbFile;
ULONG cbFileAlloc;
ULONG attrFile;
} FILESTATUS3, *PFILESTATUS3;
typedef struct _FILESTATUS4 {
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
ULONG cbFile;
ULONG cbFileAlloc;
ULONG attrFile;
ULONG cbList;
} FILESTATUS4, *PFILESTATUS4;
typedef struct _FILESTATUS3L {
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
LONGLONG cbFile;
LONGLONG cbFileAlloc;
ULONG attrFile;
} FILESTATUS3L, *PFILESTATUS3L;
typedef struct _FILESTATUS4L {
FDATE fdateCreation;
FTIME ftimeCreation;
FDATE fdateLastAccess;
FTIME ftimeLastAccess;
FDATE fdateLastWrite;
FTIME ftimeLastWrite;
LONGLONG cbFile;
LONGLONG cbFileAlloc;
ULONG attrFile;
ULONG cbList;
} FILESTATUS4L, *PFILESTATUS4L;
typedef struct _FSALLOCATE {
ULONG idFileSystem;
ULONG cSectorUnit;
ULONG cUnit;
ULONG cUnitAvail;
USHORT cbSector;
} FSALLOCATE, *PFSALLOCATE;
typedef struct _GEA {
BYTE cbName;
CHAR szName[1];
} GEA, *PGEA;
typedef struct _GEALIST {
ULONG cbList;
GEA list[1];
} GEALIST, *PGEALIST;
typedef struct _FEA {
BYTE fEA;
BYTE cbName;
USHORT cbValue;
} FEA, *PFEA;
typedef struct _FEALIST {
ULONG cbList;
FEA list[1];
} FEALIST, *PFEALIST;
typedef struct _EAOP {
PGEALIST fpGEAList;
PFEALIST fpFEAList;
ULONG oError;
} EAOP, *PEAOP;
typedef struct _GEA2 {
ULONG oNextEntryOffset;
BYTE cbName;
CHAR szName[1];
} GEA2, *PGEA2;
typedef struct _GEA2LIST {
ULONG cbList;
GEA2 list[1];
} GEA2LIST, *PGEA2LIST;
typedef struct _FEA2 {
ULONG oNextEntryOffset;
BYTE fEA;
BYTE cbName;
USHORT cbValue;
CHAR szName[1];
} FEA2, *PFEA2;
typedef struct _FEA2LIST {
ULONG cbList;
FEA2 list[1];
} FEA2LIST, *PFEA2LIST;
typedef struct _EAOP2 {
PGEA2LIST fpGEA2List;
PFEA2LIST fpFEA2List;
ULONG oError;
} EAOP2, *PEAOP2;
typedef struct _EASIZEBUF {
USHORT cbMaxEASize;
ULONG cbMaxEAListSize;
} EASIZEBUF, *PEASIZEBUF;
typedef struct _ROUTENAMEBUF {
ULONG hRouteHandle;
UCHAR szRouteName;
} ROUTENAMEBUF, *PROUTENAMEBUF;
typedef struct _FSDTHREAD {
USHORT usFunc;
USHORT usStackSize;
ULONG ulPriorityClass;
LONG lPriorityLevel;
} FSDTHREAD;
typedef struct _FSDDAEMON {
USHORT usNumThreads;
USHORT usMoreFlag;
USHORT usCallInstance;
FSDTHREAD tdThrds[16];
} FSDDAEMON;
typedef struct _FSQBUFFER {
USHORT iType;
USHORT cbName;
UCHAR szName[1];
USHORT cbFSDName;
UCHAR szFSDName[1];
USHORT cbFSAData;
UCHAR rgFSAData[1];
} FSQBUFFER, *PFSQBUFFER;
typedef struct _FSQBUFFER2 {
USHORT iType;
USHORT cbName;
USHORT cbFSDName;
USHORT cbFSAData;
UCHAR szName[1];
UCHAR szFSDName[1];
UCHAR rgFSAData[1];
} FSQBUFFER2, *PFSQBUFFER2;
typedef struct _SPOOLATTACH {
USHORT hNmPipe;
ULONG ulKey;
} SPOOLATTACH, *PSPOOLATTACH;
typedef struct _VOLUMELABEL {
BYTE cch;
CHAR szVolLabel[12];
} VOLUMELABEL, *PVOLUMELABEL;
typedef struct _FSINFO {
FDATE fdateCreation;
FTIME ftimeCreation;
VOLUMELABEL vol;
} FSINFO, *PFSINFO;
typedef struct _LISTIO_CB {
HFILE hFile;
ULONG CmdFlag;
LONG Offset;
PVOID pBuffer;
ULONG NumBytes;
ULONG Actual;
ULONG RetCode;
ULONG Reserved;
ULONG Reserved2[3];
ULONG Reserved3[2];
} LISTIO, *PLISTIO;
typedef struct _LISTIO_CBL {
HFILE hFile;
ULONG CmdFlag;
LONGLONG Offset;
PVOID pBuffer;
ULONG NumBytes;
ULONG Actual;
ULONG RetCode;
ULONG Reserved;
ULONG Reserved2[3];
ULONG Reserved3[2];
} LISTIOL, *PLISTIOL;
typedef struct _DENA1 {
UCHAR reserved;
UCHAR cbName;
USHORT cbValue;
UCHAR szName[1];
} DENA1, *PDENA1;
typedef FEA2 DENA2;
typedef PFEA2 PDENA2;
APIRET APIENTRY DosCancelLockRequest(HFILE,PFILELOCK);
APIRET APIENTRY DosCancelLockRequestL(HFILE,PFILELOCKL);
APIRET APIENTRY DosClose(HFILE);
APIRET APIENTRY DosCopy(PCSZ,PCSZ,ULONG);
APIRET APIENTRY DosCreateDir(PCSZ,PEAOP2);
APIRET APIENTRY DosDelete(PCSZ);
APIRET APIENTRY DosDeleteDir(PCSZ);
APIRET APIENTRY DosDupHandle(HFILE,PHFILE);
APIRET APIENTRY DosEditName(ULONG,PCSZ,PCSZ,PBYTE,ULONG);
APIRET APIENTRY DosEnumAttribute(ULONG,PVOID,ULONG,PVOID,ULONG,PULONG,ULONG);
APIRET APIENTRY DosFindClose(HDIR);
APIRET APIENTRY DosFindFirst(PCSZ,PHDIR,ULONG,PVOID,ULONG,PULONG,ULONG);
APIRET APIENTRY DosFindNext(HDIR,PVOID,ULONG,PULONG);
APIRET APIENTRY DosForceDelete(PCSZ);
APIRET APIENTRY DosFSAttach(PCSZ,PCSZ,PVOID,ULONG,ULONG);
APIRET APIENTRY DosFSCtl(PVOID,ULONG,PULONG,PVOID,ULONG,PULONG,ULONG,PCSZ,HFILE,ULONG);
APIRET APIENTRY DosListIO(ULONG,ULONG,PLISTIO);
APIRET APIENTRY DosListIOL(LONG,LONG,PVOID);
APIRET APIENTRY DosMove(PCSZ,PCSZ);
APIRET APIENTRY DosOpen(PCSZ,PHFILE,PULONG,ULONG,ULONG,ULONG,ULONG,PEAOP2);
APIRET APIENTRY DosOpenL(PCSZ,PHFILE,PULONG,LONGLONG,ULONG,ULONG,ULONG,PEAOP2);
APIRET APIENTRY DosProtectClose(HFILE,FHLOCK);
APIRET APIENTRY DosProtectEnumAttribute(ULONG,PVOID,ULONG,PVOID,ULONG,PULONG,ULONG,FHLOCK);
APIRET APIENTRY DosProtectOpen(PCSZ,PHFILE,PULONG,ULONG,ULONG,ULONG,ULONG,PEAOP2,PFHLOCK);
APIRET APIENTRY DosProtectOpenL(PCSZ,PHFILE,PULONG,LONGLONG,ULONG,ULONG,ULONG,PEAOP2,PFHLOCK);
APIRET APIENTRY DosProtectQueryFHState(HFILE,PULONG,FHLOCK);
APIRET APIENTRY DosProtectQueryFileInfo(HFILE,ULONG,PVOID,ULONG,FHLOCK);
APIRET APIENTRY DosProtectRead(HFILE,PVOID,ULONG,PULONG,FHLOCK);
APIRET APIENTRY DosProtectSetFHState(HFILE,ULONG,FHLOCK);
APIRET APIENTRY DosProtectSetFileInfo(HFILE,ULONG,PVOID,ULONG,FHLOCK);
APIRET APIENTRY DosProtectSetFileLocks(HFILE,PFILELOCK,PFILELOCK,ULONG,ULONG,FHLOCK);
APIRET APIENTRY DosProtectSetFileLocksL(HFILE,PFILELOCKL,PFILELOCKL,ULONG,ULONG,FHLOCK);
APIRET APIENTRY DosProtectSetFilePtr(HFILE,LONG,ULONG,PULONG,FHLOCK);
APIRET APIENTRY DosProtectSetFilePtrL(HFILE,LONGLONG,ULONG,PLONGLONG,FHLOCK);
APIRET APIENTRY DosProtectSetFileSize(HFILE,ULONG,FHLOCK);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -