ReactOS  0.4.15-dev-5137-g826bd41
msiquery.h File Reference
#include <msi.h>
Include dependency graph for msiquery.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define MSI_NULL_INTEGER   0x80000000
 
#define MSIDBOPEN_READONLY   (LPCTSTR)0
 
#define MSIDBOPEN_TRANSACT   (LPCTSTR)1
 
#define MSIDBOPEN_DIRECT   (LPCTSTR)2
 
#define MSIDBOPEN_CREATE   (LPCTSTR)3
 
#define MSIDBOPEN_CREATEDIRECT   (LPCTSTR)4
 
#define MSIDBOPEN_PATCHFILE   32 / sizeof(*MSIDBOPEN_READONLY)
 
#define MsiDatabaseOpenView   WINELIB_NAME_AW(MsiDatabaseOpenView)
 
#define MsiViewGetError   WINELIB_NAME_AW(MsiViewGetError)
 
#define MsiRecordSetString   WINELIB_NAME_AW(MsiRecordSetString)
 
#define MsiRecordGetString   WINELIB_NAME_AW(MsiRecordGetString)
 
#define MsiFormatRecord   WINELIB_NAME_AW(MsiFormatRecord)
 
#define MsiRecordSetStream   WINELIB_NAME_AW(MsiRecordSetStream)
 
#define MsiDatabaseGetPrimaryKeys   WINELIB_NAME_AW(MsiDatabaseGetPrimaryKeys)
 
#define MsiDoAction   WINELIB_NAME_AW(MsiDoAction)
 
#define MsiDatabaseApplyTransform   WINELIB_NAME_AW(MsiDatabaseApplyTransform)
 
#define MsiDatabaseGenerateTransform   WINELIB_NAME_AW(MsiDatabaseGenerateTransform)
 
#define MsiGetFeatureState   WINELIB_NAME_AW(MsiGetFeatureState)
 
#define MsiGetFeatureValidStates   WINELIB_NAME_AW(MsiGetFeatureValidStates)
 
#define MsiSetComponentState   WINELIB_NAME_AW(MsiSetComponentState)
 
#define MsiGetComponentState   WINELIB_NAME_AW(MsiGetComponentState)
 
#define MsiEvaluateCondition   WINELIB_NAME_AW(MsiEvaluateCondition)
 
#define MsiGetProperty   WINELIB_NAME_AW(MsiGetProperty)
 
#define MsiSetProperty   WINELIB_NAME_AW(MsiSetProperty)
 
#define MsiGetTargetPath   WINELIB_NAME_AW(MsiGetTargetPath)
 
#define MsiSetTargetPath   WINELIB_NAME_AW(MsiSetTargetPath)
 
#define MsiGetSourcePath   WINELIB_NAME_AW(MsiGetSourcePath)
 
#define MsiSetFeatureAttributes   WINELIB_NAME_AW(MsiSetFeatureAttributes)
 
#define MsiSetFeatureState   WINELIB_NAME_AW(MsiSetFeatureState)
 
#define MsiPreviewDialog   WINELIB_NAME_AW(MsiPreviewDialog)
 
#define MsiPreviewBillboard   WINELIB_NAME_AW(MsiPreviewBillboard)
 
#define MsiCreateTransformSummaryInfo   WINELIB_NAME_AW(MsiCreateTransformSummaryInfo)
 
#define MsiGetSummaryInformation   WINELIB_NAME_AW(MsiGetSummaryInformation)
 
#define MsiSummaryInfoGetProperty   WINELIB_NAME_AW(MsiSummaryInfoGetProperty)
 
#define MsiSummaryInfoSetProperty   WINELIB_NAME_AW(MsiSummaryInfoSetProperty)
 
#define MsiDatabaseExport   WINELIB_NAME_AW(MsiDatabaseExport)
 
#define MsiDatabaseImport   WINELIB_NAME_AW(MsiDatabaseImport)
 
#define MsiOpenDatabase   WINELIB_NAME_AW(MsiOpenDatabase)
 
#define MsiDatabaseIsTablePersistent   WINELIB_NAME_AW(MsiDatabaseIsTablePersistent)
 
#define MsiSequence   WINELIB_NAME_AW(MsiSequence)
 
#define MsiGetFeatureCost   WINELIB_NAME_AW(MsiGetFeatureCost)
 

Typedefs

typedef enum tagMSICONDITION MSICONDITION
 
typedef enum tagMSICOLINFO MSICOLINFO
 
typedef enum tagMSICOSTTREE MSICOSTTREE
 
typedef enum tagMSIMODIFY MSIMODIFY
 
typedef enum tagMSIRUNMODE MSIRUNMODE
 
typedef enum tagMSIDBERROR MSIDBERROR
 
typedef enum tagMSIDBSTATE MSIDBSTATE
 
typedef enum tagMSITRANSFORM_ERROR MSITRANSFORM_ERROR
 
typedef enum tagMSITRANSFORM_VALIDATE MSITRANSFORM_VALIDATE
 

Enumerations

enum  tagMSICONDITION { MSICONDITION_FALSE = 0, MSICONDITION_TRUE = 1, MSICONDITION_NONE = 2, MSICONDITION_ERROR = 3 }
 
enum  tagMSICOLINFO { MSICOLINFO_NAMES = 0, MSICOLINFO_TYPES = 1 }
 
enum  tagMSICOSTTREE { MSICOSTTREE_SELFONLY = 0, MSICOSTTREE_CHILDREN = 1, MSICOSTTREE_PARENTS = 2, MSICOSTTREE_PRODUCT = 3 }
 
enum  tagMSIMODIFY {
  MSIMODIFY_SEEK = -1, MSIMODIFY_REFRESH = 0, MSIMODIFY_INSERT = 1, MSIMODIFY_UPDATE = 2,
  MSIMODIFY_ASSIGN = 3, MSIMODIFY_REPLACE = 4, MSIMODIFY_MERGE = 5, MSIMODIFY_DELETE = 6,
  MSIMODIFY_INSERT_TEMPORARY = 7, MSIMODIFY_VALIDATE = 8, MSIMODIFY_VALIDATE_NEW = 9, MSIMODIFY_VALIDATE_FIELD = 10,
  MSIMODIFY_VALIDATE_DELETE = 11
}
 
enum  tagMSIRUNMODE {
  MSIRUNMODE_ADMIN = 0, MSIRUNMODE_ADVERTISE = 1, MSIRUNMODE_MAINTENANCE = 2, MSIRUNMODE_ROLLBACKENABLED = 3,
  MSIRUNMODE_LOGENABLED = 4, MSIRUNMODE_OPERATIONS = 5, MSIRUNMODE_REBOOTATEND = 6, MSIRUNMODE_REBOOTNOW = 7,
  MSIRUNMODE_CABINET = 8, MSIRUNMODE_SOURCESHORTNAMES = 9, MSIRUNMODE_TARGETSHORTNAMES = 10, MSIRUNMODE_RESERVED11 = 11,
  MSIRUNMODE_WINDOWS9X = 12, MSIRUNMODE_ZAWENABLED = 13, MSIRUNMODE_RESERVED14 = 14, MSIRUNMODE_RESERVED15 = 15,
  MSIRUNMODE_SCHEDULED = 16, MSIRUNMODE_ROLLBACK = 17, MSIRUNMODE_COMMIT = 18
}
 
enum  tagMSIDBERROR {
  MSIDBERROR_INVALIDARG = -3, MSIDBERROR_MOREDATA = -2, MSIDBERROR_FUNCTIONERROR = -1, MSIDBERROR_NOERROR = 0,
  MSIDBERROR_DUPLICATEKEY = 1, MSIDBERROR_REQUIRED = 2, MSIDBERROR_BADLINK = 3, MSIDBERROR_OVERFLOW = 4,
  MSIDBERROR_UNDERFLOW = 5, MSIDBERROR_NOTINSET = 6, MSIDBERROR_BADVERSION = 7, MSIDBERROR_BADCASE = 8,
  MSIDBERROR_BADGUID = 9, MSIDBERROR_BADWILDCARD = 10, MSIDBERROR_BADIDENTIFIER = 11, MSIDBERROR_BADLANGUAGE = 12,
  MSIDBERROR_BADFILENAME = 13, MSIDBERROR_BADPATH = 14, MSIDBERROR_BADCONDITION = 15, MSIDBERROR_BADFORMATTED = 16,
  MSIDBERROR_BADTEMPLATE = 17, MSIDBERROR_BADDEFAULTDIR = 18, MSIDBERROR_BADREGPATH = 19, MSIDBERROR_BADCUSTOMSOURCE = 20,
  MSIDBERROR_BADPROPERTY = 21, MSIDBERROR_MISSINGDATA = 22, MSIDBERROR_BADCATEGORY = 23, MSIDBERROR_BADKEYTABLE = 24,
  MSIDBERROR_BADMAXMINVALUES = 25, MSIDBERROR_BADCABINET = 26, MSIDBERROR_BADSHORTCUT = 27, MSIDBERROR_STRINGOVERFLOW = 28,
  MSIDBERROR_BADLOCALIZEATTRIB = 29
}
 
enum  tagMSIDBSTATE { MSIDBSTATE_ERROR = -1, MSIDBSTATE_READ = 0, MSIDBSTATE_WRITE = 1 }
 
enum  tagMSITRANSFORM_ERROR {
  MSITRANSFORM_ERROR_ADDEXISTINGROW = 0x00000001, MSITRANSFORM_ERROR_DELMISSINGROW = 0x00000002, MSITRANSFORM_ERROR_ADDEXISTINGTABLE = 0x00000004, MSITRANSFORM_ERROR_DELMISSINGTABLE = 0x00000008,
  MSITRANSFORM_ERROR_UPDATEMISSINGROW = 0x00000010, MSITRANSFORM_ERROR_CHANGECODEPAGE = 0x00000020, MSITRANSFORM_ERROR_VIEWTRANSFORM = 0x00000100
}
 
enum  tagMSITRANSFORM_VALIDATE {
  MSITRANSFORM_VALIDATE_LANGUAGE = 0x00000001, MSITRANSFORM_VALIDATE_PRODUCT = 0x00000002, MSITRANSFORM_VALIDATE_PLATFORM = 0x00000004, MSITRANSFORM_VALIDATE_MAJORVERSION = 0x00000008,
  MSITRANSFORM_VALIDATE_MINORVERSION = 0x00000010, MSITRANSFORM_VALIDATE_UPDATEVERSION = 0x00000020, MSITRANSFORM_VALIDATE_NEWLESSBASEVERSION = 0x00000040, MSITRANSFORM_VALIDATE_NEWLESSEQUALBASEVERSION = 0x00000080,
  MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION = 0x00000100, MSITRANSFORM_VALIDATE_NEWGREATEREQUALBASEVERSION = 0x00000200, MSITRANSFORM_VALIDATE_NEWGREATERBASEVERSION = 0x00000400, MSITRANSFORM_VALIDATE_UPGRADECODE = 0x00000800
}
 

Functions

UINT WINAPI MsiViewFetch (MSIHANDLE, MSIHANDLE *)
 
UINT WINAPI MsiViewExecute (MSIHANDLE, MSIHANDLE)
 
UINT WINAPI MsiViewClose (MSIHANDLE)
 
UINT WINAPI MsiDatabaseOpenViewA (MSIHANDLE, LPCSTR, MSIHANDLE *)
 
UINT WINAPI MsiDatabaseOpenViewW (MSIHANDLE, LPCWSTR, MSIHANDLE *)
 
MSIDBERROR WINAPI MsiViewGetErrorA (MSIHANDLE, LPSTR, LPDWORD)
 
MSIDBERROR WINAPI MsiViewGetErrorW (MSIHANDLE, LPWSTR, LPDWORD)
 
MSIDBSTATE WINAPI MsiGetDatabaseState (MSIHANDLE)
 
MSIHANDLE WINAPI MsiCreateRecord (UINT)
 
UINT WINAPI MsiRecordClearData (MSIHANDLE)
 
UINT WINAPI MsiRecordSetInteger (MSIHANDLE, UINT, int)
 
UINT WINAPI MsiRecordSetStringA (MSIHANDLE, UINT, LPCSTR)
 
UINT WINAPI MsiRecordSetStringW (MSIHANDLE, UINT, LPCWSTR)
 
UINT WINAPI MsiRecordGetStringA (MSIHANDLE, UINT, LPSTR, LPDWORD)
 
UINT WINAPI MsiRecordGetStringW (MSIHANDLE, UINT, LPWSTR, LPDWORD)
 
UINT WINAPI MsiRecordGetFieldCount (MSIHANDLE)
 
int WINAPI MsiRecordGetInteger (MSIHANDLE, UINT)
 
UINT WINAPI MsiRecordDataSize (MSIHANDLE, UINT)
 
BOOL WINAPI MsiRecordIsNull (MSIHANDLE, UINT)
 
UINT WINAPI MsiFormatRecordA (MSIHANDLE, MSIHANDLE, LPSTR, LPDWORD)
 
UINT WINAPI MsiFormatRecordW (MSIHANDLE, MSIHANDLE, LPWSTR, LPDWORD)
 
UINT WINAPI MsiRecordSetStreamA (MSIHANDLE, UINT, LPCSTR)
 
UINT WINAPI MsiRecordSetStreamW (MSIHANDLE, UINT, LPCWSTR)
 
UINT WINAPI MsiRecordReadStream (MSIHANDLE, UINT, char *, LPDWORD)
 
UINT WINAPI MsiDatabaseGetPrimaryKeysA (MSIHANDLE, LPCSTR, MSIHANDLE *)
 
UINT WINAPI MsiDatabaseGetPrimaryKeysW (MSIHANDLE, LPCWSTR, MSIHANDLE *)
 
UINT WINAPI MsiDoActionA (MSIHANDLE, LPCSTR)
 
UINT WINAPI MsiDoActionW (MSIHANDLE, LPCWSTR)
 
UINT WINAPI MsiDatabaseApplyTransformA (MSIHANDLE, LPCSTR, int)
 
UINT WINAPI MsiDatabaseApplyTransformW (MSIHANDLE, LPCWSTR, int)
 
UINT WINAPI MsiDatabaseGenerateTransformA (MSIHANDLE, MSIHANDLE, LPCSTR, int, int)
 
UINT WINAPI MsiDatabaseGenerateTransformW (MSIHANDLE, MSIHANDLE, LPCWSTR, int, int)
 
UINT WINAPI MsiDatabaseCommit (MSIHANDLE)
 
UINT WINAPI MsiGetFeatureStateA (MSIHANDLE, LPCSTR, INSTALLSTATE *, INSTALLSTATE *)
 
UINT WINAPI MsiGetFeatureStateW (MSIHANDLE, LPCWSTR, INSTALLSTATE *, INSTALLSTATE *)
 
UINT WINAPI MsiGetFeatureValidStatesA (MSIHANDLE, LPCSTR, LPDWORD)
 
UINT WINAPI MsiGetFeatureValidStatesW (MSIHANDLE, LPCWSTR, LPDWORD)
 
UINT WINAPI MsiSetComponentStateA (MSIHANDLE, LPCSTR, INSTALLSTATE)
 
UINT WINAPI MsiSetComponentStateW (MSIHANDLE, LPCWSTR, INSTALLSTATE)
 
UINT WINAPI MsiGetComponentStateA (MSIHANDLE, LPCSTR, INSTALLSTATE *, INSTALLSTATE *)
 
UINT WINAPI MsiGetComponentStateW (MSIHANDLE, LPCWSTR, INSTALLSTATE *, INSTALLSTATE *)
 
MSICONDITION WINAPI MsiEvaluateConditionA (MSIHANDLE, LPCSTR)
 
MSICONDITION WINAPI MsiEvaluateConditionW (MSIHANDLE, LPCWSTR)
 
