windows-nt/Source/XPSP1/NT/base/mvdm/wow16/inc/shellapi.h
2020-09-26 16:20:57 +08:00

100 lines
3.7 KiB
C

/*****************************************************************************\
* *
* shellapi.h - SHELL.DLL functions, types, and definitions *
* *
* Copyright (c) 1992, Microsoft Corp. All rights reserved *
* *
\*****************************************************************************/
#ifndef _INC_SHELLAPI
#define _INC_SHELLAPI
#ifndef RC_INVOKED
#pragma pack(1) /* Assume byte packing throughout */
#endif /* RC_INVOKED */
#ifdef __cplusplus
extern "C" { /* Assume C declarations for C++ */
#endif /* __cplusplus */
/* If included with Windows 3.0 windows.h: define 3.1-compatible types */
#ifndef _INC_WINDOWS
#define HDROP HANDLE
#define WINAPI FAR PASCAL
#define LPCSTR LPSTR
#define UINT WORD
#else
DECLARE_HANDLE(HDROP);
#endif
/* return codes from Registration functions */
#define ERROR_SUCCESS 0L
#define ERROR_BADDB 1L
#define ERROR_BADKEY 2L
#define ERROR_CANTOPEN 3L
#define ERROR_CANTREAD 4L
#define ERROR_CANTWRITE 5L
#define ERROR_OUTOFMEMORY 6L
#define ERROR_INVALID_PARAMETER 7L
#define ERROR_ACCESS_DENIED 8L
#define REG_SZ 1 /* string type */
#define HKEY_CLASSES_ROOT 0x80000000
typedef DWORD HKEY;
typedef HKEY FAR* PHKEY;
/* ;Internal */
typedef struct _dropfilestruct { /* ;Internal */
WORD pFiles; /* offset of file list*//* ;Internal */
POINT pt; /* drop point *//* ;Internal */
BOOL fNC; /* is it on NC area *//* ;Internal */
} DROPFILESTRUCT, FAR* LPDROPFILESTRUCT; /* ;Internal */
LONG WINAPI RegOpenKey(HKEY, LPCSTR, HKEY FAR*);
LONG WINAPI RegCreateKey(HKEY, LPCSTR, HKEY FAR*);
LONG WINAPI RegCloseKey(HKEY);
LONG WINAPI RegDeleteKey(HKEY, LPCSTR);
LONG WINAPI RegSetValue(HKEY, LPCSTR, DWORD, LPCSTR, DWORD);
LONG WINAPI RegQueryValue(HKEY, LPCSTR, LPSTR, LONG FAR*);
LONG WINAPI RegEnumKey(HKEY, DWORD, LPSTR, DWORD);
UINT WINAPI DragQueryFile(HDROP, UINT, LPSTR, UINT);
BOOL WINAPI DragQueryPoint(HDROP, POINT FAR*);
void WINAPI DragFinish(HDROP);
void WINAPI DragAcceptFiles(HWND, BOOL);
HICON WINAPI ExtractIcon(HINSTANCE hInst, LPCSTR lpszExeFileName, UINT nIconIndex);
/* error values for ShellExecute() beyond the regular WinExec() codes */
#define SE_ERR_SHARE 26
#define SE_ERR_ASSOCINCOMPLETE 27
#define SE_ERR_DDETIMEOUT 28
#define SE_ERR_DDEFAIL 29
#define SE_ERR_DDEBUSY 30
#define SE_ERR_NOASSOC 31
HINSTANCE WINAPI ShellExecute(HWND hwnd, LPCSTR lpOperation, LPCSTR lpFile, LPCSTR lpParameters, LPCSTR lpDirectory, int iShowCmd);
HINSTANCE WINAPI FindExecutable(LPCSTR lpFile, LPCSTR lpDirectory, LPSTR lpResult);
int WINAPI ShellAbout(HWND hWnd, LPCSTR szApp, LPCSTR szOtherStuff, HICON hIcon); /* ;Internal */
HICON WINAPI ExtractAssociatedIcon(HANDLE hInst, LPSTR lpIconPath, WORD FAR* lpiIcon); /* ;Internal */
HICON WINAPI InternalExtractIcon(HANDLE hInst, LPCSTR lpszExeFileName, WORD nIconIndex, WORD nIcons); /* ;Internal */
DWORD WINAPI DoEnvironmentSubst(LPSTR szString, WORD cbString); /* ;Internal */
BOOL WINAPI RegisterShellHook(HWND, BOOL); /* ;Internal */
#ifdef __cplusplus
}
#endif /* __cplusplus */
#ifndef RC_INVOKED
#pragma pack()
#endif /* RC_INVOKED */
#endif /* _INC_SHELLAPI */