Add some more Windows Terminal Server API definitions.
[wine] / include / msiquery.h
1 /*
2  * Copyright (C) 2002,2003 Mike McCormack
3  *
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.
8  *
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.
13  *
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
17  */
18
19 #ifndef __WINE_MSIQUERY_H
20 #define __WINE_MSIQUERY_H
21
22 #include <msi.h>
23
24 typedef enum tagMSICONDITION
25 {
26     MSICONDITION_FALSE = 0,
27     MSICONDITION_TRUE  = 1,
28     MSICONDITION_NONE  = 2,
29     MSICONDITION_ERROR = 3,
30 } MSICONDITION;
31
32 #define MSI_NULL_INTEGER 0x80000000
33
34 typedef enum tagMSICOLINFO
35 {
36     MSICOLINFO_NAMES = 0,
37     MSICOLINFO_TYPES = 1
38 } MSICOLINFO;
39
40 typedef enum tagMSIMODIFY
41 {
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;
55
56 #define MSIDBOPEN_READONLY (LPCTSTR)0
57 #define MSIDBOPEN_TRANSACT (LPCTSTR)1
58 #define MSIDBOPEN_DIRECT   (LPCTSTR)2
59 #define MSIDBOPEN_CREATE   (LPCTSTR)3
60 #define MSIDBOPEN_CREATEDIRECT (LPCTSTR)4
61
62 typedef enum tagMSIRUNMODE
63 {
64     MSIRUNMODE_ADMIN = 0,
65     MSIRUNMODE_ADVERTISE = 1,
66     MSIRUNMODE_MAINTENANCE = 2,
67     MSIRUNMODE_ROLLBACKENABLED = 3,
68     MSIRUNMODE_LOGENABLED = 4,
69     MSIRUNMODE_OPERATIONS = 5,
70     MSIRUNMODE_REBOOTATEND = 6,
71     MSIRUNMODE_REBOOTNOW = 7,
72     MSIRUNMODE_CABINET = 8,
73     MSIRUNMODE_SOURCESHORTNAMES = 9,
74     MSIRUNMODE_TARGETSHORTNAMES = 10,
75     MSIRUNMODE_RESERVED11 = 11,
76     MSIRUNMODE_WINDOWS9X = 12,
77     MSIRUNMODE_ZAWENABLED = 13,
78     MSIRUNMODE_RESERVED14 = 14,
79     MSIRUNMODE_RESERVED15 = 15,
80     MSIRUNMODE_SCHEDULED = 16,
81     MSIRUNMODE_ROLLBACK = 17,
82     MSIRUNMODE_COMMIT = 18
83 } MSIRUNMODE;
84
85 /* view manipulation */
86 UINT WINAPI MsiViewFetch(MSIHANDLE,MSIHANDLE*);
87 UINT WINAPI MsiViewExecute(MSIHANDLE,MSIHANDLE);
88 UINT WINAPI MsiViewClose(MSIHANDLE);
89 UINT WINAPI MsiDatabaseOpenViewA(MSIHANDLE,LPCSTR,MSIHANDLE*);
90 UINT WINAPI MsiDatabaseOpenViewW(MSIHANDLE,LPCWSTR,MSIHANDLE*);
91 #define     MsiDatabaseOpenView WINELIB_NAME_AW(MsiDatabaseOpenView)
92
93 /* record manipulation */
94 MSIHANDLE WINAPI MsiCreateRecord(unsigned int);
95 UINT WINAPI MsiRecordClearData(MSIHANDLE);
96 UINT WINAPI MsiRecordSetInteger(MSIHANDLE,unsigned int,int);
97 UINT WINAPI MsiRecordSetStringA(MSIHANDLE,unsigned int,LPCSTR);
98 UINT WINAPI MsiRecordSetStringW(MSIHANDLE,unsigned int,LPCWSTR);
99 #define     MsiRecordSetString WINELIB_NAME_AW(MsiRecordSetString)
100 UINT WINAPI MsiRecordGetStringA(MSIHANDLE,unsigned int,LPSTR,DWORD*);
101 UINT WINAPI MsiRecordGetStringW(MSIHANDLE,unsigned int,LPWSTR,DWORD*);
102 #define     MsiRecordGetString WINELIB_NAME_AW(MsiRecordGetString)
103 UINT WINAPI MsiRecordGetFieldCount(MSIHANDLE);
104 int WINAPI MsiRecordGetInteger(MSIHANDLE,unsigned int);
105 UINT WINAPI MsiRecordDataSize(MSIHANDLE,unsigned int);
106 BOOL WINAPI MsiRecordIsNull(MSIHANDLE,unsigned int);
107 UINT WINAPI MsiFormatRecordA(MSIHANDLE,MSIHANDLE,LPSTR,DWORD*);
108 UINT WINAPI MsiFormatRecordW(MSIHANDLE,MSIHANDLE,LPWSTR,DWORD*);
109 #define     MsiFormatRecord WINELIB_NAME_AW(MsiFormatRecord)
110 UINT WINAPI MsiRecordSetStreamA(MSIHANDLE,unsigned int,LPCSTR);
111 UINT WINAPI MsiRecordSetStreamW(MSIHANDLE,unsigned int,LPCWSTR);
112 #define     MsiRecordSetStream WINELIB_NAME_AW(MsiRecordSetStream)
113 UINT WINAPI MsiRecordReadStream(MSIHANDLE,unsigned int,char*,DWORD *);
114
115 UINT WINAPI MsiDatabaseGetPrimaryKeysA(MSIHANDLE,LPCSTR,MSIHANDLE*);
116 UINT WINAPI MsiDatabaseGetPrimaryKeysW(MSIHANDLE,LPCWSTR,MSIHANDLE*);
117 #define     MsiDatabaseGetPrimaryKeys WINELIB_NAME_AW(MsiDatabaseGetPrimaryKeys)
118
119 /* installing */
120 UINT WINAPI MsiDoActionA(MSIHANDLE,LPCSTR );
121 UINT WINAPI MsiDoActionW(MSIHANDLE,LPCWSTR );
122 #define     MsiDoAction WINELIB_NAME_AW(MsiDoAction)
123
124 /* database transforms */
125 UINT WINAPI MsiDatabaseApplyTransformA(MSIHANDLE,LPCSTR,int);
126 UINT WINAPI MsiDatabaseApplyTransformW(MSIHANDLE,LPCWSTR,int);
127 #define     MsiDatabaseApplyTransform WINELIB_NAME_AW(MsiDatabaseApplyTransform)
128 UINT WINAPI MsiDatabaseGenerateTransformA(MSIHANDLE,MSIHANDLE,LPCSTR,int,int);
129 UINT WINAPI MsiDatabaseGenerateTransformW(MSIHANDLE,MSIHANDLE,LPCWSTR,int,int);
130 #define     MsiDatabaseGenerateTransform WINELIB_NAME_AW(MsiDatabaseGenerateTransform)
131
132 UINT WINAPI MsiDatabaseCommit(MSIHANDLE);
133
134 /* install state */
135 UINT WINAPI MsiGetFeatureStateA(MSIHANDLE,LPSTR,INSTALLSTATE*,INSTALLSTATE*);
136 UINT WINAPI MsiGetFeatureStateW(MSIHANDLE,LPWSTR,INSTALLSTATE*,INSTALLSTATE*);
137 #define     MsiGetFeatureState WINELIB_NAME_AW(MsiGetFeatureState)
138 UINT WINAPI MsiGetComponentStateA(MSIHANDLE,LPSTR,INSTALLSTATE*,INSTALLSTATE*);
139 UINT WINAPI MsiGetComponentStateW(MSIHANDLE,LPWSTR,INSTALLSTATE*,INSTALLSTATE*);
140 #define     MsiGetComponentState WINELIB_NAME_AW(MsiGetComponentState)
141
142 MSICONDITION WINAPI MsiEvaluateConditionA(MSIHANDLE,LPCSTR);
143 MSICONDITION WINAPI MsiEvaluateConditionW(MSIHANDLE,LPCWSTR);
144 #define     MsiEvaluateCondition WINELIB_NAME_AW(MsiEvaluateCondition)
145
146 /* property functions */
147 UINT WINAPI MsiGetPropertyA(MSIHANDLE, LPCSTR, LPSTR, DWORD*);
148 UINT WINAPI MsiGetPropertyW(MSIHANDLE, LPCWSTR, LPWSTR, DWORD*);
149 #define     MsiGetProperty WINELIB_NAME_AW(MsiGetProperty)
150
151 UINT WINAPI MsiSetPropertyA(MSIHANDLE, LPCSTR, LPCSTR);
152 UINT WINAPI MsiSetPropertyW(MSIHANDLE, LPCWSTR, LPCWSTR);
153 #define     MsiSetProperty WINELIB_NAME_AW(MsiSetProperty)
154
155 UINT WINAPI MsiGetTargetPathA(MSIHANDLE,LPCSTR,LPSTR,DWORD*);
156 UINT WINAPI MsiGetTargetPathW(MSIHANDLE,LPCWSTR,LPWSTR,DWORD*);
157 #define     MsiGetTargetPath WINELIB_NAME_AW(MsiGetTargetPath)
158
159 UINT WINAPI MsiSetTargetPathA(MSIHANDLE, LPCSTR, LPCSTR);
160 UINT WINAPI MsiSetTargetPathW(MSIHANDLE, LPCWSTR, LPCWSTR);
161 #define     MsiSetTargetPath WINELIB_NAME_AW(MsiSetTargetPath)
162
163 UINT WINAPI MsiGetSourcePathA(MSIHANDLE,LPCSTR,LPSTR,DWORD*);
164 UINT WINAPI MsiGetSourcePathW(MSIHANDLE,LPCWSTR,LPWSTR,DWORD*);
165 #define     MsiGetSourcePath WINELIB_NAME_AW(MsiGetSourcePath)
166
167 MSIHANDLE WINAPI MsiGetActiveDatabase(MSIHANDLE);
168
169 UINT WINAPI MsiViewGetColumnInfo(MSIHANDLE, MSICOLINFO, MSIHANDLE*);
170 INT WINAPI MsiProcessMessage(MSIHANDLE, INSTALLMESSAGE, MSIHANDLE);
171
172 UINT WINAPI MsiSetFeatureStateA(MSIHANDLE, LPCSTR, INSTALLSTATE);
173 UINT WINAPI MsiSetFeatureStateW(MSIHANDLE, LPCWSTR, INSTALLSTATE);
174 #define     MsiSetFeatureState WINELIB_NAME_AW(MsiSetFeatureState)
175
176 UINT WINAPI MsiPreviewDialogA(MSIHANDLE, LPCSTR);
177 UINT WINAPI MsiPreviewDialogW(MSIHANDLE, LPCWSTR);
178 #define     MsiPreviewDialog WINELIB_NAME_AW(MsiPreviewDialog)
179
180 UINT WINAPI MsiPreviewBillboardA(MSIHANDLE, LPCSTR, LPCSTR);
181 UINT WINAPI MsiPreviewBillboardW(MSIHANDLE, LPCWSTR, LPCWSTR);
182 #define     MsiPreviewBillboard WINELIB_NAME_AW(MsiPreviewBillboard)
183
184 UINT WINAPI MsiGetSummaryInformationA(MSIHANDLE, LPCSTR, UINT, MSIHANDLE *);
185 UINT WINAPI MsiGetSummaryInformationW(MSIHANDLE, LPCWSTR, UINT, MSIHANDLE *);
186 #define     MsiGetSummaryInformation WINELIB_NAME_AW(MsiGetSummaryInformation)
187
188 UINT WINAPI MsiSummaryInfoGetPropertyA(MSIHANDLE,UINT,UINT*,INT*,FILETIME*,LPSTR,DWORD*);
189 UINT WINAPI MsiSummaryInfoGetPropertyW(MSIHANDLE,UINT,UINT*,INT*,FILETIME*,LPWSTR,DWORD*);
190 #define     MsiSummaryInfoGetProperty WINELIB_NAME_AW(MsiSummaryInfoGetProperty)
191
192 UINT WINAPI MsiSummaryInfoSetPropertyA(MSIHANDLE, UINT, UINT, INT, FILETIME*, LPSTR);
193 UINT WINAPI MsiSummaryInfoSetPropertyW(MSIHANDLE, UINT, UINT, INT, FILETIME*, LPWSTR);
194 #define     MsiSummaryInfoSetProperty WINELIB_NAME_AW(MsiSummaryInfoSetProperty)
195
196 UINT WINAPI MsiSummaryInfoPersist(MSIHANDLE);
197 UINT WINAPI MsiSummaryInfoGetPropertyCount(MSIHANDLE,UINT*);
198
199 UINT WINAPI MsiEnableUIPreview(MSIHANDLE, MSIHANDLE*);
200 BOOL WINAPI MsiGetMode(MSIHANDLE, MSIRUNMODE);
201
202 #endif /* __WINE_MSIQUERY_H */