UINT WINAPI MsiGetPropertyA (MSIHANDLE, LPCSTR, LPSTR, LPDWORD)
 
UINT WINAPI MsiGetPropertyW (MSIHANDLE, LPCWSTR, LPWSTR, LPDWORD)
 
UINT WINAPI MsiSetPropertyA (MSIHANDLE, LPCSTR, LPCSTR)
 
UINT WINAPI MsiSetPropertyW (MSIHANDLE, LPCWSTR, LPCWSTR)
 
UINT WINAPI MsiGetTargetPathA (MSIHANDLE, LPCSTR, LPSTR, LPDWORD)
 
UINT WINAPI MsiGetTargetPathW (MSIHANDLE, LPCWSTR, LPWSTR, LPDWORD)
 
UINT WINAPI MsiSetTargetPathA (MSIHANDLE, LPCSTR, LPCSTR)
 
UINT WINAPI MsiSetTargetPathW (MSIHANDLE, LPCWSTR, LPCWSTR)
 
UINT WINAPI MsiGetSourcePathA (MSIHANDLE, LPCSTR, LPSTR, LPDWORD)
 
UINT WINAPI MsiGetSourcePathW (MSIHANDLE, LPCWSTR, LPWSTR, LPDWORD)
 
MSIHANDLE WINAPI MsiGetActiveDatabase (MSIHANDLE)
 
UINT WINAPI MsiViewGetColumnInfo (MSIHANDLE, MSICOLINFO, MSIHANDLE *)
 
INT WINAPI MsiProcessMessage (MSIHANDLE, INSTALLMESSAGE, MSIHANDLE)
 
UINT WINAPI MsiSetFeatureAttributesA (MSIHANDLE, LPCSTR, DWORD)
 
UINT WINAPI MsiSetFeatureAttributesW (MSIHANDLE, LPCWSTR, DWORD)
 
UINT WINAPI MsiSetFeatureStateA (MSIHANDLE, LPCSTR, INSTALLSTATE)
 
UINT WINAPI MsiSetFeatureStateW (MSIHANDLE, LPCWSTR, INSTALLSTATE)
 
UINT WINAPI MsiPreviewDialogA (MSIHANDLE, LPCSTR)
 
UINT WINAPI MsiPreviewDialogW (MSIHANDLE, LPCWSTR)
 
UINT WINAPI MsiPreviewBillboardA (MSIHANDLE, LPCSTR, LPCSTR)
 
UINT WINAPI MsiPreviewBillboardW (MSIHANDLE, LPCWSTR, LPCWSTR)
 
UINT WINAPI MsiCreateTransformSummaryInfoA (MSIHANDLE, MSIHANDLE, LPCSTR, int, int)
 
UINT WINAPI MsiCreateTransformSummaryInfoW (MSIHANDLE, MSIHANDLE, LPCWSTR, int, int)
 
UINT WINAPI MsiGetSummaryInformationA (MSIHANDLE, LPCSTR, UINT, MSIHANDLE *)
 
UINT WINAPI MsiGetSummaryInformationW (MSIHANDLE, LPCWSTR, UINT, MSIHANDLE *)
 
UINT WINAPI MsiSummaryInfoGetPropertyA (MSIHANDLE, UINT, PUINT, LPINT, FILETIME *, LPSTR, LPDWORD)
 
UINT WINAPI MsiSummaryInfoGetPropertyW (MSIHANDLE, UINT, PUINT, LPINT, FILETIME *, LPWSTR, LPDWORD)
 
UINT WINAPI MsiSummaryInfoSetPropertyA (MSIHANDLE, UINT, UINT, INT, FILETIME *, LPCSTR)
 
UINT WINAPI MsiSummaryInfoSetPropertyW (MSIHANDLE, UINT, UINT, INT, FILETIME *, LPCWSTR)
 
UINT WINAPI MsiDatabaseExportA (MSIHANDLE, LPCSTR, LPCSTR, LPCSTR)
 
UINT WINAPI MsiDatabaseExportW (MSIHANDLE, LPCWSTR, LPCWSTR, LPCWSTR)
 
UINT WINAPI MsiDatabaseImportA (MSIHANDLE, LPCSTR, LPCSTR)
 
UINT WINAPI MsiDatabaseImportW (MSIHANDLE, LPCWSTR, LPCWSTR)
 
UINT WINAPI MsiOpenDatabaseW (LPCWSTR, LPCWSTR, MSIHANDLE *)
 
UINT WINAPI MsiOpenDatabaseA (LPCSTR, LPCSTR, MSIHANDLE *)
 
MSICONDITION WINAPI MsiDatabaseIsTablePersistentA (MSIHANDLE, LPCSTR)
 
MSICONDITION WINAPI MsiDatabaseIsTablePersistentW (MSIHANDLE, LPCWSTR)
 
UINT WINAPI MsiSequenceA (MSIHANDLE, LPCSTR, INT)
 
UINT WINAPI MsiSequenceW (MSIHANDLE, LPCWSTR, INT)
 
UINT WINAPI MsiSummaryInfoPersist (MSIHANDLE)
 
UINT WINAPI MsiSummaryInfoGetPropertyCount (MSIHANDLE, PUINT)
 
UINT WINAPI MsiEnableUIPreview (MSIHANDLE, MSIHANDLE *)
 
BOOL WINAPI MsiGetMode (MSIHANDLE, MSIRUNMODE)
 
UINT WINAPI MsiSetMode (MSIHANDLE, MSIRUNMODE, BOOL)
 
UINT WINAPI MsiViewModify (MSIHANDLE, MSIMODIFY, MSIHANDLE)
 
UINT WINAPI MsiGetFeatureCostA (MSIHANDLE, LPCSTR, MSICOSTTREE, INSTALLSTATE, LPINT)
 
UINT WINAPI MsiGetFeatureCostW (MSIHANDLE, LPCWSTR, MSICOSTTREE, INSTALLSTATE, LPINT)
 
LANGID WINAPI MsiGetLanguage (MSIHANDLE)
 
UINT WINAPI MsiSetInstallLevel (MSIHANDLE, int)
 
MSIHANDLE WINAPI MsiGetLastErrorRecord (void)
 

Macro Definition Documentation

◆ MSI_NULL_INTEGER

#define MSI_NULL_INTEGER   0x80000000

Definition at line 32 of file msiquery.h.

◆ MsiCreateTransformSummaryInfo

#define MsiCreateTransformSummaryInfo   WINELIB_NAME_AW(MsiCreateTransformSummaryInfo)

Definition at line 295 of file msiquery.h.

◆ MsiDatabaseApplyTransform

#define MsiDatabaseApplyTransform   WINELIB_NAME_AW(MsiDatabaseApplyTransform)

Definition at line 226 of file msiquery.h.

◆ MsiDatabaseExport

#define MsiDatabaseExport   WINELIB_NAME_AW(MsiDatabaseExport)

Definition at line 311 of file msiquery.h.

◆ MsiDatabaseGenerateTransform

#define MsiDatabaseGenerateTransform   WINELIB_NAME_AW(MsiDatabaseGenerateTransform)

Definition at line 229 of file msiquery.h.

◆ MsiDatabaseGetPrimaryKeys

#define MsiDatabaseGetPrimaryKeys   WINELIB_NAME_AW(MsiDatabaseGetPrimaryKeys)

Definition at line 216 of file msiquery.h.

◆ MsiDatabaseImport

#define MsiDatabaseImport   WINELIB_NAME_AW(MsiDatabaseImport)

Definition at line 315 of file msiquery.h.

◆ MsiDatabaseIsTablePersistent

#define MsiDatabaseIsTablePersistent   WINELIB_NAME_AW(MsiDatabaseIsTablePersistent)

Definition at line 323 of file msiquery.h.

◆ MsiDatabaseOpenView

#define MsiDatabaseOpenView   WINELIB_NAME_AW(MsiDatabaseOpenView)

Definition at line 185 of file msiquery.h.

◆ MSIDBOPEN_CREATE

#define MSIDBOPEN_CREATE   (LPCTSTR)3

Definition at line 69 of file msiquery.h.

◆ MSIDBOPEN_CREATEDIRECT

#define MSIDBOPEN_CREATEDIRECT   (LPCTSTR)4

Definition at line 70 of file msiquery.h.

◆ MSIDBOPEN_DIRECT

#define MSIDBOPEN_DIRECT   (LPCTSTR)2

Definition at line 68 of file msiquery.h.

◆ MSIDBOPEN_PATCHFILE

#define MSIDBOPEN_PATCHFILE   32 / sizeof(*MSIDBOPEN_READONLY)

Definition at line 79 of file msiquery.h.

◆ MSIDBOPEN_READONLY

#define MSIDBOPEN_READONLY   (LPCTSTR)0

Definition at line 66 of file msiquery.h.

◆ MSIDBOPEN_TRANSACT

#define MSIDBOPEN_TRANSACT   (LPCTSTR)1

Definition at line 67 of file msiquery.h.

◆ MsiDoAction

#define MsiDoAction   WINELIB_NAME_AW(MsiDoAction)

Definition at line 221 of file msiquery.h.

◆ MsiEvaluateCondition

#define MsiEvaluateCondition   WINELIB_NAME_AW(MsiEvaluateCondition)

Definition at line 249 of file msiquery.h.

◆ MsiFormatRecord

#define MsiFormatRecord   WINELIB_NAME_AW(MsiFormatRecord)

Definition at line 208 of file msiquery.h.

◆ MsiGetComponentState

#define MsiGetComponentState   WINELIB_NAME_AW(MsiGetComponentState)

Definition at line 245 of file msiquery.h.

◆ MsiGetFeatureCost

#define MsiGetFeatureCost   WINELIB_NAME_AW(MsiGetFeatureCost)

Definition at line 340 of file msiquery.h.

◆ MsiGetFeatureState

#define MsiGetFeatureState   WINELIB_NAME_AW(MsiGetFeatureState)

Definition at line 236 of file msiquery.h.

◆ MsiGetFeatureValidStates

#define MsiGetFeatureValidStates   WINELIB_NAME_AW(MsiGetFeatureValidStates)

Definition at line 239 of file msiquery.h.

◆ MsiGetProperty

#define MsiGetProperty   WINELIB_NAME_AW(MsiGetProperty)

Definition at line 254 of file msiquery.h.

◆ MsiGetSourcePath

#define MsiGetSourcePath   WINELIB_NAME_AW(MsiGetSourcePath)

Definition at line 270 of file msiquery.h.

◆ MsiGetSummaryInformation

#define MsiGetSummaryInformation   WINELIB_NAME_AW(MsiGetSummaryInformation)

Definition at line 299 of file msiquery.h.

◆ MsiGetTargetPath

#define MsiGetTargetPath   WINELIB_NAME_AW(MsiGetTargetPath)

Definition at line 262 of file msiquery.h.

◆ MsiOpenDatabase

#define MsiOpenDatabase   WINELIB_NAME_AW(MsiOpenDatabase)

Definition at line 319 of file msiquery.h.

◆ MsiPreviewBillboard

#define MsiPreviewBillboard   WINELIB_NAME_AW(MsiPreviewBillboard)

Definition at line 291 of file msiquery.h.

◆ MsiPreviewDialog

#define MsiPreviewDialog   WINELIB_NAME_AW(MsiPreviewDialog)

Definition at line 287 of file msiquery.h.

◆ MsiRecordGetString

#define MsiRecordGetString   WINELIB_NAME_AW(MsiRecordGetString)

Definition at line 201 of file msiquery.h.

◆ MsiRecordSetStream

#define MsiRecordSetStream   WINELIB_NAME_AW(MsiRecordSetStream)

Definition at line 211 of file msiquery.h.

◆ MsiRecordSetString

#define MsiRecordSetString   WINELIB_NAME_AW(MsiRecordSetString)

Definition at line 198 of file msiquery.h.

◆ MsiSequence

#define MsiSequence   WINELIB_NAME_AW(MsiSequence)

Definition at line 327 of file msiquery.h.

◆ MsiSetComponentState

#define MsiSetComponentState   WINELIB_NAME_AW(MsiSetComponentState)

Definition at line 242 of file msiquery.h.

◆ MsiSetFeatureAttributes

#define MsiSetFeatureAttributes   WINELIB_NAME_AW(MsiSetFeatureAttributes)

Definition at line 279 of file msiquery.h.

◆ MsiSetFeatureState

#define MsiSetFeatureState   WINELIB_NAME_AW(MsiSetFeatureState)

Definition at line 283 of file msiquery.h.

◆ MsiSetProperty

#define MsiSetProperty   WINELIB_NAME_AW(MsiSetProperty)

Definition at line 258 of file msiquery.h.

◆ MsiSetTargetPath

#define MsiSetTargetPath   WINELIB_NAME_AW(MsiSetTargetPath)

Definition at line 266 of file msiquery.h.

◆ MsiSummaryInfoGetProperty

#define MsiSummaryInfoGetProperty   WINELIB_NAME_AW(MsiSummaryInfoGetProperty)

Definition at line 303 of file msiquery.h.

◆ MsiSummaryInfoSetProperty

#define MsiSummaryInfoSetProperty   WINELIB_NAME_AW(MsiSummaryInfoSetProperty)

Definition at line 307 of file msiquery.h.

◆ MsiViewGetError

#define MsiViewGetError   WINELIB_NAME_AW(MsiViewGetError)

Definition at line 188 of file msiquery.h.

Typedef Documentation

◆ MSICOLINFO

◆ MSICONDITION

◆ MSICOSTTREE

◆ MSIDBERROR

◆ MSIDBSTATE

◆ MSIMODIFY

◆ MSIRUNMODE

◆ MSITRANSFORM_ERROR

◆ MSITRANSFORM_VALIDATE

Enumeration Type Documentation

◆ tagMSICOLINFO

Enumerator
MSICOLINFO_NAMES 
MSICOLINFO_TYPES 

Definition at line 34 of file msiquery.h.

35 {
36  MSICOLINFO_NAMES = 0,
38 } MSICOLINFO;
enum tagMSICOLINFO MSICOLINFO

◆ tagMSICONDITION

Enumerator
MSICONDITION_FALSE 
MSICONDITION_TRUE 
MSICONDITION_NONE 
MSICONDITION_ERROR 

Definition at line 24 of file msiquery.h.

25 {
30 } MSICONDITION;
enum tagMSICONDITION MSICONDITION

◆ tagMSICOSTTREE

Enumerator
MSICOSTTREE_SELFONLY 
MSICOSTTREE_CHILDREN 
MSICOSTTREE_PARENTS 
MSICOSTTREE_PRODUCT 

Definition at line 40 of file msiquery.h.

◆ tagMSIDBERROR

Enumerator
MSIDBERROR_INVALIDARG 
MSIDBERROR_MOREDATA 
MSIDBERROR_FUNCTIONERROR 
MSIDBERROR_NOERROR 
MSIDBERROR_DUPLICATEKEY 
MSIDBERROR_REQUIRED 
MSIDBERROR_BADLINK 
MSIDBERROR_OVERFLOW 
MSIDBERROR_UNDERFLOW 
MSIDBERROR_NOTINSET 
MSIDBERROR_BADVERSION 
MSIDBERROR_BADCASE 
MSIDBERROR_BADGUID 
MSIDBERROR_BADWILDCARD 
MSIDBERROR_BADIDENTIFIER 
MSIDBERROR_BADLANGUAGE 
MSIDBERROR_BADFILENAME 
MSIDBERROR_BADPATH 
MSIDBERROR_BADCONDITION 
MSIDBERROR_BADFORMATTED 
MSIDBERROR_BADTEMPLATE 
MSIDBERROR_BADDEFAULTDIR 
MSIDBERROR_BADREGPATH 
MSIDBERROR_BADCUSTOMSOURCE 
MSIDBERROR_BADPROPERTY 
MSIDBERROR_MISSINGDATA 
MSIDBERROR_BADCATEGORY 
MSIDBERROR_BADKEYTABLE 
MSIDBERROR_BADMAXMINVALUES 
MSIDBERROR_BADCABINET 
MSIDBERROR_BADSHORTCUT 
MSIDBERROR_STRINGOVERFLOW 
MSIDBERROR_BADLOCALIZEATTRIB 

