Leaked source code of windows server 2003
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.

282 lines
5.8 KiB

  1. #include "adminpch.h"
  2. #pragma hdrstop
  3. #include <msi.h>
  4. #include <msiquery.h>
  5. static
  6. UINT
  7. WINAPI
  8. MsiCloseHandle(MSIHANDLE hAny)
  9. {
  10. return ERROR_PROC_NOT_FOUND;
  11. }
  12. static
  13. UINT
  14. WINAPI
  15. MsiConfigureProductW(LPCWSTR szProduct, int iInstallLevel, INSTALLSTATE eInstallState)
  16. {
  17. return ERROR_PROC_NOT_FOUND;
  18. }
  19. static
  20. MSIHANDLE
  21. WINAPI
  22. MsiCreateRecord(UINT cParams)
  23. {
  24. return 0;
  25. }
  26. static
  27. UINT
  28. WINAPI
  29. MsiDatabaseCommit(MSIHANDLE hDatabase)
  30. {
  31. return ERROR_PROC_NOT_FOUND;
  32. }
  33. static
  34. UINT
  35. WINAPI
  36. MsiDatabaseOpenViewW(MSIHANDLE hDatabase, LPCWSTR szQuery, MSIHANDLE* phView)
  37. {
  38. return ERROR_PROC_NOT_FOUND;
  39. }
  40. static
  41. INSTALLSTATE
  42. WINAPI
  43. MsiGetComponentPathW(LPCWSTR szProduct,
  44. LPCWSTR szComponent,
  45. LPWSTR lpPathBuf,
  46. DWORD *pcchBuf)
  47. {
  48. return INSTALLSTATE_UNKNOWN;
  49. }
  50. static
  51. UINT
  52. WINAPI
  53. MsiGetProductInfoW(LPCWSTR szProduct,
  54. LPCWSTR szAttribute,
  55. LPWSTR lpValueBuf,
  56. DWORD *pcchValueBuf)
  57. {
  58. return ERROR_PROC_NOT_FOUND;
  59. }
  60. static
  61. UINT
  62. WINAPI
  63. MsiGetSummaryInformationW(MSIHANDLE hDatabase,
  64. LPCWSTR szDatabasePath,
  65. UINT uiUpdateCount,
  66. MSIHANDLE *phSummaryInfo)
  67. {
  68. return ERROR_PROC_NOT_FOUND;
  69. }
  70. static
  71. UINT
  72. WINAPI
  73. MsiInstallProductW(LPCWSTR szPackagePath, LPCWSTR szCommandLine)
  74. {
  75. return ERROR_PROC_NOT_FOUND;
  76. }
  77. static
  78. UINT
  79. WINAPI
  80. MsiOpenDatabaseW(LPCWSTR szDatabasePath, LPCWSTR szPersist, MSIHANDLE *phDatabase)
  81. {
  82. return ERROR_PROC_NOT_FOUND;
  83. }
  84. static
  85. INSTALLSTATE
  86. WINAPI
  87. MsiQueryFeatureStateW(LPCWSTR szProduct, LPCWSTR szFeature)
  88. {
  89. return INSTALLSTATE_UNKNOWN;
  90. }
  91. static
  92. UINT
  93. WINAPI
  94. MsiRecordGetStringA(MSIHANDLE hRecord, UINT iField, LPSTR szValueBuf, DWORD *pcchValueBuf)
  95. {
  96. return ERROR_PROC_NOT_FOUND;
  97. }
  98. static
  99. UINT
  100. WINAPI
  101. MsiRecordGetStringW(MSIHANDLE hRecord, UINT iField, LPWSTR szValueBuf, DWORD *pcchValueBuf)
  102. {
  103. return ERROR_PROC_NOT_FOUND;
  104. }
  105. static
  106. UINT
  107. WINAPI
  108. MsiRecordReadStream(MSIHANDLE hRecord, UINT iField, char *szDataBuf, DWORD* pcbDataBuf)
  109. {
  110. return ERROR_PROC_NOT_FOUND;
  111. }
  112. static
  113. UINT
  114. WINAPI
  115. MsiRecordSetStreamW(MSIHANDLE hRecord, UINT iField, LPCWSTR szFilePath)
  116. {
  117. return ERROR_PROC_NOT_FOUND;
  118. }
  119. static
  120. UINT
  121. WINAPI
  122. MsiRecordSetStringW(MSIHANDLE hRecord, UINT iField, LPCWSTR szValue)
  123. {
  124. return ERROR_PROC_NOT_FOUND;
  125. }
  126. INSTALLUILEVEL
  127. WINAPI
  128. MsiSetInternalUI(INSTALLUILEVEL dwUILevel, HWND* phWnd)
  129. {
  130. // If msi.dll failed to load, then it's certainly not
  131. // going to display any UI
  132. SetLastError(ERROR_PROC_NOT_FOUND);
  133. return INSTALLUILEVEL_NONE;
  134. }
  135. static
  136. UINT
  137. WINAPI
  138. MsiSummaryInfoGetPropertyW(MSIHANDLE hSummaryInfo,
  139. UINT uiProperty,
  140. UINT *puiDataType,
  141. INT *piValue,
  142. FILETIME *pftValue,
  143. LPWSTR szValueBuf,
  144. DWORD *pcchValueBuf)
  145. {
  146. return ERROR_PROC_NOT_FOUND;
  147. }
  148. static
  149. UINT
  150. WINAPI
  151. MsiSummaryInfoPersist(MSIHANDLE hSummaryInfo)
  152. {
  153. return ERROR_PROC_NOT_FOUND;
  154. }
  155. static
  156. UINT
  157. WINAPI
  158. MsiSummaryInfoSetPropertyW(MSIHANDLE hSummaryInfo,
  159. UINT uiProperty,
  160. UINT uiDataType,
  161. INT iValue,
  162. FILETIME *pftValue,
  163. LPCWSTR szValue)
  164. {
  165. return ERROR_PROC_NOT_FOUND;
  166. }
  167. static
  168. UINT
  169. WINAPI
  170. MsiViewExecute(MSIHANDLE hView, MSIHANDLE hRecord)
  171. {
  172. return ERROR_PROC_NOT_FOUND;
  173. }
  174. static
  175. UINT
  176. WINAPI
  177. MsiViewFetch(MSIHANDLE hView, MSIHANDLE *phRecord)
  178. {
  179. return ERROR_PROC_NOT_FOUND;
  180. }
  181. static
  182. UINT
  183. WINAPI
  184. MsiViewModify(MSIHANDLE hView, MSIMODIFY eModifyMode, MSIHANDLE hRecord)
  185. {
  186. return ERROR_PROC_NOT_FOUND;
  187. }
  188. static
  189. INSTALLSTATE
  190. WINAPI
  191. MsiQueryFeatureStateFromDescriptorW(LPCWSTR szDescriptor)
  192. {
  193. return INSTALLSTATE_UNKNOWN;
  194. }
  195. static
  196. UINT
  197. WINAPI
  198. MsiDecomposeDescriptorW(LPCWSTR szDescriptor,
  199. LPWSTR szProductCode,
  200. LPWSTR szFeatureId,
  201. LPWSTR szComponentCode,
  202. DWORD* pcchArgsOffset)
  203. {
  204. return ERROR_PROC_NOT_FOUND;
  205. }
  206. static
  207. UINT
  208. WINAPI
  209. MsiEnumRelatedProductsW(LPCWSTR lpUpgradeCode,
  210. DWORD dwReserved,
  211. DWORD iProductIndex,
  212. LPWSTR lpProductBuf)
  213. {
  214. return ERROR_PROC_NOT_FOUND;
  215. }
  216. //
  217. // !! WARNING !! The entries below must be in order by ORDINAL
  218. //
  219. DEFINE_ORDINAL_ENTRIES(msi)
  220. {
  221. DLOENTRY(8, MsiCloseHandle)
  222. DLOENTRY(16, MsiConfigureProductW)
  223. DLOENTRY(17, MsiCreateRecord)
  224. DLOENTRY(20, MsiDatabaseCommit)
  225. DLOENTRY(32, MsiDatabaseOpenViewW)
  226. DLOENTRY(70, MsiGetProductInfoW)
  227. DLOENTRY(78, MsiGetSummaryInformationW)
  228. DLOENTRY(88, MsiInstallProductW)
  229. DLOENTRY(92, MsiOpenDatabaseW)
  230. DLOENTRY(111, MsiQueryFeatureStateW)
  231. DLOENTRY(117, MsiRecordGetStringA)
  232. DLOENTRY(118, MsiRecordGetStringW)
  233. DLOENTRY(120, MsiRecordReadStream)
  234. DLOENTRY(123, MsiRecordSetStreamW)
  235. DLOENTRY(125, MsiRecordSetStringW)
  236. DLOENTRY(141, MsiSetInternalUI)
  237. DLOENTRY(150, MsiSummaryInfoGetPropertyW)
  238. DLOENTRY(151, MsiSummaryInfoPersist)
  239. DLOENTRY(153, MsiSummaryInfoSetPropertyW)
  240. DLOENTRY(159, MsiViewExecute)
  241. DLOENTRY(160, MsiViewFetch)
  242. DLOENTRY(163, MsiViewModify)
  243. DLOENTRY(173, MsiGetComponentPathW)
  244. DLOENTRY(188, MsiQueryFeatureStateFromDescriptorW)
  245. DLOENTRY(201, MsiDecomposeDescriptorW)
  246. DLOENTRY(205, MsiEnumRelatedProductsW)
  247. };
  248. DEFINE_ORDINAL_MAP(msi);