Implemented GetCPInfoExA/W.
[wine/hacks.git] / include / msiquery.h
blob305b9f67bc7e00c5b7d974f2c3c1bcaa12c895b8
1 /*
2 * Copyright (C) 2002,2003 Mike McCormack
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 #ifndef __WINE_MSIQUERY_H
20 #define __WINE_MSIQUERY_H
22 #include <msi.h>
24 typedef enum tagMSICONDITION
26 MSICONDITION_FALSE = 0,
27 MSICONDITION_TRUE = 1,
28 MSICONDITION_NONE = 2,
29 MSICONDITION_ERROR = 3,
30 } MSICONDITION;
32 #define MSI_NULL_INTEGER 0x80000000
34 typedef enum tagMSICOLINFO
36 MSICOLINFO_NAMES = 0,
37 MSICOLINFO_TYPES = 1
38 } MSICOLINFO;
40 typedef enum tagMSIMODIFY
42 MSIMODIFY_REFRESH = 0,
43 MSIMODIFY_INSERT = 1,
44 MSIMODIFY_UPDATE = 2,
45 MSIMODIFY_ASSIGN = 3,
46 MSIMODIFY_REPLACE = 4,
47 MSIMODIFY_MERGE = 5,
48 MSIMODIFY_DELETE = 6,
49 MSIMODIFY_INSERT_TEMPORARY = 7,
50 MSIMODIFY_VALIDATE = 8,
51 MSIMODIFY_VALIDATE_NEW = 9,
52 MSIMODIFY_VALIDATE_FIELD = 10,
53 MSIMODIFY_VALIDATE_DELETE = 11
54 } MSIMODIFY;
56 #define MSI_NULL_INTEGER 0x80000000
58 /* view manipulation */
59 UINT WINAPI MsiViewFetch(MSIHANDLE,MSIHANDLE*);
60 UINT WINAPI MsiViewExecute(MSIHANDLE,MSIHANDLE);
61 UINT WINAPI MsiViewClose(MSIHANDLE);
62 UINT WINAPI MsiDatabaseOpenViewA(MSIHANDLE,LPCSTR,MSIHANDLE*);
63 UINT WINAPI MsiDatabaseOpenViewW(MSIHANDLE,LPCWSTR,MSIHANDLE*);
64 #define MsiDatabaseOpenView WINELIB_NAME_AW(MsiDatabaseOpenView)
66 /* record manipulation */
67 MSIHANDLE WINAPI MsiCreateRecord(unsigned int);
68 UINT WINAPI MsiRecordClearData(MSIHANDLE);
69 UINT WINAPI MsiRecordSetInteger(MSIHANDLE,unsigned int,int);
70 UINT WINAPI MsiRecordSetStringA(MSIHANDLE,unsigned int,LPCSTR);
71 UINT WINAPI MsiRecordSetStringW(MSIHANDLE,unsigned int,LPCWSTR);
72 #define MsiRecordSetString WINELIB_NAME_AW(MsiRecordSetString)
73 UINT WINAPI MsiRecordGetStringA(MSIHANDLE,unsigned int,LPSTR,DWORD*);
74 UINT WINAPI MsiRecordGetStringW(MSIHANDLE,unsigned int,LPWSTR,DWORD*);
75 #define MsiRecordGetString WINELIB_NAME_AW(MsiRecordGetString)
76 UINT WINAPI MsiRecordGetFieldCount(MSIHANDLE);
77 int WINAPI MsiRecordGetInteger(MSIHANDLE,unsigned int);
78 UINT WINAPI MsiRecordDataSize(MSIHANDLE,unsigned int);
79 BOOL WINAPI MsiRecordIsNull(MSIHANDLE,unsigned int);
80 UINT WINAPI MsiFormatRecordA(MSIHANDLE,MSIHANDLE,LPSTR,DWORD*);
81 UINT WINAPI MsiFormatRecordW(MSIHANDLE,MSIHANDLE,LPWSTR,DWORD*);
82 #define MsiFormatRecord WINELIB_NAME_AW(MsiFormatRecord)
83 UINT WINAPI MsiRecordSetStreamA(MSIHANDLE,unsigned int,LPCSTR);
84 UINT WINAPI MsiRecordSetStreamW(MSIHANDLE,unsigned int,LPCWSTR);
85 #define MsiRecordSetStream WINELIB_NAME_AW(MsiRecordSetStream)
86 UINT WINAPI MsiRecordReadStream(MSIHANDLE,unsigned int,char*,DWORD *);
88 UINT WINAPI MsiDatabaseGetPrimaryKeysA(MSIHANDLE,LPCSTR,MSIHANDLE*);
89 UINT WINAPI MsiDatabaseGetPrimaryKeysW(MSIHANDLE,LPCWSTR,MSIHANDLE*);
90 #define MsiDatabaseGetPrimaryKeys WINELIB_NAME_AW(MsiDatabaseGetPrimaryKeys)
92 /* installing */
93 UINT WINAPI MsiDoActionA(MSIHANDLE,LPCSTR );
94 UINT WINAPI MsiDoActionW(MSIHANDLE,LPCWSTR );
95 #define MsiDoAction WINELIB_NAME_AW(MsiDoAction)
97 /* database transforms */
98 UINT WINAPI MsiDatabaseApplyTransformA(MSIHANDLE,LPCSTR,int);
99 UINT WINAPI MsiDatabaseApplyTransformW(MSIHANDLE,LPCWSTR,int);
100 #define MsiDatabaseApplyTransform WINELIB_NAME_AW(MsiDatabaseApplyTransform)
101 UINT WINAPI MsiDatabaseGenerateTransformA(MSIHANDLE,MSIHANDLE,LPCSTR,int,int);
102 UINT WINAPI MsiDatabaseGenerateTransformW(MSIHANDLE,MSIHANDLE,LPCWSTR,int,int);
103 #define MsiDatabaseGenerateTransform WINELIB_NAME_AW(MsiDatabaseGenerateTransform)
105 UINT WINAPI MsiDatabaseCommit(MSIHANDLE);
107 /* install state */
108 UINT WINAPI MsiGetFeatureStateA(MSIHANDLE,LPSTR,INSTALLSTATE*,INSTALLSTATE*);
109 UINT WINAPI MsiGetFeatureStateW(MSIHANDLE,LPWSTR,INSTALLSTATE*,INSTALLSTATE*);
110 #define MsiGetFeatureState WINELIB_NAME_AW(MsiGetFeatureState)
111 UINT WINAPI MsiGetComponentStateA(MSIHANDLE,LPSTR,INSTALLSTATE*,INSTALLSTATE*);
112 UINT WINAPI MsiGetComponentStateW(MSIHANDLE,LPWSTR,INSTALLSTATE*,INSTALLSTATE*);
113 #define MsiGetComponentState WINELIB_NAME_AW(MsiGetComponentState)
116 #endif /* __WINE_MSIQUERY_H */