Definition at line 104 of file msiquery.h.

105 {
107  MSIDBERROR_MOREDATA = -2,
109  MSIDBERROR_NOERROR = 0,
112  MSIDBERROR_BADLINK = 3,
117  MSIDBERROR_BADCASE = 8,
118  MSIDBERROR_BADGUID = 9,
123  MSIDBERROR_BADPATH = 14,
139 } MSIDBERROR;
enum tagMSIDBERROR MSIDBERROR

◆ tagMSIDBSTATE

Enumerator
MSIDBSTATE_ERROR 
MSIDBSTATE_READ 
MSIDBSTATE_WRITE 

Definition at line 141 of file msiquery.h.

142 {
143  MSIDBSTATE_ERROR = -1,
144  MSIDBSTATE_READ = 0,
145  MSIDBSTATE_WRITE = 1
146 } MSIDBSTATE;
enum tagMSIDBSTATE MSIDBSTATE

◆ tagMSIMODIFY

Enumerator
MSIMODIFY_SEEK 
MSIMODIFY_REFRESH 
MSIMODIFY_INSERT 
MSIMODIFY_UPDATE 
MSIMODIFY_ASSIGN 
MSIMODIFY_REPLACE 
MSIMODIFY_MERGE 
MSIMODIFY_DELETE 
MSIMODIFY_INSERT_TEMPORARY 
MSIMODIFY_VALIDATE 
MSIMODIFY_VALIDATE_NEW 
MSIMODIFY_VALIDATE_FIELD 
MSIMODIFY_VALIDATE_DELETE 

Definition at line 48 of file msiquery.h.

◆ tagMSIRUNMODE

Enumerator
MSIRUNMODE_ADMIN 
MSIRUNMODE_ADVERTISE 
MSIRUNMODE_MAINTENANCE 
MSIRUNMODE_ROLLBACKENABLED 
MSIRUNMODE_LOGENABLED 
MSIRUNMODE_OPERATIONS 
MSIRUNMODE_REBOOTATEND 
MSIRUNMODE_REBOOTNOW 
MSIRUNMODE_CABINET 
MSIRUNMODE_SOURCESHORTNAMES 
MSIRUNMODE_TARGETSHORTNAMES 
MSIRUNMODE_RESERVED11 
MSIRUNMODE_WINDOWS9X 
MSIRUNMODE_ZAWENABLED 
MSIRUNMODE_RESERVED14 
MSIRUNMODE_RESERVED15 
MSIRUNMODE_SCHEDULED 
MSIRUNMODE_ROLLBACK 
MSIRUNMODE_COMMIT 

Definition at line 81 of file msiquery.h.

82 {
83  MSIRUNMODE_ADMIN = 0,
100  MSIRUNMODE_ROLLBACK = 17,
101  MSIRUNMODE_COMMIT = 18
102 } MSIRUNMODE;
enum tagMSIRUNMODE MSIRUNMODE

◆ tagMSITRANSFORM_ERROR

Enumerator
MSITRANSFORM_ERROR_ADDEXISTINGROW 
MSITRANSFORM_ERROR_DELMISSINGROW 
MSITRANSFORM_ERROR_ADDEXISTINGTABLE 
MSITRANSFORM_ERROR_DELMISSINGTABLE 
MSITRANSFORM_ERROR_UPDATEMISSINGROW 
MSITRANSFORM_ERROR_CHANGECODEPAGE 
MSITRANSFORM_ERROR_VIEWTRANSFORM 

Definition at line 148 of file msiquery.h.

◆ tagMSITRANSFORM_VALIDATE

Enumerator
MSITRANSFORM_VALIDATE_LANGUAGE 
MSITRANSFORM_VALIDATE_PRODUCT 
MSITRANSFORM_VALIDATE_PLATFORM 
MSITRANSFORM_VALIDATE_MAJORVERSION 
MSITRANSFORM_VALIDATE_MINORVERSION 
MSITRANSFORM_VALIDATE_UPDATEVERSION 
MSITRANSFORM_VALIDATE_NEWLESSBASEVERSION 
MSITRANSFORM_VALIDATE_NEWLESSEQUALBASEVERSION 
MSITRANSFORM_VALIDATE_NEWEQUALBASEVERSION 
MSITRANSFORM_VALIDATE_NEWGREATEREQUALBASEVERSION 
MSITRANSFORM_VALIDATE_NEWGREATERBASEVERSION 
MSITRANSFORM_VALIDATE_UPGRADECODE 

Definition at line 159 of file msiquery.h.

