Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

268 lines
6.7 KiB

  1. /*++ BUILD Version: 0001
  2. *
  3. * WOW v1.0
  4. *
  5. * Copyright (c) 1991, Microsoft Corporation
  6. *
  7. * WOWSHELL.H
  8. * 16-bit SHELL API argument structures
  9. *
  10. * History:
  11. * Created 14-April-1992 by Chandan S. Chauhan (ChandanC)
  12. * Added Win95 exports 17-Oct-1996 Dave Hart (davehart)
  13. *
  14. --*/
  15. /* SHELL API IDs
  16. */
  17. #define FUN_REGOPENKEY 1
  18. #define FUN_REGCREATEKEY 2
  19. #define FUN_REGCLOSEKEY 3
  20. #define FUN_REGDELETEKEY 4
  21. #define FUN_REGSETVALUE 5
  22. #define FUN_REGQUERYVALUE 6
  23. #define FUN_REGENUMKEY 7
  24. #define FUN_DRAGACCEPTFILES 9
  25. #define FUN_DRAGQUERYFILE 11
  26. #define FUN_DRAGFINISH 12
  27. #define FUN_DRAGQUERYPOINT 13
  28. #define FUN_SHELLEXECUTE 20
  29. #define FUN_FINDEXECUTABLE 21
  30. #define FUN_SHELLABOUT 22
  31. #define FUN_WCI 32
  32. #define FUN_ABOUTDLGPROC 33
  33. #define FUN_EXTRACTICON 34
  34. #define FUN_EXTRACTASSOCIATEDICON 36
  35. #define FUN_DOENVIRONMENTSUBST 37
  36. #define FUN_FINDENVIRONMENTSTRING 38
  37. #define FUN_INTERNALEXTRACTICON 39
  38. #define FUN_HERETHARBETYGARS 41 // export 100
  39. #define FUN_FINDEXEDLGPROC 42 // export 101
  40. #define FUN_REGISTERSHELLHOOK 43 // export 102
  41. #define FUN_SHELLHOOKPROC 44 // export 103
  42. /* New for Win95 */
  43. #define FUN_EXTRACTICONEX 40
  44. #define FUN_RESTARTDIALOG 45 // export 157
  45. #define FUN_PICKICONDLG 46 // export 166
  46. #define FUN_DRIVETYPE 47 // export 262
  47. #define FUN_SH16TO32DRIVEIOCTL 48 // export 263
  48. #define FUN_SH16TO32INT2526 49 // export 264
  49. #define FUN_SHGETFILEINFO 50 // export 300
  50. #define FUN_SHFORMATDRIVE 51 // export 400
  51. #define FUN_SHCHECKDRIVE 52 // export 401
  52. #define FUN__RUNDLLCHECKDRIVE 53 // export 402
  53. /* XLATOFF */
  54. #pragma pack(2)
  55. /* XLATON */
  56. typedef struct _REGOPENKEY16 { /* s1 */
  57. VPVOID f3;
  58. VPVOID f2;
  59. DWORD f1;
  60. } REGOPENKEY16;
  61. typedef REGOPENKEY16 UNALIGNED *PREGOPENKEY16;
  62. typedef struct _REGCREATEKEY16 { /* s2 */
  63. VPVOID f3;
  64. VPVOID f2;
  65. DWORD f1;
  66. } REGCREATEKEY16;
  67. typedef REGCREATEKEY16 UNALIGNED *PREGCREATEKEY16;
  68. typedef struct _REGCLOSEKEY16 { /* s3 */
  69. DWORD f1;
  70. } REGCLOSEKEY16;
  71. typedef REGCLOSEKEY16 UNALIGNED *PREGCLOSEKEY16;
  72. typedef struct _REGDELETEKEY16 { /* s4 */
  73. VPVOID f2;
  74. DWORD f1;
  75. } REGDELETEKEY16;
  76. typedef REGDELETEKEY16 UNALIGNED *PREGDELETEKEY16;
  77. typedef struct _REGSETVALUE16 { /* s5 */
  78. DWORD f5;
  79. VPVOID f4;
  80. DWORD f3;
  81. VPVOID f2;
  82. DWORD f1;
  83. } REGSETVALUE16;
  84. typedef REGSETVALUE16 UNALIGNED *PREGSETVALUE16;
  85. typedef struct _REGQUERYVALUE16 { /* s6 */
  86. VPVOID f4;
  87. VPVOID f3;
  88. VPVOID f2;
  89. DWORD f1;
  90. } REGQUERYVALUE16;
  91. typedef REGQUERYVALUE16 UNALIGNED *PREGQUERYVALUE16;
  92. typedef struct _REGENUMKEY16 { /* s7 */
  93. DWORD f4;
  94. VPVOID f3;
  95. DWORD f2;
  96. DWORD f1;
  97. } REGENUMKEY16;
  98. typedef REGENUMKEY16 UNALIGNED *PREGENUMKEY16;
  99. typedef struct _DRAGACCEPTFILES16 { /* s9 */
  100. SHORT f2;
  101. HAND16 f1;
  102. } DRAGACCEPTFILES16;
  103. typedef DRAGACCEPTFILES16 UNALIGNED *PDRAGACCEPTFILES16;
  104. typedef struct _DRAGQUERYFILE16 { /* s11 */
  105. WORD f4;
  106. VPVOID f3;
  107. WORD f2;
  108. HAND16 f1;
  109. } DRAGQUERYFILE16;
  110. typedef DRAGQUERYFILE16 UNALIGNED *PDRAGQUERYFILE16;
  111. typedef struct _DRAGFINISH16 { /* s12 */
  112. HAND16 f1;
  113. } DRAGFINISH16;
  114. typedef DRAGFINISH16 UNALIGNED *PDRAGFINISH16;
  115. typedef struct _DRAGQUERYPOINT16 { /* s13 */
  116. VPVOID f2;
  117. HAND16 f1;
  118. } DRAGQUERYPOINT16;
  119. typedef DRAGQUERYPOINT16 UNALIGNED *PDRAGQUERYPOINT16;
  120. typedef struct _SHELLABOUT16 { /* s22 */
  121. HAND16 f4;
  122. VPVOID f3;
  123. VPVOID f2;
  124. HAND16 f1;
  125. } SHELLABOUT16;
  126. typedef SHELLABOUT16 UNALIGNED *PSHELLABOUT16;
  127. typedef struct _SHELLEXECUTE16 { /* s20 */
  128. WORD f6;
  129. VPVOID f5;
  130. VPVOID f4;
  131. VPVOID f3;
  132. VPVOID f2;
  133. HAND16 f1;
  134. } SHELLEXECUTE16;
  135. typedef SHELLEXECUTE16 UNALIGNED *PSHELLEXECUTE16;
  136. typedef struct _FINDEXECUTABLE16 { /* s21 */
  137. VPVOID f3;
  138. VPVOID f2;
  139. VPVOID f1;
  140. } FINDEXECUTABLE16;
  141. typedef FINDEXECUTABLE16 UNALIGNED *PFINDEXECUTABLE16;
  142. typedef struct _EXTRACTICON16 { /* s34 */
  143. WORD f3;
  144. VPVOID f2;
  145. HAND16 f1;
  146. } EXTRACTICON16;
  147. typedef EXTRACTICON16 UNALIGNED *PEXTRACTICON16;
  148. typedef struct _EXTRACTASSOCIATEDICON16 { /* s36 */
  149. VPVOID f3;
  150. VPVOID f2;
  151. HAND16 f1;
  152. } EXTRACTASSOCIATEDICON16;
  153. typedef EXTRACTASSOCIATEDICON16 UNALIGNED *PEXTRACTASSOCIATEDICON16;
  154. typedef struct _DOENVIRONMENTSUBST16 { /* s37 */
  155. WORD cch;
  156. VPVOID vpsz;
  157. } DOENVIRONMENTSUBST16;
  158. typedef DOENVIRONMENTSUBST16 UNALIGNED *PDOENVIRONMENTSUBST16;
  159. /* New for Win95 */
  160. typedef struct _EXTRACTICONEX16 { /* s40 */
  161. SHORT nIcons;
  162. VPWORD phiconSmall;
  163. VPWORD phiconLarge;
  164. SHORT nIconIndex;
  165. VPSZ lpszExeFileName;
  166. } EXTRACTICONEX16;
  167. typedef EXTRACTICONEX16 UNALIGNED *PEXTRACTICONEX16;
  168. typedef struct _RESTARTDIALOG16 { /* s45 */
  169. DWORD dwReturn;
  170. VPSTR lpszPrompt;
  171. HWND16 hwnd;
  172. } RESTARTDIALOG16;
  173. typedef RESTARTDIALOG16 UNALIGNED *PRESTARTDIALOG16;
  174. typedef struct _PICKICONDLG16 { /* s46 */
  175. VPSHORT piIconIndex;
  176. WORD cbIconPath;
  177. VPSZ pszIconPath;
  178. HWND16 hwnd;
  179. } PICKICONDLG16;
  180. typedef PICKICONDLG16 UNALIGNED *PPICKICONDLG16;
  181. typedef struct _DRIVETYPE16 { /* s47 */
  182. SHORT iDrive;
  183. } DRIVETYPE16;
  184. typedef DRIVETYPE16 UNALIGNED *PDRIVETYPE16;
  185. typedef struct _SH16TO32DRIVEIOCTL16 { /* s48 */
  186. VPVOID pv;
  187. SHORT iCmd;
  188. SHORT iDrive;
  189. } SH16TO32DRIVEIOCTL16;
  190. typedef SH16TO32DRIVEIOCTL16 UNALIGNED *PSH16TO32DRIVEIOCTL16;
  191. typedef struct _SH16TO32INT252616 { /* s49 */
  192. DWORD dwSector;
  193. WORD wCount;
  194. VPVOID lpBuf;
  195. SHORT iInt;
  196. SHORT iDrive;
  197. } SH16TO32INT252616;
  198. typedef SH16TO32INT252616 UNALIGNED *PSH16TO32INT252616;
  199. typedef struct _SHGETFILEINFO16 { /* s50 */
  200. WORD wFlags;
  201. WORD cbFileInfo;
  202. VPVOID lpsfi;
  203. DWORD dwFileAttributes;
  204. VPSZ lpszPath;
  205. } SHGETFILEINFO16;
  206. typedef SHGETFILEINFO16 UNALIGNED *PSHGETFILEINFO16;
  207. typedef struct _SHFORMATDRIVE16 { /* s51 */
  208. WORD wOptions;
  209. WORD wFmtID;
  210. WORD wDrive;
  211. HWND16 hwnd;
  212. } SHFORMATDRIVE16;
  213. typedef SHFORMATDRIVE16 UNALIGNED *PSHFORMATDRIVE16;
  214. typedef struct _SHCHECKDRIVE16 { /* s52 */
  215. VPWORD lpTLhwnd;
  216. DWORD dwDrvList;
  217. DWORD dwOptions;
  218. HWND16 hwnd;
  219. } SHCHECKDRIVE16;
  220. typedef SHCHECKDRIVE16 UNALIGNED *PSHCHECKDRIVE16;
  221. typedef struct __RUNDLLCHECKDRIVE16 { /* s53 */
  222. SHORT nCmdShow;
  223. VPSZ lpszCmdLine;
  224. HINST16 hAppInstance;
  225. HWND16 hwndStub;
  226. } _RUNDLLCHECKDRIVE16;
  227. typedef _RUNDLLCHECKDRIVE16 UNALIGNED *P_RUNDLLCHECKDRIVE16;
  228. /* XLATOFF */
  229. #pragma pack()
  230. /* XLATON */
  231.