160 {
161  MSITRANSFORM_VALIDATE_LANGUAGE = 0x00000001,
162  MSITRANSFORM_VALIDATE_PRODUCT = 0x00000002,
163  MSITRANSFORM_VALIDATE_PLATFORM = 0x00000004,
enum tagMSITRANSFORM_VALIDATE MSITRANSFORM_VALIDATE

Function Documentation

◆ MsiCreateRecord()

MSIHANDLE WINAPI MsiCreateRecord ( UINT  )

Definition at line 92 of file record.c.

93 {
94  MSIRECORD *rec;
95  MSIHANDLE ret = 0;
96 
97  TRACE("%d\n", cParams);
98 
99  rec = MSI_CreateRecord( cParams );
100  if( rec )
101  {
102  ret = alloc_msihandle( &rec->hdr );
103  msiobj_release( &rec->hdr );
104  }
105  return ret;
106 }
MSIOBJECTHDR hdr
Definition: msipriv.h:151
MSIRECORD * MSI_CreateRecord(UINT cParams)
Definition: record.c:76
unsigned long MSIHANDLE
Definition: winemsi.idl:24
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
int ret
MSIHANDLE alloc_msihandle(MSIOBJECTHDR *obj)
Definition: handle.c:111

Referenced by add_custom_dll(), generate_transform(), InstallerImpl_CreateRecord(), ok_(), query_file_path(), test_binary(), test_customaction1(), test_db(), test_dbmerge(), test_externalui(), test_externalui_message(), test_fieldzero(), test_format_record(), test_formatrecord(), test_formatrecord2(), test_formatrecord_tables(), test_icon_table(), test_markers(), test_msiinsert(), test_msirecord(), test_MsiRecordGetInteger(), test_MsiRecordGetString(), test_select_markers(), test_storages_table(), test_streamtable(), test_stringtable(), test_try_transform(), test_update(), test_view_get_error(), test_viewmodify(), test_viewmodify_assign(), test_viewmodify_delete_temporary(), test_viewmodify_insert(), test_viewmodify_merge(), test_viewmodify_update(), test_where(), test_where_viewmodify(), try_insert_query(), and unmarshal_record().

◆ MsiCreateTransformSummaryInfoA()

UINT WINAPI MsiCreateTransformSummaryInfoA ( MSIHANDLE  ,
MSIHANDLE  ,
LPCSTR  ,
int  ,
int   
)

◆ MsiCreateTransformSummaryInfoW()

UINT WINAPI MsiCreateTransformSummaryInfoW ( MSIHANDLE  ,
MSIHANDLE  ,
LPCWSTR  ,
int  ,
int   
)

◆ MsiDatabaseApplyTransformA()

UINT WINAPI MsiDatabaseApplyTransformA ( MSIHANDLE  ,
LPCSTR  ,
int   
)

◆ MsiDatabaseApplyTransformW()

UINT WINAPI MsiDatabaseApplyTransformW ( MSIHANDLE  ,
LPCWSTR  ,
int   
)

◆ MsiDatabaseCommit()

UINT WINAPI MsiDatabaseCommit ( MSIHANDLE  )

Definition at line 963 of file msiquery.c.

964 {
965  MSIDATABASE *db;
966  UINT r;
967 
968  TRACE( "%lu\n", hdb );
969 
971  if( !db )
972  {
973  MSIHANDLE remote;
974 
975  if (!(remote = msi_get_remote(hdb)))
976  return ERROR_INVALID_HANDLE;
977 
978  WARN("not allowed during a custom action!\n");
979 
980  return ERROR_SUCCESS;
981  }
982 
983  if (db->mode == MSI_OPEN_READONLY)
984  {
985  msiobj_release( &db->hdr );
986  return ERROR_SUCCESS;
987  }
988 
989  /* FIXME: lock the database */
990 
991  r = msi_commit_streams( db );
992  if (r != ERROR_SUCCESS) ERR("Failed to commit streams!\n");
993  else
994  {
995  r = MSI_CommitTables( db );
996  if (r != ERROR_SUCCESS) ERR("Failed to commit tables!\n");
997  }
998 
999  /* FIXME: unlock the database */
1000 
1001  msiobj_release( &db->hdr );
1002 
1003  if (r == ERROR_SUCCESS)
1004  {
1005  msi_free( db->deletefile );
1006  db->deletefile = NULL;
1007  }
1008 
1009  return r;
1010 }
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
#define ERROR_SUCCESS
Definition: deptool.c:10
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
#define WARN(fmt,...)
Definition: debug.h:112
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
static void msi_free(void *mem)
Definition: msipriv.h:1159
#define MSIHANDLETYPE_DATABASE
Definition: msipriv.h:722
unsigned long MSIHANDLE
Definition: winemsi.idl:24
#define MSI_OPEN_READONLY
Definition: msipriv.h:99
#define TRACE(s)
Definition: solgame.cpp:4
UINT msi_commit_streams(MSIDATABASE *db) DECLSPEC_HIDDEN
Definition: streams.c:607
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
UINT MSI_CommitTables(MSIDATABASE *db) DECLSPEC_HIDDEN
Definition: table.c:2887
#define ERR(fmt,...)
Definition: debug.h:110
LPWSTR deletefile
Definition: msipriv.h:113
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
MSIOBJECTHDR hdr
Definition: msipriv.h:108

Referenced by create_database(), create_database_wordcount(), create_db(), create_package_db(), generate_transform(), helper_createpackage(), set_admin_summary_info(), test_access(), test_binary(), test_costs(), test_createtable(), test_customaction1(), test_defaultdatabase(), test_deleterow(), test_emptypackage(), test_forcecodepage(), test_icon_table(), test_int_widths(), test_integers(), test_invalid_functions(), test_longstrings(), test_msibadqueries(), test_msidatabase(), test_MsiDatabaseCommit(), test_MsiGetProductProperty(), test_MsiGetSourcePath(), test_msiinsert(), test_MsiOpenDatabase(), test_shortlongsource(), test_states(), test_storages_table(), test_streamtable(), test_stringtable(), test_suminfo(), test_top_level_action(), test_try_transform(), and test_update().

◆ MsiDatabaseExportA()

UINT WINAPI MsiDatabaseExportA ( MSIHANDLE  ,
LPCSTR  ,
LPCSTR  ,
LPCSTR   
)

◆ MsiDatabaseExportW()

UINT WINAPI MsiDatabaseExportW ( MSIHANDLE  ,
LPCWSTR  ,
LPCWSTR  ,
LPCWSTR   
)

◆ MsiDatabaseGenerateTransformA()

UINT WINAPI MsiDatabaseGenerateTransformA ( MSIHANDLE  ,
MSIHANDLE  ,
LPCSTR  ,
int  ,
int   
)

◆ MsiDatabaseGenerateTransformW()

UINT WINAPI MsiDatabaseGenerateTransformW ( MSIHANDLE  ,
MSIHANDLE  ,
LPCWSTR  ,
int  ,
int   
)

◆ MsiDatabaseGetPrimaryKeysA()

UINT WINAPI MsiDatabaseGetPrimaryKeysA ( MSIHANDLE  ,
LPCSTR  ,
MSIHANDLE  
)

◆ MsiDatabaseGetPrimaryKeysW()

UINT WINAPI MsiDatabaseGetPrimaryKeysW ( MSIHANDLE  ,
LPCWSTR  ,
MSIHANDLE  
)

◆ MsiDatabaseImportA()

UINT WINAPI MsiDatabaseImportA ( MSIHANDLE  ,
LPCSTR  ,
LPCSTR   
)

◆ MsiDatabaseImportW()

UINT WINAPI MsiDatabaseImportW ( MSIHANDLE  ,
LPCWSTR  ,
LPCWSTR   
)

◆ MsiDatabaseIsTablePersistentA()

MSICONDITION WINAPI MsiDatabaseIsTablePersistentA ( MSIHANDLE  ,
LPCSTR   
)

◆ MsiDatabaseIsTablePersistentW()

MSICONDITION WINAPI MsiDatabaseIsTablePersistentW ( MSIHANDLE  ,
LPCWSTR   
)

◆ MsiDatabaseOpenViewA()

UINT WINAPI MsiDatabaseOpenViewA ( MSIHANDLE  ,
LPCSTR  ,
MSIHANDLE  
)

◆ MsiDatabaseOpenViewW()

UINT WINAPI MsiDatabaseOpenViewW ( MSIHANDLE  ,
LPCWSTR  ,
MSIHANDLE  
)

Definition at line 236 of file msiquery.c.

238 {
239  MSIDATABASE *db;
240  MSIQUERY *query = NULL;
241  UINT ret;
242 
243  TRACE("%s %p\n", debugstr_w(szQuery), phView);
244 
245  if (!phView)
247 
248  if (!szQuery)
249  return ERROR_BAD_QUERY_SYNTAX;
250 
252  if( !db )
253  {
254  MSIHANDLE remote, remote_view;
255 
256  if (!(remote = msi_get_remote(hdb)))
257  return ERROR_INVALID_HANDLE;
258 
259  __TRY
260  {
261  ret = remote_DatabaseOpenView(remote, szQuery, &remote_view);
262  }
264  {
265  ret = GetExceptionCode();
266  }
267  __ENDTRY
268 
269  if (!ret)
270  *phView = alloc_msi_remote_handle(remote_view);
271  return ret;
272  }
273 
274  ret = MSI_DatabaseOpenViewW( db, szQuery, &query );
275  if( ret == ERROR_SUCCESS )
276  {
277  *phView = alloc_msihandle( &query->hdr );
278  if (! *phView)
280  msiobj_release( &query->hdr );
281  }
282  msiobj_release( &db->hdr );
283 
284  return ret;
285 }
#define __EXCEPT(func)
Definition: exception.h:84
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
#define ERROR_SUCCESS
Definition: deptool.c:10
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
#define ERROR_NOT_ENOUGH_MEMORY
Definition: dderror.h:7
#define MSIHANDLETYPE_DATABASE
Definition: msipriv.h:722
unsigned long MSIHANDLE
Definition: winemsi.idl:24
#define debugstr_w
Definition: kernel32.h:32
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
int ret
MSIHANDLE alloc_msihandle(MSIOBJECTHDR *obj)
Definition: handle.c:111
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
UINT MSI_DatabaseOpenViewW(MSIDATABASE *db, const WCHAR *szQuery, MSIQUERY **pView)
Definition: msiquery.c:110
#define GetExceptionCode()
Definition: seh.h:27
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
MSIOBJECTHDR hdr
Definition: msipriv.h:108
#define ERROR_BAD_QUERY_SYNTAX
Definition: winerror.h:973
MSIHANDLE alloc_msi_remote_handle(MSIHANDLE remote)
Definition: handle.c:135

Referenced by database_invoke(), find_entryW(), MsiDatabaseOpenViewA(), run_queryW(), s_remote_DatabaseOpenView(), and test_collation().

◆ MsiDoActionA()

UINT WINAPI MsiDoActionA ( MSIHANDLE  ,
LPCSTR   
)

Definition at line 45 of file install.c.

46 {
47  LPWSTR szwAction;
48  UINT ret;
49 
50  TRACE("%s\n", debugstr_a(szAction));
51 
52  szwAction = strdupAtoW(szAction);
53  if (szAction && !szwAction)
54  return ERROR_FUNCTION_FAILED;
55 
56  ret = MsiDoActionW( hInstall, szwAction );
57  msi_free( szwAction );
58  return ret;
59 }
static void msi_free(void *mem)
Definition: msipriv.h:1159
#define ERROR_FUNCTION_FAILED
Definition: winerror.h:985
UINT WINAPI MsiDoActionW(MSIHANDLE hInstall, LPCWSTR szAction)
Definition: install.c:64
#define TRACE(s)
Definition: solgame.cpp:4
#define debugstr_a
Definition: kernel32.h:31
int ret
unsigned int UINT
Definition: ndis.h:50
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65

Referenced by test_appsearch(), test_appsearch_complocator(), test_appsearch_drlocator(), test_appsearch_inilocator(), test_appsearch_reglocator(), test_ccpsearch(), test_complocator(), test_controlevent(), test_costs(), test_dbtopackage(), test_doaction(), test_externalui_message(), test_featureparents(), test_formatrecord_tables(), test_launchconditions(), test_MsiGetSourcePath(), test_MsiSetComponentState(), test_MsiSetFeatureAttributes(), test_property_table(), test_removefiles(), test_settargetpath(), test_shortlongsource(), test_sourcedir(), test_states(), and test_top_level_action().

◆ MsiDoActionW()

UINT WINAPI MsiDoActionW ( MSIHANDLE  ,
LPCWSTR   
)

Definition at line 64 of file install.c.

65 {
66  MSIPACKAGE *package;
67  UINT ret;
68 
69  TRACE("%s\n",debugstr_w(szAction));
70 
71  if (!szAction)
73 
74  package = msihandle2msiinfo( hInstall, MSIHANDLETYPE_PACKAGE );
75  if (!package)
76  {
77  MSIHANDLE remote;
78 
79  if (!(remote = msi_get_remote(hInstall)))
80  return ERROR_INVALID_HANDLE;
81 
82  __TRY
83  {
84  ret = remote_DoAction(remote, szAction);
85  }
87  {
89  }
90  __ENDTRY
91 
92  return ret;
93  }
94 
95  ret = ACTION_PerformAction(package, szAction);
96  msiobj_release( &package->hdr );
97 
98  return ret;
99 }
#define __EXCEPT(func)
Definition: exception.h:84
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
MSIOBJECTHDR hdr
Definition: msipriv.h:393
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
unsigned long MSIHANDLE
Definition: winemsi.idl:24
#define debugstr_w
Definition: kernel32.h:32
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
int ret
UINT ACTION_PerformAction(MSIPACKAGE *package, const WCHAR *action)
Definition: action.c:7610
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27

Referenced by MsiDoActionA(), s_remote_DoAction(), and session_invoke().

◆ MsiEnableUIPreview()

UINT WINAPI MsiEnableUIPreview ( MSIHANDLE  ,
MSIHANDLE  
)

Definition at line 4210 of file dialog.c.

4211 {
4212  MSIDATABASE *db;
4215 
4216  TRACE( "%lu %p\n", hdb, phPreview );
4217 
4218  if (!(db = msihandle2msiinfo(hdb, MSIHANDLETYPE_DATABASE)))
4219  return ERROR_INVALID_HANDLE;
4220 
4221  preview = MSI_EnableUIPreview( db );
4222  if (preview)
4223  {
4224  *phPreview = alloc_msihandle( &preview->hdr );
4225  msiobj_release( &preview->hdr );
4226  r = ERROR_SUCCESS;
4227  if (!*phPreview)
4229  }
4230  msiobj_release( &db->hdr );
4231  return r;
4232 }
#define ERROR_SUCCESS
Definition: deptool.c:10
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
#define ERROR_NOT_ENOUGH_MEMORY
Definition: dderror.h:7
#define MSIHANDLETYPE_DATABASE
Definition: msipriv.h:722
#define ERROR_FUNCTION_FAILED
Definition: winerror.h:985
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
static previewinfo preview
Definition: print.c:56
MSIHANDLE alloc_msihandle(MSIOBJECTHDR *obj)
Definition: handle.c:111
unsigned int UINT
Definition: ndis.h:50
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
static MSIPREVIEW * MSI_EnableUIPreview(MSIDATABASE *db)
Definition: dialog.c:4191
MSIOBJECTHDR hdr
Definition: msipriv.h:108

Referenced by test_invalid_functions().

◆ MsiEvaluateConditionA()

MSICONDITION WINAPI MsiEvaluateConditionA ( MSIHANDLE  ,
LPCSTR   
)

Referenced by test_condition(), and test_misc().

◆ MsiEvaluateConditionW()

MSICONDITION WINAPI MsiEvaluateConditionW ( MSIHANDLE  ,
LPCWSTR   
)

◆ MsiFormatRecordA()

UINT WINAPI MsiFormatRecordA ( MSIHANDLE  ,
MSIHANDLE  ,
LPSTR  ,
LPDWORD   
)

◆ MsiFormatRecordW()

UINT WINAPI MsiFormatRecordW ( MSIHANDLE  ,
MSIHANDLE  ,
LPWSTR  ,
LPDWORD   
)

◆ MsiGetActiveDatabase()

MSIHANDLE WINAPI MsiGetActiveDatabase ( MSIHANDLE  )

Definition at line 1674 of file package.c.

1675 {
1676  MSIPACKAGE *package;
1677  MSIHANDLE handle = 0;
1678  MSIHANDLE remote;
1679 
1680  TRACE( "%lu\n", hInstall );
1681 
1682  package = msihandle2msiinfo( hInstall, MSIHANDLETYPE_PACKAGE);
1683  if( package)
1684  {
1685  handle = alloc_msihandle( &package->db->hdr );
1686  msiobj_release( &package->hdr );
1687  }
1688  else if ((remote = msi_get_remote(hInstall)))
1689  {
1690  __TRY
1691  {
1692  handle = remote_GetActiveDatabase(remote);
1694  }
1696  {
1697  handle = 0;
1698  }
1699  __ENDTRY
1700  }
1701 
1702  return handle;
1703 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
MSIOBJECTHDR hdr
Definition: msipriv.h:393
namespace GUID const ADDRINFOEXW ADDRINFOEXW struct timeval OVERLAPPED LPLOOKUPSERVICE_COMPLETION_ROUTINE HANDLE * handle
Definition: sock.c:82
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
MSIDATABASE * db
Definition: msipriv.h:394
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
MSIHANDLE alloc_msihandle(MSIOBJECTHDR *obj)
Definition: handle.c:111
MSIOBJECTHDR hdr
Definition: msipriv.h:108
MSIHANDLE alloc_msi_remote_handle(MSIHANDLE remote)
Definition: handle.c:135

Referenced by s_remote_GetActiveDatabase(), session_invoke(), test_db(), test_emptypackage(), test_invalid_functions(), test_MsiSetProperty(), test_property_table(), test_simple_patch(), test_system_tables(), and test_view_get_error().

◆ MsiGetComponentStateA()

UINT WINAPI MsiGetComponentStateA ( MSIHANDLE  ,
LPCSTR  ,
INSTALLSTATE ,
INSTALLSTATE  
)

Definition at line 1396 of file install.c.

1398 {
1399  LPWSTR szwComponent= NULL;
1400  UINT rc;
1401 
1402  szwComponent= strdupAtoW(szComponent);
1403 
1404  rc = MsiGetComponentStateW(hInstall,szwComponent,piInstalled, piAction);
1405 
1406  msi_free( szwComponent);
1407 
1408  return rc;
1409 }
static void msi_free(void *mem)
Definition: msipriv.h:1159
UINT WINAPI MsiGetComponentStateW(MSIHANDLE hInstall, const WCHAR *szComponent, INSTALLSTATE *piInstalled, INSTALLSTATE *piAction)
Definition: install.c:1501
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65

Referenced by test_component_states(), test_feature_states(), test_MsiSetComponentState(), and test_removefiles().

◆ MsiGetComponentStateW()

UINT WINAPI MsiGetComponentStateW ( MSIHANDLE  ,
LPCWSTR  ,
INSTALLSTATE ,
INSTALLSTATE  
)

◆ MsiGetDatabaseState()

MSIDBSTATE WINAPI MsiGetDatabaseState ( MSIHANDLE  )

Definition at line 1897 of file database.c.

1898 {
1900  MSIDATABASE *db;
1901 
1902  TRACE( "%lu\n", handle );
1903 
1905  return MSIDBSTATE_ERROR;
1906 
1907  if (db->mode != MSI_OPEN_READONLY )
1909  msiobj_release( &db->hdr );
1910 
1911  return ret;
1912 }
#define MSIHANDLETYPE_DATABASE
Definition: msipriv.h:722
#define MSI_OPEN_READONLY
Definition: msipriv.h:99
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
int ret
enum tagMSIDBSTATE MSIDBSTATE
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
MSIOBJECTHDR hdr
Definition: msipriv.h:108

Referenced by test_invalid_functions().

◆ MsiGetFeatureCostA()

UINT WINAPI MsiGetFeatureCostA ( MSIHANDLE  ,
LPCSTR  ,
MSICOSTTREE  ,
INSTALLSTATE  ,
LPINT   
)

Definition at line 1128 of file install.c.

1130 {
1131  LPWSTR szwFeature = NULL;
1132  UINT rc;
1133 
1134  szwFeature = strdupAtoW(szFeature);
1135 
1136  rc = MsiGetFeatureCostW(hInstall, szwFeature, iCostTree, iState, piCost);
1137 
1138  msi_free(szwFeature);
1139 
1140  return rc;
1141 }
static void msi_free(void *mem)
Definition: msipriv.h:1159
UINT WINAPI MsiGetFeatureCostW(MSIHANDLE hInstall, const WCHAR *szFeature, MSICOSTTREE iCostTree, INSTALLSTATE iState, INT *piCost)
Definition: install.c:1207
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65

Referenced by test_costs().

◆ MsiGetFeatureCostW()

UINT WINAPI MsiGetFeatureCostW ( MSIHANDLE  ,
LPCWSTR  ,
MSICOSTTREE  ,
INSTALLSTATE  ,
LPINT   
)

◆ MsiGetFeatureStateA()

UINT WINAPI MsiGetFeatureStateA ( MSIHANDLE  ,
LPCSTR  ,
INSTALLSTATE ,
INSTALLSTATE  
)

Definition at line 1052 of file install.c.

1054 {
1055  LPWSTR szwFeature = NULL;
1056  UINT rc;
1057 
1058  if (szFeature && !(szwFeature = strdupAtoW(szFeature))) return ERROR_OUTOFMEMORY;
1059 
1060  rc = MsiGetFeatureStateW(hInstall, szwFeature, piInstalled, piAction);
1061  msi_free( szwFeature);
1062  return rc;
1063 }
static void msi_free(void *mem)
Definition: msipriv.h:1159
UINT WINAPI MsiGetFeatureStateW(MSIHANDLE hInstall, const WCHAR *szFeature, INSTALLSTATE *piInstalled, INSTALLSTATE *piAction)
Definition: install.c:1088
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65
#define ERROR_OUTOFMEMORY
Definition: deptool.c:13

Referenced by test_feature_states().

◆ MsiGetFeatureStateW()

UINT WINAPI MsiGetFeatureStateW ( MSIHANDLE  ,
LPCWSTR  ,
INSTALLSTATE ,
INSTALLSTATE  
)

◆ MsiGetFeatureValidStatesA()

UINT WINAPI MsiGetFeatureValidStatesA ( MSIHANDLE  ,
LPCSTR  ,
LPDWORD   
)

◆ MsiGetFeatureValidStatesW()

UINT WINAPI MsiGetFeatureValidStatesW ( MSIHANDLE  ,
LPCWSTR  ,
LPDWORD   
)

◆ MsiGetLanguage()

LANGID WINAPI MsiGetLanguage ( MSIHANDLE  )

Definition at line 1541 of file install.c.

1542 {
1543  MSIPACKAGE* package;
1544  LANGID langid;
1545 
1546  package = msihandle2msiinfo(hInstall, MSIHANDLETYPE_PACKAGE);
1547  if (!package)
1548  {
1549  MSIHANDLE remote;
1550 
1551  if (!(remote = msi_get_remote(hInstall)))
1552  return ERROR_INVALID_HANDLE;
1553 
1554  __TRY
1555  {
1556  langid = remote_GetLanguage(remote);
1557  }
1559  {
1560  langid = 0;
1561  }
1562  __ENDTRY
1563 
1564  return langid;
1565  }
1566 
1567  langid = msi_get_property_int( package->db, L"ProductLanguage", 0 );
1568  msiobj_release( &package->hdr );
1569  return langid;
1570 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
MSIOBJECTHDR hdr
Definition: msipriv.h:393
int msi_get_property_int(MSIDATABASE *package, LPCWSTR prop, int def) DECLSPEC_HIDDEN
Definition: package.c:2305
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
WORD LANGID
Definition: typedefs.h:81
LANGID langid
Definition: msctf.idl:605
#define L(x)
Definition: ntvdm.h:50
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
MSIDATABASE * db
Definition: msipriv.h:394
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82

Referenced by da_deferred(), s_remote_GetLanguage(), session_invoke(), and test_misc().

◆ MsiGetLastErrorRecord()

MSIHANDLE WINAPI MsiGetLastErrorRecord ( void  )

Definition at line 872 of file msiquery.c.

873 {
874  FIXME("\n");
875  return 0;
876 }
#define FIXME(fmt,...)
Definition: debug.h:111

◆ MsiGetMode()

BOOL WINAPI MsiGetMode ( MSIHANDLE  ,
MSIRUNMODE   
)

Definition at line 670 of file install.c.

671 {
672  MSIPACKAGE *package;
673  BOOL r = FALSE;
674 
675  TRACE( "%lu, %d\n", hInstall, iRunMode );
676 
677  package = msihandle2msiinfo(hInstall, MSIHANDLETYPE_PACKAGE);
678  if (!package)
679  {
680  MSIHANDLE remote;
681 
682  if (!(remote = msi_get_remote(hInstall)))
683  return FALSE;
684 
685  __TRY
686  {
687  r = remote_GetMode(remote, iRunMode);
688  }
690  {
691  r = FALSE;
692  }
693  __ENDTRY
694 
695  return r;
696  }
697 
698  switch (iRunMode)
699  {
700  case MSIRUNMODE_ADMIN:
701  FIXME("no support for administrative installs\n");
702  break;
703 
705  FIXME("no support for advertised installs\n");
706  break;
707 
709  if (GetVersion() & 0x80000000)
710  r = TRUE;
711  break;
712 
717  break;
718 
720  r = package->scheduled_action_running;
721  break;
722 
723  case MSIRUNMODE_ROLLBACK:
724  r = package->rollback_action_running;
725  break;
726 
727  case MSIRUNMODE_COMMIT:
728  r = package->commit_action_running;
729  break;
730 
732  r = msi_get_property_int( package->db, L"Installed", 0 ) != 0;
733  break;
734 
736  r = msi_get_property_int( package->db, L"RollbackDisabled", 0 ) == 0;
737  break;
738 
740  r = package->need_reboot_at_end;
741  break;
742 
744  r = package->need_reboot_now;
745  break;
746 
748  r = (package->log_file != INVALID_HANDLE_VALUE);
749  break;
750 
751  default:
752  FIXME("unimplemented run mode: %d\n", iRunMode);
753  r = TRUE;
754  }
755 
756  msiobj_release( &package->hdr );
757  return r;
758 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
MSIOBJECTHDR hdr
Definition: msipriv.h:393
#define TRUE
Definition: types.h:120
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
int msi_get_property_int(MSIDATABASE *package, LPCWSTR prop, int def) DECLSPEC_HIDDEN
Definition: package.c:2305
HANDLE log_file
Definition: msipriv.h:414
#define INVALID_HANDLE_VALUE
Definition: compat.h:590
DWORD WINAPI GetVersion(VOID)
Definition: version.c:22
#define L(x)
Definition: ntvdm.h:50
#define FALSE
Definition: types.h:117
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long MSIHANDLE
Definition: winemsi.idl:24
#define FIXME(fmt,...)
Definition: debug.h:111
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
unsigned char rollback_action_running
Definition: msipriv.h:468
#define __TRY
Definition: compat.h:80
unsigned char commit_action_running
Definition: msipriv.h:467
#define TRACE(s)
Definition: solgame.cpp:4
unsigned char need_reboot_now
Definition: msipriv.h:470
MSIDATABASE * db
Definition: msipriv.h:394
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
unsigned char scheduled_action_running
Definition: msipriv.h:466
unsigned char need_reboot_at_end
Definition: msipriv.h:469

Referenced by da_deferred(), da_immediate(), s_remote_GetMode(), and session_invoke().

◆ MsiGetPropertyA()

UINT WINAPI MsiGetPropertyA ( MSIHANDLE  ,
LPCSTR  ,
LPSTR  ,
LPDWORD   
)

◆ MsiGetPropertyW()

UINT WINAPI MsiGetPropertyW ( MSIHANDLE  ,
LPCWSTR  ,
LPWSTR  ,
LPDWORD   
)

◆ MsiGetSourcePathA()

UINT WINAPI MsiGetSourcePathA ( MSIHANDLE  ,
LPCSTR  ,
LPSTR  ,
LPDWORD   
)

◆ MsiGetSourcePathW()

UINT WINAPI MsiGetSourcePathW ( MSIHANDLE  ,
LPCWSTR  ,
LPWSTR  ,
LPDWORD   
)

◆ MsiGetSummaryInformationA()

UINT WINAPI MsiGetSummaryInformationA ( MSIHANDLE  ,
LPCSTR  ,
UINT  ,
MSIHANDLE  
)

◆ MsiGetSummaryInformationW()

UINT WINAPI MsiGetSummaryInformationW ( MSIHANDLE  ,
LPCWSTR  ,
UINT  ,
MSIHANDLE  
)

◆ MsiGetTargetPathA()

UINT WINAPI MsiGetTargetPathA ( MSIHANDLE  ,
LPCSTR  ,
LPSTR  ,
LPDWORD   
)

◆ MsiGetTargetPathW()

UINT WINAPI MsiGetTargetPathW ( MSIHANDLE  ,
LPCWSTR  ,
LPWSTR  ,
LPDWORD   
)

◆ MsiOpenDatabaseA()

UINT WINAPI MsiOpenDatabaseA ( LPCSTR  ,
LPCSTR  ,
MSIHANDLE  
)

Definition at line 317 of file database.c.

318 {
320  LPWSTR szwDBPath = NULL, szwPersist = NULL;
321 
322  TRACE("%s %s %p\n", debugstr_a(szDBPath), debugstr_a(szPersist), phDB);
323 
324  if( szDBPath )
325  {
326  szwDBPath = strdupAtoW( szDBPath );
327  if( !szwDBPath )
328  goto end;
329  }
330 
331  if( !IS_INTMSIDBOPEN(szPersist) )
332  {
333  szwPersist = strdupAtoW( szPersist );
334  if( !szwPersist )
335  goto end;
336  }
337  else
338  szwPersist = (LPWSTR)(DWORD_PTR)szPersist;
339 
340  r = MsiOpenDatabaseW( szwDBPath, szwPersist, phDB );
341 
342 end:
343  if( !IS_INTMSIDBOPEN(szPersist) )
344  msi_free( szwPersist );
345  msi_free( szwDBPath );
346 
347  return r;
348 }
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
static void msi_free(void *mem)
Definition: msipriv.h:1159
#define IS_INTMSIDBOPEN(x)
Definition: database.c:53
#define ERROR_FUNCTION_FAILED
Definition: winerror.h:985
#define TRACE(s)
Definition: solgame.cpp:4
#define debugstr_a
Definition: kernel32.h:31
LONG HRESULT
Definition: typedefs.h:79
GLuint GLuint end
Definition: gl.h:1545
uint32_t DWORD_PTR
Definition: typedefs.h:65
UINT WINAPI MsiOpenDatabaseW(LPCWSTR szDBPath, LPCWSTR szPersist, MSIHANDLE *phDB)
Definition: database.c:298
#define NULL
Definition: types.h:112
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65

Referenced by test_states().

◆ MsiOpenDatabaseW()

UINT WINAPI MsiOpenDatabaseW ( LPCWSTR  ,
LPCWSTR  ,
MSIHANDLE  
)

Definition at line 298 of file database.c.

299 {
300  MSIDATABASE *db;
301  UINT ret;
302 
303  TRACE("%s %s %p\n",debugstr_w(szDBPath),debugstr_w(szPersist), phDB);
304 
305  ret = MSI_OpenDatabaseW( szDBPath, szPersist, &db );
306  if( ret == ERROR_SUCCESS )
307  {
308  *phDB = alloc_msihandle( &db->hdr );
309  if (! *phDB)
311  msiobj_release( &db->hdr );
312  }
313 
314  return ret;
315 }
#define ERROR_SUCCESS
Definition: deptool.c:10
UINT MSI_OpenDatabaseW(LPCWSTR szDBPath, LPCWSTR szPersist, MSIDATABASE **pdb)
Definition: database.c:140
#define ERROR_NOT_ENOUGH_MEMORY
Definition: dderror.h:7
#define debugstr_w
Definition: kernel32.h:32
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
int ret
MSIHANDLE alloc_msihandle(MSIOBJECTHDR *obj)
Definition: handle.c:111
unsigned int UINT
Definition: ndis.h:50
MSIOBJECTHDR hdr
Definition: msipriv.h:108

Referenced by create_database(), create_database_wordcount(), create_db(), create_package_db(), generate_transform(), get_patch_product_codes(), helper_createpackage(), InstallerImpl_OpenDatabase(), MsiOpenDatabaseA(), MsiVerifyPackageW(), set_admin_summary_info(), set_suminfo(), test_access(), test_binary(), test_binary_import(), test_carriagereturn(), test_collation(), test_createtable(), test_customaction1(), test_dbmerge(), test_dbtopackage(), test_defaultdatabase(), test_deleterow(), test_droptable(), test_embedded_nulls(), test_fieldzero(), test_forcecodepage(), test_icon_table(), test_int_widths(), test_integers(), test_longstrings(), test_msibadqueries(), test_msidatabase(), test_msiexport(), test_MsiGetProductProperty(), test_MsiGetSourcePath(), test_msiimport(), test_msiinsert(), test_MsiOpenDatabase(), test_msipackage(), test_noquotes(), test_packagecoltypes(), test_quotes(), test_rows_order(), test_select_column_names(), test_shortlongsource(), test_simple_patch(), test_special_tables(), test_states(), test_storages_table(), test_streamtable(), test_stringtable(), test_suminfo(), test_suminfo_import(), test_summary_binary(), test_tables_order(), test_try_transform(), test_update(), test_viewfetch_wraparound(), test_viewmodify(), test_viewmodify_assign(), test_viewmodify_delete(), test_viewmodify_delete_temporary(), test_viewmodify_refresh(), test_viewmodify_update(), and test_where_viewmodify().

◆ MsiPreviewBillboardA()

UINT WINAPI MsiPreviewBillboardA ( MSIHANDLE  ,
LPCSTR  ,
LPCSTR   
)

◆ MsiPreviewBillboardW()

UINT WINAPI MsiPreviewBillboardW ( MSIHANDLE  ,
LPCWSTR  ,
LPCWSTR   
)

◆ MsiPreviewDialogA()

UINT WINAPI MsiPreviewDialogA ( MSIHANDLE  ,
LPCSTR   
)

Definition at line 4277 of file dialog.c.

4278 {
4279  UINT r;
4280  LPWSTR strW = NULL;
4281 
4282  TRACE( "%lu %s\n", hPreview, debugstr_a(szDialogName) );
4283 
4284  if (szDialogName)
4285  {
4286  strW = strdupAtoW( szDialogName );
4287  if (!strW)
4288  return ERROR_OUTOFMEMORY;
4289  }
4290  r = MsiPreviewDialogW( hPreview, strW );
4291  msi_free( strW );
4292  return r;
4293 }
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
static void msi_free(void *mem)
Definition: msipriv.h:1159
UINT WINAPI MsiPreviewDialogW(MSIHANDLE hPreview, LPCWSTR szDialogName)
Definition: dialog.c:4261
WCHAR strW[12]
Definition: clipboard.c:2029
#define TRACE(s)
Definition: solgame.cpp:4
#define debugstr_a
Definition: kernel32.h:31
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65
#define ERROR_OUTOFMEMORY
Definition: deptool.c:13

◆ MsiPreviewDialogW()

UINT WINAPI MsiPreviewDialogW ( MSIHANDLE  ,
LPCWSTR   
)

Definition at line 4261 of file dialog.c.

4262 {
4264  UINT r;
4265 
4266  TRACE( "%lu %s\n", hPreview, debugstr_w(szDialogName) );
4267 
4269  if (!preview)
4270  return ERROR_INVALID_HANDLE;
4271 
4272  r = MSI_PreviewDialogW( preview, szDialogName );
4273  msiobj_release( &preview->hdr );
4274  return r;
4275 }
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
#define debugstr_w
Definition: kernel32.h:32
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
static previewinfo preview
Definition: print.c:56
unsigned int UINT
Definition: ndis.h:50
#define MSIHANDLETYPE_PREVIEW
Definition: msipriv.h:727
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
static UINT MSI_PreviewDialogW(MSIPREVIEW *preview, LPCWSTR szDialogName)
Definition: dialog.c:4240

Referenced by MsiPreviewDialogA().

◆ MsiProcessMessage()

INT WINAPI MsiProcessMessage ( MSIHANDLE  ,
INSTALLMESSAGE  ,
MSIHANDLE   
)

Definition at line 2017 of file package.c.

2019 {
2021  MSIPACKAGE *package = NULL;
2022  MSIRECORD *record = NULL;
2023 
2024  if ((eMessageType & 0xff000000) == INSTALLMESSAGE_INITIALIZE ||
2025  (eMessageType & 0xff000000) == INSTALLMESSAGE_TERMINATE)
2026  return -1;
2027 
2028  if ((eMessageType & 0xff000000) == INSTALLMESSAGE_COMMONDATA &&
2029  MsiRecordGetInteger(hRecord, 1) != 2)
2030  return -1;
2031 
2033  if (!record)
2034  return ERROR_INVALID_HANDLE;
2035 
2036  package = msihandle2msiinfo( hInstall, MSIHANDLETYPE_PACKAGE );
2037  if( !package )
2038  {
2039  MSIHANDLE remote;
2040 
2041  if (!(remote = msi_get_remote(hInstall)))
2042  return ERROR_INVALID_HANDLE;
2043 
2044  __TRY
2045  {
2046  ret = remote_ProcessMessage(remote, eMessageType, (struct wire_record *)&record->count);
2047  }
2049  {
2050  ret = GetExceptionCode();
2051  }
2052  __ENDTRY
2053 
2054  msiobj_release(&record->hdr);
2055  return ret;
2056  }
2057 
2058  ret = MSI_ProcessMessage( package, eMessageType, record );
2059 
2060  msiobj_release( &record->hdr );
2061  msiobj_release( &package->hdr );
2062  return ret;
2063 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
int WINAPI MsiRecordGetInteger(MSIHANDLE handle, UINT iField)
Definition: record.c:237
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
unsigned long MSIHANDLE
Definition: winemsi.idl:24
INT MSI_ProcessMessage(MSIPACKAGE *package, INSTALLMESSAGE eMessageType, MSIRECORD *record)
Definition: package.c:1914
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define MSIHANDLETYPE_RECORD
Definition: msipriv.h:725
#define __TRY
Definition: compat.h:80
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
int ret
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
#define GetExceptionCode()
Definition: seh.h:27
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by ok_(), s_remote_ProcessMessage(), session_invoke(), test_externalui(), and test_externalui_message().

◆ MsiRecordClearData()

UINT WINAPI MsiRecordClearData ( MSIHANDLE  )

Definition at line 256 of file record.c.

257 {
258  MSIRECORD *rec;
259  UINT i;
260 
261  TRACE( "%lu\n", handle );
262 
264  if( !rec )
265  return ERROR_INVALID_HANDLE;
266 
267  msiobj_lock( &rec->hdr );
268  for( i=0; i<=rec->count; i++)
269  {
270  MSI_FreeField( &rec->fields[i] );
271  rec->fields[i].type = MSIFIELD_NULL;
272  rec->fields[i].u.iVal = 0;
273  }
274  msiobj_unlock( &rec->hdr );
275  msiobj_release( &rec->hdr );
276 
277  return ERROR_SUCCESS;
278 }
union tagMSIFIELD::@486 u
void msiobj_lock(MSIOBJECTHDR *info)
Definition: handle.c:231
#define ERROR_SUCCESS
Definition: deptool.c:10
MSIOBJECTHDR hdr
Definition: msipriv.h:151
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
void msiobj_unlock(MSIOBJECTHDR *info)
Definition: handle.c:236
#define MSIHANDLETYPE_RECORD
Definition: msipriv.h:725
UINT count
Definition: msipriv.h:152
#define TRACE(s)
Definition: solgame.cpp:4
static void MSI_FreeField(MSIFIELD *field)
Definition: record.c:49
#define MSIFIELD_NULL
Definition: record.c:44
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
INT iVal
Definition: msipriv.h:142
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
MSIFIELD fields[1]
Definition: msipriv.h:154
unsigned int UINT
Definition: ndis.h:50
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
UINT type
Definition: msipriv.h:139

Referenced by test_msirecord().

◆ MsiRecordDataSize()

UINT WINAPI MsiRecordDataSize ( MSIHANDLE  ,
UINT   
)

Definition at line 532 of file record.c.

533 {
534  MSIRECORD *rec;
535  UINT ret;
536 
537  TRACE( "%lu, %u\n", handle, iField );
538 
540  if( !rec )
541  return 0;
542  msiobj_lock( &rec->hdr );
543  ret = MSI_RecordDataSize( rec, iField);
544  msiobj_unlock( &rec->hdr );
545  msiobj_release( &rec->hdr );
546  return ret;
547 }
void msiobj_lock(MSIOBJECTHDR *info)
Definition: handle.c:231
MSIOBJECTHDR hdr
Definition: msipriv.h:151
static UINT MSI_RecordDataSize(MSIRECORD *rec, UINT iField)
Definition: record.c:511
void msiobj_unlock(MSIOBJECTHDR *info)
Definition: handle.c:236
#define MSIHANDLETYPE_RECORD
Definition: msipriv.h:725
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
int ret
unsigned int UINT
Definition: ndis.h:50
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by test_msirecord().

◆ MsiRecordGetFieldCount()

UINT WINAPI MsiRecordGetFieldCount ( MSIHANDLE  )

Definition at line 113 of file record.c.

114 {
115  MSIRECORD *rec;
116  UINT ret;
117 
118  TRACE( "%lu\n", handle );
119 
121  if( !rec )
122  return -1;
123 
124  msiobj_lock( &rec->hdr );
125  ret = MSI_RecordGetFieldCount( rec );
126  msiobj_unlock( &rec->hdr );
127  msiobj_release( &rec->hdr );
128 
129  return ret;
130 }
UINT MSI_RecordGetFieldCount(const MSIRECORD *rec)
Definition: record.c:108
void msiobj_lock(MSIOBJECTHDR *info)
Definition: handle.c:231
MSIOBJECTHDR hdr
Definition: msipriv.h:151
void msiobj_unlock(MSIOBJECTHDR *info)
Definition: handle.c:236
#define MSIHANDLETYPE_RECORD
Definition: msipriv.h:725
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
int ret
unsigned int UINT
Definition: ndis.h:50
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by check_record_(), externalui_message_callback(), externalui_record_callback(), record_invoke(), test_db(), test_integers(), test_msiinsert(), test_msirecord(), and test_packagecoltypes().

◆ MsiRecordGetInteger()

int WINAPI MsiRecordGetInteger ( MSIHANDLE  ,
UINT   
)

Definition at line 237 of file record.c.

238 {
239  MSIRECORD *rec;
240  UINT ret;
241 
242  TRACE( "%lu, %u\n", handle, iField );
243 
245  if( !rec )
246  return MSI_NULL_INTEGER;
247 
248  msiobj_lock( &rec->hdr );
249  ret = MSI_RecordGetInteger( rec, iField );
250  msiobj_unlock( &rec->hdr );
251  msiobj_release( &rec->hdr );
252 
253  return ret;
254 }
void msiobj_lock(MSIOBJECTHDR *info)
Definition: handle.c:231
int MSI_RecordGetInteger(MSIRECORD *rec, UINT iField)
Definition: record.c:213
MSIOBJECTHDR hdr
Definition: msipriv.h:151
#define MSI_NULL_INTEGER
Definition: msiquery.h:32
void msiobj_unlock(MSIOBJECTHDR *info)
Definition: handle.c:236
#define MSIHANDLETYPE_RECORD
Definition: msipriv.h:725
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
int ret
unsigned int UINT
Definition: ndis.h:50
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by externalui_record_callback(), get_columns_table_type(), get_integer(), MsiProcessMessage(), ok_callback(), record_invoke(), test_db(), test_dbmerge(), test_fieldzero(), test_insertorder(), test_integers(), test_msiinsert(), test_msirecord(), test_MsiRecordGetInteger(), test_order(), test_select_with_tablenames(), test_update(), test_viewfetch_wraparound(), test_viewmodify_delete_temporary(), test_viewmodify_update(), and test_where_viewmodify().

◆ MsiRecordGetStringA()

UINT WINAPI MsiRecordGetStringA ( MSIHANDLE  ,
UINT  ,
LPSTR  ,
LPDWORD   
)

◆ MsiRecordGetStringW()

UINT WINAPI MsiRecordGetStringW ( MSIHANDLE  ,
UINT  ,
LPWSTR  ,
LPDWORD   
)

◆ MsiRecordIsNull()

BOOL WINAPI MsiRecordIsNull ( MSIHANDLE  ,
UINT   
)

Definition at line 333 of file record.c.

334 {
335  MSIRECORD *rec;
336  UINT ret;
337 
338  TRACE( "%lu, %u\n", handle, iField );
339 
341  if( !rec )
342  return FALSE;
343  msiobj_lock( &rec->hdr );
344  ret = MSI_RecordIsNull( rec, iField );
345  msiobj_unlock( &rec->hdr );
346  msiobj_release( &rec->hdr );
347  return ret;
348 
349 }
void msiobj_lock(MSIOBJECTHDR *info)
Definition: handle.c:231
MSIOBJECTHDR hdr
Definition: msipriv.h:151
void msiobj_unlock(MSIOBJECTHDR *info)
Definition: handle.c:236
#define FALSE
Definition: types.h:117
#define MSIHANDLETYPE_RECORD
Definition: msipriv.h:725
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
int ret
BOOL MSI_RecordIsNull(MSIRECORD *rec, UINT iField)
Definition: record.c:321
unsigned int UINT
Definition: ndis.h:50
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by test_fieldzero(), test_msiinsert(), and test_msirecord().

◆ MsiRecordReadStream()

UINT WINAPI MsiRecordReadStream ( MSIHANDLE  ,
UINT  ,
char ,
LPDWORD   
)

◆ MsiRecordSetInteger()

UINT WINAPI MsiRecordSetInteger ( MSIHANDLE  ,
UINT  ,
int   
)

Definition at line 303 of file record.c.

304 {
305  MSIRECORD *rec;
306  UINT ret;
307 
308  TRACE( "%lu, %u, %d\n", handle, iField, iVal );
309 
311  if( !rec )
312  return ERROR_INVALID_HANDLE;
313 
314  msiobj_lock( &rec->hdr );
315  ret = MSI_RecordSetInteger( rec, iField, iVal );
316  msiobj_unlock( &rec->hdr );
317  msiobj_release( &rec->hdr );
318  return ret;
319 }
void msiobj_lock(MSIOBJECTHDR *info)
Definition: handle.c:231
MSIOBJECTHDR hdr
Definition: msipriv.h:151
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
void msiobj_unlock(MSIOBJECTHDR *info)
Definition: handle.c:236
#define MSIHANDLETYPE_RECORD
Definition: msipriv.h:725
UINT MSI_RecordSetInteger(MSIRECORD *rec, UINT iField, int iVal)
Definition: record.c:280
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
int ret
unsigned int UINT
Definition: ndis.h:50
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by generate_transform(), ok_(), record_invoke(), test_db(), test_externalui(), test_externalui_message(), test_fieldzero(), test_format_record(), test_formatrecord(), test_markers(), test_msiinsert(), test_msirecord(), test_MsiRecordGetString(), test_select_markers(), test_stringtable(), test_try_transform(), test_update(), test_view_get_error(), test_viewmodify(), test_viewmodify_assign(), test_viewmodify_delete(), test_viewmodify_delete_temporary(), test_viewmodify_insert(), test_viewmodify_merge(), test_viewmodify_refresh(), test_viewmodify_update(), and test_where_viewmodify().

◆ MsiRecordSetStreamA()

UINT WINAPI MsiRecordSetStreamA ( MSIHANDLE  ,
UINT  ,
LPCSTR   
)

◆ MsiRecordSetStreamW()

UINT WINAPI MsiRecordSetStreamW ( MSIHANDLE  ,
UINT  ,
LPCWSTR   
)

◆ MsiRecordSetStringA()

UINT WINAPI MsiRecordSetStringA ( MSIHANDLE  ,
UINT  ,
LPCSTR   
)

◆ MsiRecordSetStringW()

UINT WINAPI MsiRecordSetStringW ( MSIHANDLE  ,
UINT  ,
LPCWSTR   
)

◆ MsiSequenceA()

UINT WINAPI MsiSequenceA ( MSIHANDLE  ,
LPCSTR  ,
INT   
)

Definition at line 104 of file install.c.

105 {
106  LPWSTR szwTable;
107  UINT ret;
108 
109  TRACE("%s, %d\n", debugstr_a(szTable), iSequenceMode);
110 
111  szwTable = strdupAtoW(szTable);
112  if (szTable && !szwTable)
113  return ERROR_FUNCTION_FAILED;
114 
115  ret = MsiSequenceW( hInstall, szwTable, iSequenceMode );
116  msi_free( szwTable );
117  return ret;
118 }
static void msi_free(void *mem)
Definition: msipriv.h:1159
#define ERROR_FUNCTION_FAILED
Definition: winerror.h:985
#define TRACE(s)
Definition: solgame.cpp:4
#define debugstr_a
Definition: kernel32.h:31
int ret
UINT WINAPI MsiSequenceW(MSIHANDLE hInstall, LPCWSTR szTable, INT iSequenceMode)
Definition: install.c:123
unsigned int UINT
Definition: ndis.h:50
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65

Referenced by test_doaction().

◆ MsiSequenceW()

UINT WINAPI MsiSequenceW ( MSIHANDLE  ,
LPCWSTR  ,
INT   
)

Definition at line 123 of file install.c.

124 {
125  MSIPACKAGE *package;
126  UINT ret;
127 
128  TRACE("%s, %d\n", debugstr_w(szTable), iSequenceMode);
129 
130  if (!szTable)
132 
133  package = msihandle2msiinfo( hInstall, MSIHANDLETYPE_PACKAGE );
134  if (!package)
135  {
136  MSIHANDLE remote;
137 
138  if (!(remote = msi_get_remote(hInstall)))
139  return ERROR_INVALID_HANDLE;
140 
141  __TRY
142  {
143  ret = remote_Sequence(remote, szTable, iSequenceMode);
144  }
146  {
147  ret = GetExceptionCode();
148  }
149  __ENDTRY
150 
151  return ret;
152  }
153  ret = MSI_Sequence( package, szTable );
154  msiobj_release( &package->hdr );
155  return ret;
156 }
#define __EXCEPT(func)
Definition: exception.h:84
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
MSIOBJECTHDR hdr
Definition: msipriv.h:393
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
UINT MSI_Sequence(MSIPACKAGE *package, LPCWSTR table)
Definition: action.c:452
unsigned long MSIHANDLE
Definition: winemsi.idl:24
#define debugstr_w
Definition: kernel32.h:32
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
int ret
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27

Referenced by MsiSequenceA(), and s_remote_Sequence().

◆ MsiSetComponentStateA()

UINT WINAPI MsiSetComponentStateA ( MSIHANDLE  ,
LPCSTR  ,
INSTALLSTATE   
)

Definition at line 1380 of file install.c.

1382 {
1383  UINT rc;
1384  LPWSTR szwComponent = strdupAtoW(szComponent);
1385 
1386  rc = MsiSetComponentStateW(hInstall, szwComponent, iState);
1387 
1388  msi_free(szwComponent);
1389 
1390  return rc;
1391 }
static void msi_free(void *mem)
Definition: msipriv.h:1159
UINT WINAPI MsiSetComponentStateW(MSIHANDLE hInstall, LPCWSTR szComponent, INSTALLSTATE iState)
Definition: install.c:1463
unsigned int UINT
Definition: ndis.h:50
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65

Referenced by test_feature_states(), test_formatrecord_tables(), test_MsiSetComponentState(), and test_removefiles().

◆ MsiSetComponentStateW()

UINT WINAPI MsiSetComponentStateW ( MSIHANDLE  ,
LPCWSTR  ,
INSTALLSTATE   
)

Definition at line 1463 of file install.c.

1465 {
1466  MSIPACKAGE* package;
1467  UINT ret;
1468 
1469  if (!szComponent)
1470  return ERROR_UNKNOWN_COMPONENT;
1471 
1472  package = msihandle2msiinfo(hInstall, MSIHANDLETYPE_PACKAGE);
1473  if (!package)
1474  {
1475  MSIHANDLE remote;
1476 
1477  if (!(remote = msi_get_remote(hInstall)))
1478  return ERROR_INVALID_HANDLE;
1479 
1480  __TRY
1481  {
1482  ret = remote_SetComponentState(remote, szComponent, iState);
1483  }
1485  {
1486  ret = GetExceptionCode();
1487  }
1488  __ENDTRY
1489 
1490  return ret;
1491  }
1492 
1493  ret = MSI_SetComponentStateW(package, szComponent, iState);
1494  msiobj_release(&package->hdr);
1495  return ret;
1496 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
static UINT MSI_SetComponentStateW(MSIPACKAGE *package, LPCWSTR szComponent, INSTALLSTATE iState)
Definition: install.c:1411
MSIOBJECTHDR hdr
Definition: msipriv.h:393
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
int ret
#define ERROR_UNKNOWN_COMPONENT
Definition: winerror.h:965
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27

Referenced by MsiSetComponentStateA(), and s_remote_SetComponentState().

◆ MsiSetFeatureAttributesA()

UINT WINAPI MsiSetFeatureAttributesA ( MSIHANDLE  ,
LPCSTR  ,
DWORD   
)

Definition at line 988 of file install.c.

989 {
990  UINT r;
991  WCHAR *featureW = NULL;
992 
993  TRACE( "%lu, %s, %#lx\n", handle, debugstr_a(feature), attrs );
994 
995  if (feature && !(featureW = strdupAtoW( feature ))) return ERROR_OUTOFMEMORY;
996 
997  r = MsiSetFeatureAttributesW( handle, featureW, attrs );
998  msi_free( featureW );
999  return r;
1000 }
INTERNETFEATURELIST feature
Definition: misc.c:1719
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
UINT WINAPI MsiSetFeatureAttributesW(MSIHANDLE handle, LPCWSTR name, DWORD attrs)
Definition: install.c:1018
static void msi_free(void *mem)
Definition: msipriv.h:1159
#define TRACE(s)
Definition: solgame.cpp:4
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define debugstr_a
Definition: kernel32.h:31
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65
#define ERROR_OUTOFMEMORY
Definition: deptool.c:13

Referenced by test_MsiSetFeatureAttributes().

◆ MsiSetFeatureAttributesW()

UINT WINAPI MsiSetFeatureAttributesW ( MSIHANDLE  ,
LPCWSTR  ,
DWORD   
)

Definition at line 1018 of file install.c.

1019 {
1020  MSIPACKAGE *package;
1022  WCHAR *costing;
1023 
1024  TRACE( "%lu, %s, %#lx\n", handle, debugstr_w(name), attrs );
1025 
1026  if (!name || !name[0]) return ERROR_UNKNOWN_FEATURE;
1027 
1028  if (!(package = msihandle2msiinfo( handle, MSIHANDLETYPE_PACKAGE )))
1029  return ERROR_INVALID_HANDLE;
1030 
1031  costing = msi_dup_property( package->db, L"CostingComplete" );
1032  if (!costing || !wcscmp( costing, L"1" ))
1033  {
1034  msi_free( costing );
1035  msiobj_release( &package->hdr );
1036  return ERROR_FUNCTION_FAILED;
1037  }
1038  msi_free( costing );
1039  if (!(feature = msi_get_loaded_feature( package, name )))
1040  {
1041  msiobj_release( &package->hdr );
1042  return ERROR_UNKNOWN_FEATURE;
1043  }
1044  feature->Attributes = unmap_feature_attributes( attrs );
1045  msiobj_release( &package->hdr );
1046  return ERROR_SUCCESS;
1047 }
static DWORD unmap_feature_attributes(DWORD attrs)
Definition: install.c:1002
INTERNETFEATURELIST feature
Definition: misc.c:1719
MSIFEATURE * msi_get_loaded_feature(MSIPACKAGE *package, const WCHAR *Feature)
Definition: action.c:563
#define ERROR_SUCCESS
Definition: deptool.c:10
MSIOBJECTHDR hdr
Definition: msipriv.h:393
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
static void msi_free(void *mem)
Definition: msipriv.h:1159
#define L(x)
Definition: ntvdm.h:50
#define ERROR_FUNCTION_FAILED
Definition: winerror.h:985
#define debugstr_w
Definition: kernel32.h:32
#define TRACE(s)
Definition: solgame.cpp:4
#define ERROR_UNKNOWN_FEATURE
Definition: winerror.h:964
__wchar_t WCHAR
Definition: xmlstorage.h:180
MSIDATABASE * db
Definition: msipriv.h:394
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define MSIHANDLETYPE_PACKAGE
Definition: msipriv.h:726
_Check_return_ _CRTIMP int __cdecl wcscmp(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)
Definition: name.c:38
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
LPWSTR msi_dup_property(MSIDATABASE *db, LPCWSTR prop) DECLSPEC_HIDDEN
Definition: package.c:2283

Referenced by MsiSetFeatureAttributesA().

◆ MsiSetFeatureStateA()

UINT WINAPI MsiSetFeatureStateA ( MSIHANDLE  ,
LPCSTR  ,
INSTALLSTATE   
)

Definition at line 817 of file install.c.

819 {
820  LPWSTR szwFeature = NULL;
821  UINT rc;
822 
823  szwFeature = strdupAtoW(szFeature);
824 
825  rc = MsiSetFeatureStateW(hInstall,szwFeature, iState);
826 
827  msi_free(szwFeature);
828 
829  return rc;
830 }
static void msi_free(void *mem)
Definition: msipriv.h:1159
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
UINT WINAPI MsiSetFeatureStateW(MSIHANDLE hInstall, LPCWSTR szFeature, INSTALLSTATE iState)
Definition: install.c:947
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65

Referenced by test_feature_states(), and test_featureparents().

◆ MsiSetFeatureStateW()

UINT WINAPI MsiSetFeatureStateW ( MSIHANDLE  ,
LPCWSTR  ,
INSTALLSTATE   
)

Definition at line 947 of file install.c.

949 {
950  MSIPACKAGE* package;
951  UINT rc = ERROR_SUCCESS;
952 
953  TRACE("%s %i\n",debugstr_w(szFeature), iState);
954 
955  if (!szFeature)
956  return ERROR_UNKNOWN_FEATURE;
957 
958  package = msihandle2msiinfo(hInstall, MSIHANDLETYPE_PACKAGE);
959  if (!package)
960  {
961  MSIHANDLE remote;
962 
963  if (!(remote = msi_get_remote(hInstall)))
964  return ERROR_INVALID_HANDLE;
965 
966  __TRY
967  {
968  rc = remote_SetFeatureState(remote, szFeature, iState);
969  }
971  {
972  rc = GetExceptionCode();
973  }
974  __ENDTRY
975 
976  return rc;
977  }
978 
979  rc = MSI_SetFeatureStateW(package,szFeature,iState);
980 
981  msiobj_release( &package->hdr );
982  return rc;
983 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
#define ERROR_SUCCESS
Definition: deptool.c:10
MSIOBJECTHDR hdr
Definition: msipriv.h:393
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
unsigned long MSIHANDLE
Definition: winemsi.idl:24
#define debugstr_w
Definition: kernel32.h:32
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
#define ERROR_UNKNOWN_FEATURE
Definition: winerror.h:964
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
UINT MSI_SetFeatureStateW(MSIPACKAGE *package, LPCWSTR szFeature, INSTALLSTATE iState)
Definition: install.c:915
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27

Referenced by MsiSetFeatureStateA(), s_remote_SetFeatureState(), and session_invoke().

◆ MsiSetInstallLevel()

UINT WINAPI MsiSetInstallLevel ( MSIHANDLE  ,
int   
)

Definition at line 1597 of file install.c.

1598 {
1599  MSIPACKAGE* package;
1600  UINT r;
1601 
1602  TRACE( "%lu %d\n", hInstall, iInstallLevel );
1603 
1604  package = msihandle2msiinfo(hInstall, MSIHANDLETYPE_PACKAGE);
1605  if (!package)
1606  {
1607  MSIHANDLE remote;
1608 
1609  if (!(remote = msi_get_remote(hInstall)))
1610  return ERROR_INVALID_HANDLE;
1611 
1612  __TRY
1613  {
1614  r = remote_SetInstallLevel(remote, iInstallLevel);
1615  }
1617  {
1618  r = GetExceptionCode();
1619  }
1620  __ENDTRY
1621 
1622  return r;
1623  }
1624 
1625  r = MSI_SetInstallLevel( package, iInstallLevel );
1626 
1627  msiobj_release( &package->hdr );
1628 
1629  return r;
1630 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
MSIOBJECTHDR hdr
Definition: msipriv.h:393
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
UINT MSI_SetInstallLevel(MSIPACKAGE *package, int iInstallLevel)
Definition: install.c:1572
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27

Referenced by s_remote_SetInstallLevel(), session_invoke(), and test_misc().

◆ MsiSetMode()

UINT WINAPI MsiSetMode ( MSIHANDLE  ,
MSIRUNMODE  ,
BOOL   
)

Definition at line 763 of file install.c.

764 {
765  MSIPACKAGE *package;
766  UINT r;
767 
768  TRACE( "%lu, %d, %d\n", hInstall, iRunMode, fState );
769 
770  package = msihandle2msiinfo( hInstall, MSIHANDLETYPE_PACKAGE );
771  if (!package)
772  {
773  MSIHANDLE remote;
774 
775  if (!(remote = msi_get_remote(hInstall)))
776  return FALSE;
777 
778  __TRY
779  {
780  r = remote_SetMode(remote, iRunMode, fState);
781  }
783  {
784  r = GetExceptionCode();
785  }
786  __ENDTRY
787 
788  return r;
789  }
790 
791  switch (iRunMode)
792  {
794  package->need_reboot_at_end = (fState != 0);
795  r = ERROR_SUCCESS;
796  break;
797 
799  package->need_reboot_now = (fState != 0);
800  r = ERROR_SUCCESS;
801  break;
802 
803  default:
805  }
806 
807  msiobj_release( &package->hdr );
808  return r;
809 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
#define ERROR_SUCCESS
Definition: deptool.c:10
MSIOBJECTHDR hdr
Definition: msipriv.h:393
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
#define FALSE
Definition: types.h:117
#define ERROR_ACCESS_DENIED
Definition: compat.h:97
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
unsigned char need_reboot_now
Definition: msipriv.h:470
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27
unsigned char need_reboot_at_end
Definition: msipriv.h:469

Referenced by s_remote_SetMode(), session_invoke(), and test_misc().

◆ MsiSetPropertyA()

UINT WINAPI MsiSetPropertyA ( MSIHANDLE  ,
LPCSTR  ,
LPCSTR   
)

Definition at line 2067 of file package.c.

2068 {
2069  LPWSTR szwName = NULL, szwValue = NULL;
2071 
2072  szwName = strdupAtoW( szName );
2073  if( szName && !szwName )
2074  goto end;
2075 
2076  szwValue = strdupAtoW( szValue );
2077  if( szValue && !szwValue )
2078  goto end;
2079 
2080  r = MsiSetPropertyW( hInstall, szwName, szwValue);
2081 
2082 end:
2083  msi_free( szwName );
2084  msi_free( szwValue );
2085 
2086  return r;
2087 }
static const WCHAR szName[]
Definition: powrprof.c:45
UINT WINAPI MsiSetPropertyW(MSIHANDLE hInstall, LPCWSTR szName, LPCWSTR szValue)
Definition: package.c:2149
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
static void msi_free(void *mem)
Definition: msipriv.h:1159
GLuint GLuint end
Definition: gl.h:1545
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65
#define ERROR_OUTOFMEMORY
Definition: deptool.c:13

Referenced by nested(), test_appsearch_complocator(), test_condition(), test_format_record(), test_formatrecord2(), test_formatrecord_tables(), test_launchconditions(), test_misc(), test_MsiDatabaseCommit(), test_MsiGetProductProperty(), test_MsiGetSourcePath(), test_MsiSetProperty(), test_property_table(), test_props(), test_removefiles(), and test_top_level_action().

◆ MsiSetPropertyW()

UINT WINAPI MsiSetPropertyW ( MSIHANDLE  ,
LPCWSTR  ,
LPCWSTR   
)

Definition at line 2149 of file package.c.

2150 {
2151  MSIPACKAGE *package;
2152  UINT ret;
2153 
2154  package = msihandle2msiinfo( hInstall, MSIHANDLETYPE_PACKAGE);
2155  if( !package )
2156  {
2157  MSIHANDLE remote;
2158 
2159  if (!(remote = msi_get_remote(hInstall)))
2160  return ERROR_INVALID_HANDLE;
2161 
2162  __TRY
2163  {
2164  ret = remote_SetProperty(remote, szName, szValue);
2165  }
2167  {
2168  ret = GetExceptionCode();
2169  }
2170  __ENDTRY
2171 
2172  return ret;
2173  }
2174 
2175  ret = msi_set_property( package->db, szName, szValue, -1 );
2176  if (ret == ERROR_SUCCESS && !wcscmp( szName, L"SourceDir" ))
2177  msi_reset_source_folders( package );
2178 
2179  msiobj_release( &package->hdr );
2180  return ret;
2181 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
static const WCHAR szName[]
Definition: powrprof.c:45
#define ERROR_SUCCESS
Definition: deptool.c:10
MSIOBJECTHDR hdr
Definition: msipriv.h:393
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
void msi_reset_source_folders(MSIPACKAGE *package)
Definition: package.c:2089
#define L(x)
Definition: ntvdm.h:50
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
MSIDATABASE * db
Definition: msipriv.h:394
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
int ret
_Check_return_ _CRTIMP int __cdecl wcscmp(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)
UINT msi_set_property(MSIDATABASE *db, const WCHAR *name, const WCHAR *value, int len)
Definition: package.c:2100
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27

Referenced by MsiSetPropertyA(), s_remote_SetProperty(), and session_invoke().

◆ MsiSetTargetPathA()

UINT WINAPI MsiSetTargetPathA ( MSIHANDLE  ,
LPCSTR  ,
LPCSTR   
)

Definition at line 519 of file install.c.

521 {
522  LPWSTR szwFolder = NULL, szwFolderPath = NULL;
523  UINT rc = ERROR_OUTOFMEMORY;
524 
525  if ( !szFolder || !szFolderPath )
527 
528  szwFolder = strdupAtoW(szFolder);
529  szwFolderPath = strdupAtoW(szFolderPath);
530  if (!szwFolder || !szwFolderPath)
531  goto end;
532 
533  rc = MsiSetTargetPathW( hInstall, szwFolder, szwFolderPath );
534 
535 end:
536  msi_free(szwFolder);
537  msi_free(szwFolderPath);
538 
539  return rc;
540 }
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
static void msi_free(void *mem)
Definition: msipriv.h:1159
UINT WINAPI MsiSetTargetPathW(MSIHANDLE hInstall, LPCWSTR szFolder, LPCWSTR szFolderPath)
Definition: install.c:600
GLuint GLuint end
Definition: gl.h:1545
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
WCHAR * LPWSTR
Definition: xmlstorage.h:184
static WCHAR * strdupAtoW(const char *str)
Definition: main.c:65
#define ERROR_OUTOFMEMORY
Definition: deptool.c:13

Referenced by test_settargetpath(), and test_targetpath().

◆ MsiSetTargetPathW()

UINT WINAPI MsiSetTargetPathW ( MSIHANDLE  ,
LPCWSTR  ,
LPCWSTR   
)

Definition at line 600 of file install.c.

602 {
603  MSIPACKAGE *package;
604  UINT ret;
605 
606  TRACE("%s %s\n",debugstr_w(szFolder),debugstr_w(szFolderPath));
607 
608  if ( !szFolder || !szFolderPath )
610 
611  package = msihandle2msiinfo(hInstall, MSIHANDLETYPE_PACKAGE);
612  if (!package)
613  {
614  MSIHANDLE remote;
615 
616  if (!(remote = msi_get_remote(hInstall)))
617  return ERROR_INVALID_HANDLE;
618 
619  __TRY
620  {
621  ret = remote_SetTargetPath(remote, szFolder, szFolderPath);
622  }
624  {
625  ret = GetExceptionCode();
626  }
627  __ENDTRY
628 
629  return ret;
630  }
631 
632  ret = MSI_SetTargetPathW( package, szFolder, szFolderPath );
633  msiobj_release( &package->hdr );
634  return ret;
635 }
#define __EXCEPT(func)
Definition: exception.h:84
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
MSIOBJECTHDR hdr
Definition: msipriv.h:393
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
unsigned long MSIHANDLE
Definition: winemsi.idl:24
#define debugstr_w
Definition: kernel32.h:32
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
UINT MSI_SetTargetPathW(MSIPACKAGE *package, LPCWSTR szFolder, LPCWSTR szFolderPath)
Definition: install.c:564
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
int ret
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27

Referenced by MsiSetTargetPathA(), and s_remote_SetTargetPath().

◆ MsiSummaryInfoGetPropertyA()

UINT WINAPI MsiSummaryInfoGetPropertyA ( MSIHANDLE  ,
UINT  ,
PUINT  ,
LPINT  ,
FILETIME ,
LPSTR  ,
LPDWORD   
)

◆ MsiSummaryInfoGetPropertyCount()

UINT WINAPI MsiSummaryInfoGetPropertyCount ( MSIHANDLE  ,
PUINT   
)

Definition at line 606 of file suminfo.c.

607 {
608  MSISUMMARYINFO *si;
609 
610  TRACE( "%lu, %p\n", hSummaryInfo, pCount );
611 
612  si = msihandle2msiinfo( hSummaryInfo, MSIHANDLETYPE_SUMMARYINFO );
613  if( !si )
614  {
615  MSIHANDLE remote;
616  UINT ret;
617 
618  if (!(remote = msi_get_remote( hSummaryInfo )))
619  return ERROR_INVALID_HANDLE;
620 
621  __TRY
622  {
623  ret = remote_SummaryInfoGetPropertyCount( remote, pCount );
624  }
626  {
627  ret = GetExceptionCode();
628  }
629  __ENDTRY
630 
631  return ret;
632  }
633 
634  if( pCount )
635  *pCount = get_property_count( si->property );
636  msiobj_release( &si->hdr );
637 
638  return ERROR_SUCCESS;
639 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
#define ERROR_SUCCESS
Definition: deptool.c:10
static UINT get_property_count(const PROPVARIANT *property)
Definition: suminfo.c:153
#define MSIHANDLETYPE_SUMMARYINFO
Definition: msipriv.h:723
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
MSIOBJECTHDR hdr
Definition: msipriv.h:486
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define __ENDTRY
Definition: compat.h:82
int ret
PROPVARIANT property[MSI_MAX_PROPS]
Definition: msipriv.h:489
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by s_remote_SummaryInfoGetPropertyCount(), summaryinfo_invoke(), test_db(), test_suminfo(), test_suminfo_import(), and test_summary_binary().

◆ MsiSummaryInfoGetPropertyW()

UINT WINAPI MsiSummaryInfoGetPropertyW ( MSIHANDLE  ,
UINT  ,
PUINT  ,
LPINT  ,
FILETIME ,
LPWSTR  ,
LPDWORD   
)

◆ MsiSummaryInfoPersist()

UINT WINAPI MsiSummaryInfoPersist ( MSIHANDLE  )

Definition at line 1222 of file suminfo.c.

1223 {
1224  MSISUMMARYINFO *si;
1225  UINT ret;
1226 
1227  TRACE( "%lu\n", handle );
1228 
1230  if( !si )
1231  return ERROR_INVALID_HANDLE;
1232 
1233  ret = suminfo_persist( si );
1234 
1235  msiobj_release( &si->hdr );
1236  return ret;
1237 }
#define MSIHANDLETYPE_SUMMARYINFO
Definition: msipriv.h:723
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
static UINT suminfo_persist(MSISUMMARYINFO *si)
Definition: suminfo.c:967
#define TRACE(s)
Definition: solgame.cpp:4
MSIOBJECTHDR hdr
Definition: msipriv.h:486
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
int ret
unsigned int UINT
Definition: ndis.h:50
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by helper_createpackage(), set_admin_summary_info(), set_suminfo(), set_suminfo_prop(), set_summary_dword(), set_summary_info(), set_summary_str(), set_transform_summary_info(), test_streamtable(), test_suminfo(), test_summary_binary(), and write_msi_summary_info().

◆ MsiSummaryInfoSetPropertyA()

UINT WINAPI MsiSummaryInfoSetPropertyA ( MSIHANDLE  ,
UINT  ,
UINT  ,
INT  ,
FILETIME ,
LPCSTR   
)

◆ MsiSummaryInfoSetPropertyW()

UINT WINAPI MsiSummaryInfoSetPropertyW ( MSIHANDLE  ,
UINT  ,
UINT  ,
INT  ,
FILETIME ,
LPCWSTR   
)

◆ MsiViewClose()

UINT WINAPI MsiViewClose ( MSIHANDLE  )

Definition at line 469 of file msiquery.c.

470 {
471  MSIQUERY *query;
472  UINT ret;
473 
474  TRACE( "%lu\n", hView );
475 
477  if (!query)
478  {
479  MSIHANDLE remote;
480 
481  if (!(remote = msi_get_remote(hView)))
482  return ERROR_INVALID_HANDLE;
483 
484  __TRY
485  {
486  ret = remote_ViewClose(remote);
487  }
489  {
490  ret = GetExceptionCode();
491  }
492  __ENDTRY
493 
494  return ret;
495  }
496 
497  ret = MSI_ViewClose( query );
498  msiobj_release( &query->hdr );
499  return ret;
500 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define MSIHANDLETYPE_VIEW
Definition: msipriv.h:724
#define __ENDTRY
Definition: compat.h:82
int ret
unsigned int UINT
Definition: ndis.h:50
#define GetExceptionCode()
Definition: seh.h:27
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
GLenum query
Definition: glext.h:7781
UINT MSI_ViewClose(MSIQUERY *query)
Definition: msiquery.c:454

Referenced by do_query(), find_entry(), find_entryW(), find_prop_in_property(), get_column_info(), get_columns_table_type(), get_integer(), get_string(), run_query(), run_queryW(), s_remote_ViewClose(), test_carriagereturn(), test_collation(), test_columnorder(), test_createtable(), test_db(), test_dbmerge(), test_deleterow(), test_droptable(), test_emptypackage(), test_fieldzero(), test_getcolinfo(), test_handle_limit(), test_insertorder(), test_integers(), test_join(), test_longstrings(), test_msiexport(), test_msiimport(), test_msiinsert(), test_noquotes(), test_order(), test_quotes(), test_rows_order(), test_select_column_names(), test_select_markers(), test_select_with_tablenames(), test_simple_patch(), test_storages_table(), test_streamtable(), test_stringtable(), test_system_tables(), test_tables_order(), test_temporary_table(), test_try_transform(), test_update(), test_viewfetch_wraparound(), test_viewmodify(), test_viewmodify_assign(), test_viewmodify_delete(), test_viewmodify_delete_temporary(), test_viewmodify_refresh(), test_viewmodify_update(), test_where(), test_where_not_in_selected(), test_where_viewmodify(), try_query_param(), and view_invoke().

◆ MsiViewExecute()

UINT WINAPI MsiViewExecute ( MSIHANDLE  ,
MSIHANDLE   
)

Definition at line 518 of file msiquery.c.

519 {
520  MSIQUERY *query;
521  MSIRECORD *rec = NULL;
522  UINT ret;
523 
524  TRACE( "%lu, %lu\n", hView, hRec );
525 
526  if( hRec )
527  {
529  if( !rec )
530  return ERROR_INVALID_HANDLE;
531  }
532 
534  if( !query )
535  {
536  MSIHANDLE remote;
537 
538  if (!(remote = msi_get_remote(hView)))
539  return ERROR_INVALID_HANDLE;
540 
541  __TRY
542  {
543  ret = remote_ViewExecute(remote, rec ? (struct wire_record *)&rec->count : NULL);
544  }
546  {
547  ret = GetExceptionCode();
548  }
549  __ENDTRY
550 
551  if (rec)
552  msiobj_release(&rec->hdr);
553  return ret;
554  }
555 
556  msiobj_lock( &rec->hdr );
557  ret = MSI_ViewExecute( query, rec );
558  msiobj_unlock( &rec->hdr );
559 
560  msiobj_release( &query->hdr );
561  if( rec )
562  msiobj_release( &rec->hdr );
563 
564  return ret;
565 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
void msiobj_lock(MSIOBJECTHDR *info)
Definition: handle.c:231
MSIOBJECTHDR hdr
Definition: msipriv.h:151
UINT MSI_ViewExecute(MSIQUERY *query, MSIRECORD *rec)
Definition: msiquery.c:502
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
void msiobj_unlock(MSIOBJECTHDR *info)
Definition: handle.c:236
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
#define MSIHANDLETYPE_RECORD
Definition: msipriv.h:725
UINT count
Definition: msipriv.h:152
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define MSIHANDLETYPE_VIEW
Definition: msipriv.h:724
#define __ENDTRY
Definition: compat.h:82
int ret
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
#define GetExceptionCode()
Definition: seh.h:27
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
GLenum query
Definition: glext.h:7781

Referenced by do_query(), find_entry(), find_entryW(), find_prop_in_property(), get_column_info(), get_columns_table_type(), get_integer(), get_string(), run_query(), run_queryW(), s_remote_ViewExecute(), test_carriagereturn(), test_collation(), test_columnorder(), test_createtable(), test_db(), test_dbmerge(), test_deleterow(), test_droptable(), test_emptypackage(), test_fieldzero(), test_getcolinfo(), test_insertorder(), test_integers(), test_join(), test_longstrings(), test_msiexport(), test_msiimport(), test_msiinsert(), test_noquotes(), test_order(), test_quotes(), test_rows_order(), test_select_column_names(), test_select_markers(), test_select_with_tablenames(), test_simple_patch(), test_storages_table(), test_streamtable(), test_stringtable(), test_system_tables(), test_tables_order(), test_try_transform(), test_update(), test_view_get_error(), test_viewfetch_wraparound(), test_viewmodify(), test_viewmodify_assign(), test_viewmodify_delete(), test_viewmodify_delete_temporary(), test_viewmodify_insert(), test_viewmodify_merge(), test_viewmodify_refresh(), test_viewmodify_update(), test_where(), test_where_not_in_selected(), test_where_viewmodify(), try_query_param(), and view_invoke().

◆ MsiViewFetch()

UINT WINAPI MsiViewFetch ( MSIHANDLE  ,
MSIHANDLE  
)

Definition at line 404 of file msiquery.c.

405 {
406  MSIQUERY *query;
407  MSIRECORD *rec = NULL;
408  UINT ret;
409 
410  TRACE( "%lu, %p\n", hView, record );
411 
412  if( !record )
414  *record = 0;
415 
417  if (!query)
418  {
419  struct wire_record *wire_rec = NULL;
420  MSIHANDLE remote;
421 
422  if (!(remote = msi_get_remote(hView)))
423  return ERROR_INVALID_HANDLE;
424 
425  __TRY
426  {
427  ret = remote_ViewFetch(remote, &wire_rec);
428  }
430  {
431  ret = GetExceptionCode();
432  }
433  __ENDTRY
434 
435  if (!ret)
436  {
437  ret = unmarshal_record(wire_rec, record);
438  free_remote_record(wire_rec);
439  }
440  return ret;
441  }
442  ret = MSI_ViewFetch( query, &rec );
443  if( ret == ERROR_SUCCESS )
444  {
445  *record = alloc_msihandle( &rec->hdr );
446  if (! *record)
448  msiobj_release( &rec->hdr );
449  }
450  msiobj_release( &query->hdr );
451  return ret;
452 }
#define __EXCEPT(func)
Definition: exception.h:84
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
#define ERROR_SUCCESS
Definition: deptool.c:10
UINT unmarshal_record(const struct wire_record *in, MSIHANDLE *out) DECLSPEC_HIDDEN
Definition: record.c:1095
MSIOBJECTHDR hdr
Definition: msipriv.h:151
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
#define ERROR_NOT_ENOUGH_MEMORY
Definition: dderror.h:7
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
void free_remote_record(struct wire_record *rec) DECLSPEC_HIDDEN
Definition: record.c:1149
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define MSIHANDLETYPE_VIEW
Definition: msipriv.h:724
#define __ENDTRY
Definition: compat.h:82
int ret
MSIHANDLE alloc_msihandle(MSIOBJECTHDR *obj)
Definition: handle.c:111
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
UINT MSI_ViewFetch(MSIQUERY *query, MSIRECORD **prec)
Definition: msiquery.c:377
#define GetExceptionCode()
Definition: seh.h:27
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158
GLenum query
Definition: glext.h:7781

Referenced by do_query(), find_entry(), find_entryW(), find_prop_in_property(), get_columns_table_type(), get_integer(), get_string(), s_remote_ViewFetch(), test_carriagereturn(), test_collation(), test_columnorder(), test_db(), test_dbmerge(), test_deleterow(), test_droptable(), test_emptypackage(), test_fieldzero(), test_insertorder(), test_join(), test_longstrings(), test_msiimport(), test_msiinsert(), test_noquotes(), test_order(), test_quotes(), test_rows_order(), test_select_column_names(), test_select_markers(), test_select_with_tablenames(), test_simple_patch(), test_storages_table(), test_streamtable(), test_stringtable(), test_system_tables(), test_tables_order(), test_try_transform(), test_update(), test_viewfetch_wraparound(), test_viewmodify(), test_viewmodify_assign(), test_viewmodify_delete(), test_viewmodify_delete_temporary(), test_viewmodify_insert(), test_viewmodify_merge(), test_viewmodify_refresh(), test_viewmodify_update(), test_where(), test_where_not_in_selected(), test_where_viewmodify(), and view_invoke().

◆ MsiViewGetColumnInfo()

UINT WINAPI MsiViewGetColumnInfo ( MSIHANDLE  ,
MSICOLINFO  ,
MSIHANDLE  
)

Definition at line 642 of file msiquery.c.

643 {
644  MSIQUERY *query = NULL;
645  MSIRECORD *rec = NULL;
646  UINT r;
647 
648  TRACE( "%lu, %d, %p\n", hView, info, hRec );
649 
650  if( !hRec )
652 
655 
657  if (!query)
658  {
659  struct wire_record *wire_rec = NULL;
660  MSIHANDLE remote;
661 
662  if (!(remote = msi_get_remote(hView)))
663  return ERROR_INVALID_HANDLE;
664 
665  __TRY
666  {
667  r = remote_ViewGetColumnInfo(remote, info, &wire_rec);
668  }
670  {
671  r = GetExceptionCode();
672  }
673  __ENDTRY
674 
675  if (!r)
676  {
677  r = unmarshal_record(wire_rec, hRec);
678  free_remote_record(wire_rec);
679  }
680 
681  return r;
682  }
683 
684  r = MSI_ViewGetColumnInfo( query, info, &rec );
685  if ( r == ERROR_SUCCESS )
686  {
687  *hRec = alloc_msihandle( &rec->hdr );
688  if ( !*hRec )
690  msiobj_release( &rec->hdr );
691  }
692 
693  msiobj_release( &query->hdr );
694 
695  return r;
696 }
#define __EXCEPT(func)
Definition: exception.h:84
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
#define ERROR_SUCCESS
Definition: deptool.c:10
UINT unmarshal_record(const struct wire_record *in, MSIHANDLE *out) DECLSPEC_HIDDEN
Definition: record.c:1095
MSIOBJECTHDR hdr
Definition: msipriv.h:151
UINT MSI_ViewGetColumnInfo(MSIQUERY *query, MSICOLINFO info, MSIRECORD **prec)
Definition: msiquery.c:603
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
#define ERROR_NOT_ENOUGH_MEMORY
Definition: dderror.h:7
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
void free_remote_record(struct wire_record *rec) DECLSPEC_HIDDEN
Definition: record.c:1149
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define MSIHANDLETYPE_VIEW
Definition: msipriv.h:724
#define __ENDTRY
Definition: compat.h:82
MSIHANDLE alloc_msihandle(MSIOBJECTHDR *obj)
Definition: handle.c:111
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
#define GetExceptionCode()
Definition: seh.h:27
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by get_column_info(), s_remote_ViewGetColumnInfo(), test_columnorder(), test_createtable(), test_db(), test_dbmerge(), test_getcolinfo(), test_integers(), test_msiimport(), test_packagecoltypes(), test_select_column_names(), test_temporary_table(), and test_try_transform().

◆ MsiViewGetErrorA()

MSIDBERROR WINAPI MsiViewGetErrorA ( MSIHANDLE  ,
LPSTR  ,
LPDWORD   
)

◆ MsiViewGetErrorW()

MSIDBERROR WINAPI MsiViewGetErrorW ( MSIHANDLE  ,
LPWSTR  ,
LPDWORD   
)

◆ MsiViewModify()

UINT WINAPI MsiViewModify ( MSIHANDLE  ,
MSIMODIFY  ,
MSIHANDLE   
)

Definition at line 720 of file msiquery.c.

721 {
722  MSIQUERY *query = NULL;
723  MSIRECORD *rec = NULL;
725 
726  TRACE( "%lu, %#x, %lu\n", hView, eModifyMode, hRecord );
727 
728  rec = msihandle2msiinfo( hRecord, MSIHANDLETYPE_RECORD );
729 
730  if (!rec)
731  return ERROR_INVALID_HANDLE;
732 
734  if (!query)
735  {
736  struct wire_record *wire_refreshed = NULL;
737  MSIHANDLE remote;
738 
739  if (!(remote = msi_get_remote(hView)))
740  return ERROR_INVALID_HANDLE;
741 
742  __TRY
743  {
744  r = remote_ViewModify(remote, eModifyMode,
745  (struct wire_record *)&rec->count, &wire_refreshed);
746  }
748  {
749  r = GetExceptionCode();
750  }
751  __ENDTRY
752 
753  if (!r && (eModifyMode == MSIMODIFY_REFRESH || eModifyMode == MSIMODIFY_SEEK))
754  {
755  r = copy_remote_record(wire_refreshed, hRecord);
756  free_remote_record(wire_refreshed);
757  }
758 
759  msiobj_release(&rec->hdr);
760  return r;
761  }
762 
763  r = MSI_ViewModify( query, eModifyMode, rec );
764 
765  msiobj_release( &query->hdr );
766  msiobj_release(&rec->hdr);
767  return r;
768 }
#define __EXCEPT(func)
Definition: exception.h:84
MSIHANDLE msi_get_remote(MSIHANDLE handle)
Definition: handle.c:183
UINT copy_remote_record(const struct wire_record *rec, MSIHANDLE handle) DECLSPEC_HIDDEN
Definition: record.c:1052
MSIOBJECTHDR hdr
Definition: msipriv.h:151
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
UINT MSI_ViewModify(MSIQUERY *query, MSIMODIFY mode, MSIRECORD *rec)
Definition: msiquery.c:698
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
#define ERROR_FUNCTION_FAILED
Definition: winerror.h:985
unsigned long MSIHANDLE
Definition: winemsi.idl:24
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr)
Definition: custom.c:85
void free_remote_record(struct wire_record *rec) DECLSPEC_HIDDEN
Definition: record.c:1149
#define MSIHANDLETYPE_RECORD
Definition: msipriv.h:725
UINT count
Definition: msipriv.h:152
#define __TRY
Definition: compat.h:80
#define TRACE(s)
Definition: solgame.cpp:4
int msiobj_release(MSIOBJECTHDR *info)
Definition: handle.c:241
#define MSIHANDLETYPE_VIEW
Definition: msipriv.h:724
#define __ENDTRY
Definition: compat.h:82
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
#define GetExceptionCode()
Definition: seh.h:27
void * msihandle2msiinfo(MSIHANDLE handle, UINT type)
Definition: handle.c:158

Referenced by s_remote_ViewModify(), test_db(), test_join(), test_stringtable(), test_view_get_error(), test_viewmodify(), test_viewmodify_assign(), test_viewmodify_delete(), test_viewmodify_delete_temporary(), test_viewmodify_insert(), test_viewmodify_merge(), test_viewmodify_refresh(), test_viewmodify_update(), test_where_viewmodify(), and view_invoke().