22#ifndef __WINE_MSI_PRIVATE__
23#define __WINE_MSI_PRIVATE__
47#define MSI_DATASIZEMASK 0x00ff
48#define MSITYPE_VALID 0x0100
49#define MSITYPE_LOCALIZABLE 0x200
50#define MSITYPE_STRING 0x0800
51#define MSITYPE_NULLABLE 0x1000
52#define MSITYPE_KEY 0x2000
53#define MSITYPE_TEMPORARY 0x4000
54#define MSITYPE_UNKNOWN 0x8000
56#define MAX_STREAM_NAME_LEN 62
57#define LONG_STR_BYTES 3
60#define INSTALLUILEVEL_MASK 0x0007
62#define MSITYPE_IS_BINARY(type) (((type) & ~MSITYPE_NULLABLE) == (MSITYPE_STRING|MSITYPE_VALID))
83#define MSI_INITIAL_MEDIA_TRANSFORM_OFFSET 10000
84#define MSI_INITIAL_MEDIA_TRANSFORM_DISKID 32000
99#define MSI_OPEN_READONLY 0
100#define MSI_OPEN_TRANSACT 1
101#define MSI_OPEN_DIRECT 2
102#define MSI_OPEN_CREATE 3
103#define MSI_OPEN_CREATEDIRECT 4
104#define MSI_OPEN_PATCHFILE 32
482#define MSI_MAX_PROPS 20
718#define SEQUENCE_UI 0x1
719#define SEQUENCE_EXEC 0x2
721#define MSIHANDLETYPE_ANY 0
722#define MSIHANDLETYPE_DATABASE 1
723#define MSIHANDLETYPE_SUMMARYINFO 2
724#define MSIHANDLETYPE_VIEW 3
725#define MSIHANDLETYPE_RECORD 4
726#define MSIHANDLETYPE_PACKAGE 5
727#define MSIHANDLETYPE_PREVIEW 6
729#define MSI_MAJORVERSION 4
730#define MSI_MINORVERSION 5
731#define MSI_BUILDNUMBER 6001
734#define SQUASHED_GUID_SIZE 33
736#define MSIHANDLE_MAGIC 0x4d434923
883#define WINE_OPENPACKAGEFLAGS_RECACHE 0x80000000
1095#define MSICABEXTRACT_BEGINEXTRACT 0x01
1096#define MSICABEXTRACT_FILEEXTRACTED 0x02
unsigned long long UINT64
void destroy(_Tp *__pointer)
_In_ ULONG const _In_ FEATURE_NUMBER const Feature
#define WideCharToMultiByte
#define MultiByteToWideChar
BOOL WINAPI Wow64RevertWow64FsRedirection(IN PVOID OldValue)
BOOL WINAPI Wow64DisableWow64FsRedirection(IN PVOID *OldValue)
struct png_info_def *typedef unsigned char **typedef struct png_info_def *typedef struct png_info_def *typedef struct png_info_def *typedef unsigned char ** row
GLuint GLuint GLsizei GLenum type
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLenum GLenum GLuint components
GLboolean GLboolean GLboolean b
GLenum GLuint GLenum GLsizei const GLchar * buf
GLboolean GLboolean GLboolean GLboolean a
static IDispatch * pInstaller
static const struct access_res create[16]
INTERNETFEATURELIST feature
static PROTOCOLDATA * pdata
enum tagMSIINSTALLCONTEXT MSIINSTALLCONTEXT
enum tagMSIPATCHSTATE MSIPATCHSTATE
INT(CALLBACK * INSTALLUI_HANDLERW)(LPVOID, UINT, LPCWSTR)
INT(CALLBACK * INSTALLUI_HANDLERA)(LPVOID, UINT, LPCSTR)
INT(CALLBACK * INSTALLUI_HANDLER_RECORD)(LPVOID, UINT, MSIHANDLE)
enum tagINSTALLUILEVEL INSTALLUILEVEL
INSTALLUI_HANDLERA gUIHandlerA
INSTALLUI_HANDLER_RECORD gUIHandlerRecord
INSTALLUI_HANDLERW gUIHandlerW
INSTALLSTATE msi_get_component_action(MSIPACKAGE *package, MSICOMPONENT *comp) DECLSPEC_HIDDEN
UINT msi_package_add_info(MSIPACKAGE *, DWORD, DWORD, LPCWSTR, LPWSTR) DECLSPEC_HIDDEN
UINT ACTION_DuplicateFiles(MSIPACKAGE *package) DECLSPEC_HIDDEN
void msi_reduce_to_long_filename(WCHAR *) DECLSPEC_HIDDEN
struct _column_info column_info
UINT MSIREG_DeleteUserDataPatchKey(LPCWSTR patch, MSIINSTALLCONTEXT context) DECLSPEC_HIDDEN
void msi_free_action_script(MSIPACKAGE *package, UINT script) DECLSPEC_HIDDEN
int msiobj_release(MSIOBJECTHDR *) DECLSPEC_HIDDEN
UINT msi_apply_transforms(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT msi_load_media_info(MSIPACKAGE *package, UINT Sequence, MSIMEDIAINFO *mi) DECLSPEC_HIDDEN
UINT msi_strcpy_to_awstring(const WCHAR *, int, awstring *, DWORD *) DECLSPEC_HIDDEN
UINT MSI_GetFeatureCost(MSIPACKAGE *, MSIFEATURE *, MSICOSTTREE, INSTALLSTATE, LPINT) DECLSPEC_HIDDEN
WCHAR * msi_strdupW(const WCHAR *value, int len) DECLSPEC_HIDDEN
UINT MSI_ViewClose(MSIQUERY *) DECLSPEC_HIDDEN
MSIFILE * msi_get_loaded_file(MSIPACKAGE *package, const WCHAR *file) DECLSPEC_HIDDEN
INT msi_suminfo_get_int32(MSISUMMARYINFO *si, UINT uiProperty) DECLSPEC_HIDDEN
static const BOOL is_64bit
static void * msi_realloc(void *mem, size_t len) __WINE_ALLOC_SIZE(2)
UINT MSI_RecordSetStream(MSIRECORD *, UINT, IStream *) DECLSPEC_HIDDEN
WCHAR * msi_dup_record_field(MSIRECORD *row, INT index) DECLSPEC_HIDDEN
UINT msi_set_property(MSIDATABASE *, const WCHAR *, const WCHAR *, int) DECLSPEC_HIDDEN
UINT ACTION_UnregisterMIMEInfo(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT msi_get_stream(MSIDATABASE *, const WCHAR *, IStream **) DECLSPEC_HIDDEN
UINT MSI_CommitTables(MSIDATABASE *db) DECLSPEC_HIDDEN
WCHAR * msi_get_font_file_version(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
MSIRECORD *WINAPIV MSI_QueryGetRecord(MSIDATABASE *db, LPCWSTR query,...) DECLSPEC_HIDDEN
static void * msi_alloc_zero(size_t len) __WINE_ALLOC_SIZE(1)
struct tagFeatureList FeatureList
UINT MSIREG_OpenUninstallKey(const WCHAR *, enum platform, HKEY *, BOOL) DECLSPEC_HIDDEN
UINT MSI_SetFeatureStateW(MSIPACKAGE *, LPCWSTR, INSTALLSTATE) DECLSPEC_HIDDEN
UINT MSIREG_OpenUserPatchesKey(LPCWSTR szPatch, HKEY *key, BOOL create) DECLSPEC_HIDDEN
LPWSTR msi_suminfo_dup_string(MSISUMMARYINFO *si, UINT uiProperty) DECLSPEC_HIDDEN
MSICOMPONENT * msi_get_loaded_component(MSIPACKAGE *package, const WCHAR *Component) DECLSPEC_HIDDEN
DWORD msi_version_str_to_dword(LPCWSTR p) DECLSPEC_HIDDEN
UINT MSI_SetFeatureStates(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT ACTION_PerformAction(MSIPACKAGE *package, const WCHAR *action) DECLSPEC_HIDDEN
VS_FIXEDFILEINFO * msi_get_disk_file_version(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
UINT MSIREG_OpenUserUpgradeCodesKey(LPCWSTR szProduct, HKEY *key, BOOL create) DECLSPEC_HIDDEN
WCHAR * msi_build_icon_path(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
void msi_destroy_assembly_caches(MSIPACKAGE *) DECLSPEC_HIDDEN
UINT MSI_ViewFetch(MSIQUERY *, MSIRECORD **) DECLSPEC_HIDDEN
UINT MSIREG_DeleteUserProductKey(LPCWSTR szProduct) DECLSPEC_HIDDEN
UINT MSI_RecordGetIStream(MSIRECORD *, UINT, IStream **) DECLSPEC_HIDDEN
LONG WINAPI rpc_filter(EXCEPTION_POINTERS *eptr) DECLSPEC_HIDDEN
UINT MSI_RecordReadStream(MSIRECORD *, UINT, char *, LPDWORD) DECLSPEC_HIDDEN
static LPWSTR strdupW(LPCWSTR src)
struct tagMSIPREVIEW MSIPREVIEW
INSTALLSTATE msi_get_feature_action(MSIPACKAGE *package, MSIFEATURE *feature) DECLSPEC_HIDDEN
UINT MSI_SetTargetPathW(MSIPACKAGE *, LPCWSTR, LPCWSTR) DECLSPEC_HIDDEN
UINT MSI_RecordSetStreamFromFileW(MSIRECORD *, UINT, LPCWSTR) DECLSPEC_HIDDEN
void msi_resolve_target_folder(MSIPACKAGE *package, const WCHAR *name, BOOL load_prop) DECLSPEC_HIDDEN
UINT ACTION_RemoveFiles(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT msi_string2id(const string_table *st, const WCHAR *data, int len, UINT *id) DECLSPEC_HIDDEN
UINT MSIREG_DeleteClassesUpgradeCodesKey(LPCWSTR szUpgradeCode) DECLSPEC_HIDDEN
UINT MSI_IterateRecords(MSIQUERY *, LPDWORD, record_func, LPVOID) DECLSPEC_HIDDEN
LPWSTR encode_streamname(BOOL bTable, LPCWSTR in) DECLSPEC_HIDDEN
UINT ACTION_ForceReboot(MSIPACKAGE *package) DECLSPEC_HIDDEN
BOOL(* PMSICABEXTRACTCB)(MSIPACKAGE *, LPCWSTR, DWORD, LPWSTR *, DWORD *, PVOID)
BOOL msi_set_file_attributes(MSIPACKAGE *, const WCHAR *, DWORD) DECLSPEC_HIDDEN
UINT MSI_RecordSetIStream(MSIRECORD *, UINT, IStream *) DECLSPEC_HIDDEN
UINT unmarshal_record(const struct wire_record *in, MSIHANDLE *out) DECLSPEC_HIDDEN
UINT msi_set_sourcedir_props(MSIPACKAGE *package, BOOL replace) DECLSPEC_HIDDEN
UINT MSI_RecordGetStringW(MSIRECORD *, UINT, LPWSTR, LPDWORD) DECLSPEC_HIDDEN
WCHAR *WINAPIV msi_build_directory_name(DWORD,...) DECLSPEC_HIDDEN
static void msi_free(void *mem)
void custom_stop_server(HANDLE process, HANDLE pipe) DECLSPEC_HIDDEN
UINT MSI_GetFeatureStateW(MSIPACKAGE *, LPCWSTR, INSTALLSTATE *, INSTALLSTATE *) DECLSPEC_HIDDEN
UINT MSIREG_DeleteUserDataProductKey(LPCWSTR, MSIINSTALLCONTEXT) DECLSPEC_HIDDEN
UINT MSIREG_OpenUserDataProductPatchesKey(LPCWSTR product, MSIINSTALLCONTEXT context, HKEY *key, BOOL create) DECLSPEC_HIDDEN
BOOL MSI_RecordsAreFieldsEqual(MSIRECORD *a, MSIRECORD *b, UINT field) DECLSPEC_HIDDEN
WCHAR * msi_resolve_file_source(MSIPACKAGE *package, MSIFILE *file) DECLSPEC_HIDDEN
BOOL msi_create_full_path(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
UINT MSIREG_OpenUserDataComponentKey(LPCWSTR szComponent, LPCWSTR szUserSid, HKEY *key, BOOL create) DECLSPEC_HIDDEN
void free_remote_record(struct wire_record *rec) DECLSPEC_HIDDEN
UINT MSIREG_OpenUserDataFeaturesKey(LPCWSTR szProduct, LPCWSTR szUserSid, MSIINSTALLCONTEXT context, HKEY *key, BOOL create) DECLSPEC_HIDDEN
int msi_compare_font_versions(const WCHAR *, const WCHAR *) DECLSPEC_HIDDEN
BOOL is_wow64 DECLSPEC_HIDDEN
UINT MSIREG_DeleteProductKey(LPCWSTR szProduct) DECLSPEC_HIDDEN
BOOL msi_init_assembly_caches(MSIPACKAGE *) DECLSPEC_HIDDEN
UINT MSIREG_DeleteUserFeaturesKey(LPCWSTR szProduct) DECLSPEC_HIDDEN
const WCHAR * msi_record_get_string(const MSIRECORD *, UINT, int *) DECLSPEC_HIDDEN
struct tagMSIFIELD MSIFIELD
MSICONDITION MSI_DatabaseIsTablePersistent(MSIDATABASE *db, LPCWSTR table) DECLSPEC_HIDDEN
UINT ACTION_FindRelatedProducts(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT MSIREG_OpenProductKey(LPCWSTR szProduct, LPCWSTR szUserSid, MSIINSTALLCONTEXT context, HKEY *key, BOOL create) DECLSPEC_HIDDEN
UINT ACTION_AppSearch(MSIPACKAGE *package) DECLSPEC_HIDDEN
WCHAR * msi_get_package_code(MSIDATABASE *db) DECLSPEC_HIDDEN
UINT msi_get_string_table_codepage(const string_table *st) DECLSPEC_HIDDEN
BOOL msi_cabextract(MSIPACKAGE *package, MSIMEDIAINFO *mi, LPVOID data) DECLSPEC_HIDDEN
BOOL msi_add_string(string_table *st, const WCHAR *data, int len, BOOL persistent) DECLSPEC_HIDDEN
UINT msi_add_suminfo(MSIDATABASE *db, LPWSTR **records, int num_records, int num_columns) DECLSPEC_HIDDEN
HANDLE msi_create_file(MSIPACKAGE *, const WCHAR *, DWORD, DWORD, DWORD, DWORD) DECLSPEC_HIDDEN
UINT msi_check_patch_applicable(MSIPACKAGE *package, MSISUMMARYINFO *si) DECLSPEC_HIDDEN
UINT MSI_FormatRecordW(MSIPACKAGE *, MSIRECORD *, LPWSTR, LPDWORD) DECLSPEC_HIDDEN
UINT msi_validate_product_id(MSIPACKAGE *package) DECLSPEC_HIDDEN
void msi_free_patchinfo(MSIPATCHINFO *patch) DECLSPEC_HIDDEN
const WCHAR * msi_get_target_folder(MSIPACKAGE *package, const WCHAR *name) DECLSPEC_HIDDEN
INT ACTION_ShowDialog(MSIPACKAGE *, LPCWSTR) DECLSPEC_HIDDEN
BOOL squash_guid(LPCWSTR in, LPWSTR out) DECLSPEC_HIDDEN
UINT MSI_RecordGetStringA(MSIRECORD *, UINT, LPSTR, LPDWORD) DECLSPEC_HIDDEN
UINT msi_export_suminfo(MSIDATABASE *db, HANDLE handle) DECLSPEC_HIDDEN
UINT msi_table_apply_transform(MSIDATABASE *db, IStorage *stg, int err_cond) DECLSPEC_HIDDEN
int MSI_RecordGetInteger(MSIRECORD *, UINT) DECLSPEC_HIDDEN
UINT msi_load_suminfo_properties(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT MSI_InstallPackage(MSIPACKAGE *, LPCWSTR, LPCWSTR) DECLSPEC_HIDDEN
WCHAR ** msi_split_string(const WCHAR *, WCHAR) DECLSPEC_HIDDEN
WCHAR * msi_create_component_advertise_string(MSIPACKAGE *, MSICOMPONENT *, const WCHAR *) DECLSPEC_HIDDEN
UINT msi_get_property(MSIDATABASE *, LPCWSTR, LPWSTR, LPDWORD) DECLSPEC_HIDDEN
void free_cached_tables(MSIDATABASE *db) DECLSPEC_HIDDEN
UINT(* record_func)(MSIRECORD *, LPVOID)
struct tagMSIFEATURE MSIFEATURE
UINT VIEW_find_column(MSIVIEW *, LPCWSTR, LPCWSTR, UINT *) DECLSPEC_HIDDEN
WCHAR * msi_create_temp_file(MSIDATABASE *db) DECLSPEC_HIDDEN
HRESULT get_typeinfo(tid_t tid, ITypeInfo **ti) DECLSPEC_HIDDEN
BOOL decode_base85_guid(LPCWSTR, GUID *) DECLSPEC_HIDDEN
UINT ACTION_InstallFiles(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT msi_strncpyWtoA(const WCHAR *str, int len, char *buf, DWORD *sz, BOOL remote) DECLSPEC_HIDDEN
struct tagMSIFILE MSIFILE
void ACTION_UpdateComponentStates(MSIPACKAGE *package, MSIFEATURE *feature) DECLSPEC_HIDDEN
const WCHAR * msi_string_lookup(const string_table *st, UINT id, int *len) DECLSPEC_HIDDEN
UINT MSIREG_OpenFeaturesKey(LPCWSTR szProduct, LPCWSTR szUserSid, MSIINSTALLCONTEXT context, HKEY *key, BOOL create) DECLSPEC_HIDDEN
struct tagMSIEXTENSION MSIEXTENSION
UINT ACTION_CCPSearch(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT msi_download_file(LPCWSTR szUrl, LPWSTR filename) DECLSPEC_HIDDEN
UINT MSI_OpenDatabaseW(LPCWSTR, LPCWSTR, MSIDATABASE **) DECLSPEC_HIDDEN
void msi_ui_progress(MSIPACKAGE *, int, int, int, int) DECLSPEC_HIDDEN
UINT msi_register_unique_action(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
struct tagMSISOURCELISTINFO MSISOURCELISTINFO
BOOL msi_move_file(MSIPACKAGE *, const WCHAR *, const WCHAR *, DWORD) DECLSPEC_HIDDEN
UINT MSI_GetComponentStateW(MSIPACKAGE *, LPCWSTR, INSTALLSTATE *, INSTALLSTATE *) DECLSPEC_HIDDEN
HRESULT msi_init_string_table(IStorage *stg) DECLSPEC_HIDDEN
UINT copy_remote_record(const struct wire_record *rec, MSIHANDLE handle) DECLSPEC_HIDDEN
const WCHAR * msi_get_command_line_option(const WCHAR *cmd, const WCHAR *option, UINT *len) DECLSPEC_HIDDEN
static LPWSTR strdupAtoW(LPCSTR str)
UINT read_stream_data(IStorage *stg, LPCWSTR stname, BOOL table, BYTE **pdata, UINT *psz) DECLSPEC_HIDDEN
BOOL unsquash_guid(LPCWSTR in, LPWSTR out) DECLSPEC_HIDDEN
MSIHANDLE msi_get_remote(MSIHANDLE handle) DECLSPEC_HIDDEN
UINT ACTION_RegisterFonts(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT MSI_RecordStreamToFile(MSIRECORD *, UINT, LPCWSTR) DECLSPEC_HIDDEN
void * alloc_msiobject(UINT type, UINT size, msihandledestructor destroy) DECLSPEC_HIDDEN
UINT MSIREG_DeleteUninstallKey(const WCHAR *, enum platform) DECLSPEC_HIDDEN
struct tagMSIMEDIAINFO MSIMEDIAINFO
UINT msi_add_cabinet_stream(MSIPACKAGE *, UINT, IStorage *, const WCHAR *) DECLSPEC_HIDDEN
void msi_reset_source_folders(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT MSIREG_OpenUpgradeCodesKey(LPCWSTR szProduct, HKEY *key, BOOL create) DECLSPEC_HIDDEN
BOOL msi_remove_directory(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
UINT msi_uninstall_assembly(MSIPACKAGE *, MSICOMPONENT *) DECLSPEC_HIDDEN
UINT ACTION_MsiPublishAssemblies(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT MSI_ViewModify(MSIQUERY *, MSIMODIFY, MSIRECORD *) DECLSPEC_HIDDEN
UINT MSI_DatabaseApplyTransformW(MSIDATABASE *db, LPCWSTR szTransformFile, int iErrorCond) DECLSPEC_HIDDEN
UINT MSIREG_OpenUserComponentsKey(LPCWSTR szComponent, HKEY *key, BOOL create) DECLSPEC_HIDDEN
BOOL TABLE_Exists(MSIDATABASE *db, LPCWSTR name) DECLSPEC_HIDDEN
DWORD deformat_string(MSIPACKAGE *package, LPCWSTR ptr, WCHAR **data) DECLSPEC_HIDDEN
struct tagMSIVIEWOPS MSIVIEWOPS
MSIFOLDER * msi_get_loaded_folder(MSIPACKAGE *package, const WCHAR *dir) DECLSPEC_HIDDEN
UINT MSI_RecordSetInteger(MSIRECORD *, UINT, int) DECLSPEC_HIDDEN
BOOL msi_find_next_file(MSIPACKAGE *, HANDLE, WIN32_FIND_DATAW *) DECLSPEC_HIDDEN
LPWSTR msi_reg_get_val_str(HKEY hkey, LPCWSTR name) DECLSPEC_HIDDEN
BOOL msi_action_is_unique(const MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
const struct tagMSICOLUMNHASHENTRY * MSIITERHANDLE
const WCHAR * MSI_RecordGetString(const MSIRECORD *, UINT) DECLSPEC_HIDDEN
void msi_dialog_check_messages(HANDLE) DECLSPEC_HIDDEN
struct tagMSICABINETSTREAM MSICABINETSTREAM
UINT MSI_RecordGetFieldCount(const MSIRECORD *rec) DECLSPEC_HIDDEN
LANGID WINAPI MsiLoadStringW(MSIHANDLE, UINT, LPWSTR, int, LANGID)
BOOL msi_delete_file(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
@ FOLDER_STATE_UNINITIALIZED
@ FOLDER_STATE_CREATED_PERSISTENT
struct wire_record * marshal_record(MSIHANDLE handle) DECLSPEC_HIDDEN
void msi_free_handle_table(void) DECLSPEC_HIDDEN
DWORD call_script(MSIHANDLE hPackage, INT type, LPCWSTR script, LPCWSTR function, LPCWSTR action) DECLSPEC_HIDDEN
struct tagMSITRANSFORM MSITRANSFORM
UINT ACTION_UnregisterProgIdInfo(MSIPACKAGE *package) DECLSPEC_HIDDEN
struct tagMSISTREAM MSISTREAM
MSICONDITION MSI_EvaluateConditionW(MSIPACKAGE *, LPCWSTR) DECLSPEC_HIDDEN
UINT MSI_Sequence(MSIPACKAGE *package, LPCWSTR szTable) DECLSPEC_HIDDEN
UINT msi_commit_streams(MSIDATABASE *db) DECLSPEC_HIDDEN
UINT MSIREG_DeleteUpgradeCodesKey(const WCHAR *) DECLSPEC_HIDDEN
struct tagMSIBINARY MSIBINARY
struct tagMSIVERB MSIVERB
INT MSI_ProcessMessage(MSIPACKAGE *, INSTALLMESSAGE, MSIRECORD *) DECLSPEC_HIDDEN
static void * msi_alloc(size_t len) __WINE_ALLOC_SIZE(1)
UINT MSIREG_DeleteLocalClassesProductKey(LPCWSTR szProductCode) DECLSPEC_HIDDEN
VOID msi_destroy_stringtable(string_table *st) DECLSPEC_HIDDEN
UINT MSIREG_DeleteLocalClassesFeaturesKey(LPCWSTR szProductCode) DECLSPEC_HIDDEN
struct tagMSICLASS MSICLASS
struct tagMSIQUERY MSIQUERY
void msi_adjust_privilege_properties(MSIPACKAGE *) DECLSPEC_HIDDEN
struct tagMSIPACKAGE MSIPACKAGE
UINT msi_set_context(MSIPACKAGE *) DECLSPEC_HIDDEN
UINT MSIREG_OpenUserDataProductKey(LPCWSTR szProduct, MSIINSTALLCONTEXT dwContext, LPCWSTR szUserSid, HKEY *key, BOOL create) DECLSPEC_HIDDEN
WCHAR * msi_normalize_path(const WCHAR *) DECLSPEC_HIDDEN
void msi_event_fire(MSIPACKAGE *, const WCHAR *, MSIRECORD *) DECLSPEC_HIDDEN
UINT ACTION_RegisterClassInfo(MSIPACKAGE *package) DECLSPEC_HIDDEN
HANDLE msi_find_first_file(MSIPACKAGE *, const WCHAR *, WIN32_FIND_DATAW *) DECLSPEC_HIDDEN
void * msihandle2msiinfo(MSIHANDLE handle, UINT type) DECLSPEC_HIDDEN
UINT ACTION_MoveFiles(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT MSI_DatabaseGetPrimaryKeys(MSIDATABASE *, LPCWSTR, MSIRECORD **) DECLSPEC_HIDDEN
MSIRECORD * MSI_CreateRecord(UINT) DECLSPEC_HIDDEN
UINT msi_strncpyW(const WCHAR *str, int len, WCHAR *buf, DWORD *sz) DECLSPEC_HIDDEN
struct tagFolderList FolderList
MSIPACKAGE * MSI_CreatePackage(MSIDATABASE *) DECLSPEC_HIDDEN
UINT msi_schedule_action(MSIPACKAGE *package, UINT script, const WCHAR *action) DECLSPEC_HIDDEN
UINT ACTION_RemoveDuplicateFiles(MSIPACKAGE *package) DECLSPEC_HIDDEN
struct tagMSIPATCHINFO MSIPATCHINFO
MSIRECORD * MSI_CloneRecord(MSIRECORD *) DECLSPEC_HIDDEN
UINT ACTION_CustomAction(MSIPACKAGE *package, const WCHAR *action) DECLSPEC_HIDDEN
static void msi_revert_fs_redirection(MSIPACKAGE *package)
void release_typelib(void) DECLSPEC_HIDDEN
UINT MSIREG_DeleteUserUpgradeCodesKey(LPCWSTR szUpgradeCode) DECLSPEC_HIDDEN
UINT MSIREG_OpenPatchesKey(LPCWSTR szPatch, HKEY *key, BOOL create) DECLSPEC_HIDDEN
UINT msi_load_all_components(MSIPACKAGE *package) DECLSPEC_HIDDEN
struct tagMSIAPPID MSIAPPID
UINT msi_set_last_used_source(LPCWSTR product, LPCWSTR usersid, MSIINSTALLCONTEXT context, DWORD options, LPCWSTR value) DECLSPEC_HIDDEN
MSIASSEMBLY * msi_load_assembly(MSIPACKAGE *, MSICOMPONENT *) DECLSPEC_HIDDEN
UINT msi_apply_registered_patch(MSIPACKAGE *package, LPCWSTR patch_code) DECLSPEC_HIDDEN
LONG msi_reg_set_val_multi_str(HKEY hkey, LPCWSTR name, LPCWSTR value) DECLSPEC_HIDDEN
void msiobj_addref(MSIOBJECTHDR *) DECLSPEC_HIDDEN
WCHAR * msi_resolve_source_folder(MSIPACKAGE *package, const WCHAR *name, MSIFOLDER **folder) DECLSPEC_HIDDEN
static void msi_disable_fs_redirection(MSIPACKAGE *package)
void msi_parse_version_string(LPCWSTR, PDWORD, PDWORD) DECLSPEC_HIDDEN
void msiobj_lock(MSIOBJECTHDR *) DECLSPEC_HIDDEN
UINT msi_view_get_row(MSIDATABASE *, MSIVIEW *, UINT, MSIRECORD **) DECLSPEC_HIDDEN
UINT ACTION_MsiUnpublishAssemblies(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT msi_apply_patches(MSIPACKAGE *package) DECLSPEC_HIDDEN
DWORD msi_get_disk_file_size(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
BOOL MSI_RecordsAreEqual(MSIRECORD *, MSIRECORD *) DECLSPEC_HIDDEN
UINT WINAPI MsiDecomposeDescriptorA(LPCSTR, LPSTR, LPSTR, LPSTR, LPDWORD)
int msi_compare_file_versions(VS_FIXEDFILEINFO *, const WCHAR *) DECLSPEC_HIDDEN
HRESULT create_session(MSIHANDLE msiHandle, IDispatch *pInstaller, IDispatch **pDispatch) DECLSPEC_HIDDEN
void msiobj_unlock(MSIOBJECTHDR *) DECLSPEC_HIDDEN
static char * strdupWtoA(LPCWSTR str)
void msi_dialog_destroy(msi_dialog *) DECLSPEC_HIDDEN
int msi_get_property_int(MSIDATABASE *package, LPCWSTR prop, int def) DECLSPEC_HIDDEN
UINT WINAPI MsiCreateAndVerifyInstallerDirectory(DWORD)
UINT msi_get_suminfo(IStorage *stg, UINT uiUpdateCount, MSISUMMARYINFO **si) DECLSPEC_HIDDEN
LANGID WINAPI MsiLoadStringA(MSIHANDLE, UINT, LPSTR, int, LANGID)
UINT msi_set_original_database_property(MSIDATABASE *, const WCHAR *) DECLSPEC_HIDDEN
UINT msi_save_string_table(const string_table *st, IStorage *storage, UINT *bytes_per_strref) DECLSPEC_HIDDEN
void dump_record(MSIRECORD *) DECLSPEC_HIDDEN
UINT ACTION_UnregisterClassInfo(MSIPACKAGE *package) DECLSPEC_HIDDEN
UINT MSIREG_OpenUserDataPatchKey(LPCWSTR szPatch, MSIINSTALLCONTEXT dwContext, HKEY *key, BOOL create) DECLSPEC_HIDDEN
void msi_event_cleanup_all_subscriptions(MSIPACKAGE *) DECLSPEC_HIDDEN
UINT ACTION_UnregisterExtensionInfo(MSIPACKAGE *package) DECLSPEC_HIDDEN
LPWSTR msi_dup_property(MSIDATABASE *db, LPCWSTR prop) DECLSPEC_HIDDEN
UINT MSI_RecordCopyField(MSIRECORD *, UINT, MSIRECORD *, UINT) DECLSPEC_HIDDEN
UINT ready_media(MSIPACKAGE *package, BOOL compressed, MSIMEDIAINFO *mi) DECLSPEC_HIDDEN
BOOL MSI_RecordIsNull(MSIRECORD *, UINT) DECLSPEC_HIDDEN
MSIFEATURE * msi_get_loaded_feature(MSIPACKAGE *package, const WCHAR *Feature) DECLSPEC_HIDDEN
void msi_dialog_unregister_class(void) DECLSPEC_HIDDEN
UINT WINAPI MsiDecomposeDescriptorW(LPCWSTR, LPWSTR, LPWSTR, LPWSTR, LPDWORD)
void ACTION_FinishCustomActions(const MSIPACKAGE *package) DECLSPEC_HIDDEN
enum _msi_file_state msi_file_state
LONG msi_reg_set_subkey_val(HKEY hkey, LPCWSTR path, LPCWSTR name, LPCWSTR val) DECLSPEC_HIDDEN
UINT MSIREG_DeleteUserDataComponentKey(LPCWSTR szComponent, LPCWSTR szUserSid) DECLSPEC_HIDDEN
struct tagMSIASSEMBLY MSIASSEMBLY
UINT ACTION_RegisterExtensionInfo(MSIPACKAGE *package) DECLSPEC_HIDDEN
LONG msi_reg_set_val_dword(HKEY hkey, LPCWSTR name, DWORD val) DECLSPEC_HIDDEN
void MSI_CloseRecord(MSIOBJECTHDR *) DECLSPEC_HIDDEN
VOID(* msihandledestructor)(MSIOBJECTHDR *)
INT MSI_ProcessMessageVerbatim(MSIPACKAGE *, INSTALLMESSAGE, MSIRECORD *) DECLSPEC_HIDDEN
struct tagMSICOMPONENT MSICOMPONENT
UINT MSI_SetInstallLevel(MSIPACKAGE *package, int iInstallLevel) DECLSPEC_HIDDEN
UINT msi_set_string_table_codepage(string_table *st, UINT codepage) DECLSPEC_HIDDEN
UINT ACTION_RegisterProgIdInfo(MSIPACKAGE *package) DECLSPEC_HIDDEN
HRESULT create_msiserver(IUnknown *pOuter, LPVOID *ppObj) DECLSPEC_HIDDEN
LONG msi_reg_set_val_str(HKEY hkey, LPCWSTR name, LPCWSTR value) DECLSPEC_HIDDEN
WCHAR * msi_get_assembly_path(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
UINT msi_load_all_features(MSIPACKAGE *package) DECLSPEC_HIDDEN
struct tagMSIFILEPATCH MSIFILEPATCH
LPWSTR msi_get_suminfo_product(IStorage *stg) DECLSPEC_HIDDEN
UINT msi_install_assembly(MSIPACKAGE *, MSICOMPONENT *) DECLSPEC_HIDDEN
UINT ACTION_UnregisterFonts(MSIPACKAGE *package) DECLSPEC_HIDDEN
string_table * msi_load_string_table(IStorage *stg, UINT *bytes_per_strref) DECLSPEC_HIDDEN
UINT msi_package_add_media_disk(MSIPACKAGE *, DWORD, DWORD, DWORD, LPWSTR, LPWSTR) DECLSPEC_HIDDEN
UINT WINAPIV MSI_OpenQuery(MSIDATABASE *, MSIQUERY **, LPCWSTR,...) DECLSPEC_HIDDEN
UINT MSI_DatabaseOpenViewW(MSIDATABASE *, LPCWSTR, MSIQUERY **) DECLSPEC_HIDDEN
BOOL decode_streamname(LPCWSTR in, LPWSTR out) DECLSPEC_HIDDEN
INT ACTION_DialogBox(MSIPACKAGE *, LPCWSTR) DECLSPEC_HIDDEN
UINT msi_create_empty_local_file(LPWSTR path, LPCWSTR suffix) DECLSPEC_HIDDEN
struct tagMSIRECORD MSIRECORD
UINT msi_clone_properties(MSIDATABASE *) DECLSPEC_HIDDEN
UINT write_stream_data(IStorage *stg, LPCWSTR stname, LPCVOID data, UINT sz, BOOL bTable) DECLSPEC_HIDDEN
UINT msi_locate_product(LPCWSTR szProduct, MSIINSTALLCONTEXT *context) DECLSPEC_HIDDEN
void enum_stream_names(IStorage *stg) DECLSPEC_HIDDEN
BOOL msi_reg_get_val_dword(HKEY hkey, LPCWSTR name, DWORD *val) DECLSPEC_HIDDEN
UINT msi_parse_command_line(MSIPACKAGE *package, LPCWSTR szCommandLine, BOOL preserve_case) DECLSPEC_HIDDEN
UINT MSIREG_OpenInstallProps(LPCWSTR szProduct, MSIINSTALLCONTEXT dwContext, LPCWSTR szUserSid, HKEY *key, BOOL create) DECLSPEC_HIDDEN
struct tagComponentList ComponentList
void msi_free_media_info(MSIMEDIAINFO *mi) DECLSPEC_HIDDEN
UINT msi_get_filehash(MSIPACKAGE *, const WCHAR *, MSIFILEHASHINFO *) DECLSPEC_HIDDEN
UINT MSI_RecordSetStringW(MSIRECORD *, UINT, LPCWSTR) DECLSPEC_HIDDEN
BOOL msi_is_global_assembly(MSICOMPONENT *) DECLSPEC_HIDDEN
UINT ACTION_RegisterMIMEInfo(MSIPACKAGE *package) DECLSPEC_HIDDEN
void append_storage_to_db(MSIDATABASE *db, IStorage *stg) DECLSPEC_HIDDEN
UINT MSI_ViewGetColumnInfo(MSIQUERY *, MSICOLINFO, MSIRECORD **) DECLSPEC_HIDDEN
MSIHANDLE alloc_msi_remote_handle(MSIHANDLE remote) DECLSPEC_HIDDEN
DWORD msi_get_file_version_info(MSIPACKAGE *, const WCHAR *, DWORD, BYTE *) DECLSPEC_HIDDEN
struct tagMSIFOLDER MSIFOLDER
struct tagMSIMEDIADISK MSIMEDIADISK
UINT MSI_ViewExecute(MSIQUERY *, MSIRECORD *) DECLSPEC_HIDDEN
UINT msi_record_set_string(MSIRECORD *, UINT, const WCHAR *, int) DECLSPEC_HIDDEN
IAssemblyEnum * msi_create_assembly_enum(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
DWORD msi_get_file_attributes(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
MSIHANDLE alloc_msihandle(MSIOBJECTHDR *) DECLSPEC_HIDDEN
UINT msi_get_db_suminfo(MSIDATABASE *db, UINT uiUpdateCount, MSISUMMARYINFO **si) DECLSPEC_HIDDEN
UINT MSIREG_OpenClassesUpgradeCodesKey(LPCWSTR szUpgradeCode, HKEY *key, BOOL create) DECLSPEC_HIDDEN
struct tagMSIDATABASE MSIDATABASE
struct tagMSISUMMARYINFO MSISUMMARYINFO
BOOL encode_base85_guid(GUID *, LPWSTR) DECLSPEC_HIDDEN
UINT MSI_OpenPackageW(LPCWSTR szPackage, DWORD dwOptions, MSIPACKAGE **pPackage) DECLSPEC_HIDDEN
UINT ACTION_PatchFiles(MSIPACKAGE *package) DECLSPEC_HIDDEN
WCHAR * msi_get_error_message(MSIDATABASE *, int) DECLSPEC_HIDDEN
INT replace(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], DWORD dwFlags, BOOL *doMore)
struct _column_info * next
BOOL RunAsInteractiveUser
LPWSTR DefInprocHandler32
unsigned int hasLocalFeature
unsigned int hasAdvertisedFeature
unsigned int hasSourceFeature
INSTALLSTATE ActionRequest
UINT num_streams_allocated
UINT media_transform_disk_id
UINT media_transform_offset
INSTALLSTATE ActionRequest
union tagMSIFIELD::@500 u
msihandledestructor destructor
WCHAR DWORD const WCHAR void IUnknown IAssemblyName void *IAssemblyCache * cache_net[CLR_VERSION_MAX]
HANDLE custom_server_64_process
struct list subscriptions
HANDLE custom_server_32_pipe
unsigned char commit_action_running
struct list RunningActions
WCHAR DWORD const WCHAR DWORD
unsigned char rollback_action_running
IAssemblyCache * cache_sxs
HANDLE custom_server_64_pipe
struct list cabinet_streams
unsigned char rpc_server_started
UINT action_progress_increment
WCHAR DWORD const WCHAR void IUnknown IAssemblyName DWORD
struct list sourcelist_media
LPWSTR LastActionTemplate
LPWSTR * script_actions[SCRIPT_MAX]
unsigned char scheduled_action_running
unsigned char need_reboot_now
unsigned char need_reboot_at_end
HANDLE custom_server_32_process
unsigned char need_rollback
int script_actions_count[SCRIPT_MAX]
struct list sourcelist_info
UINT(* insert_row)(struct tagMSIVIEW *view, MSIRECORD *record, UINT row, BOOL temporary)
UINT(* sort)(struct tagMSIVIEW *view, column_info *columns)
UINT(* set_row)(struct tagMSIVIEW *view, UINT row, MSIRECORD *rec, UINT mask)
UINT(* add_column)(struct tagMSIVIEW *view, LPCWSTR column, INT type, BOOL hold)
UINT(* set_stream)(struct tagMSIVIEW *view, UINT row, UINT col, IStream *stream)
UINT(* fetch_int)(struct tagMSIVIEW *view, UINT row, UINT col, UINT *val)
UINT(* set_string)(struct tagMSIVIEW *view, UINT row, UINT col, const WCHAR *val, int len)
UINT(* fetch_stream)(struct tagMSIVIEW *view, UINT row, UINT col, IStream **stm)
UINT(* modify)(struct tagMSIVIEW *view, MSIMODIFY eModifyMode, MSIRECORD *record, UINT row)
UINT(* add_ref)(struct tagMSIVIEW *view)
UINT(* release)(struct tagMSIVIEW *view)
UINT(* close)(struct tagMSIVIEW *view)
UINT(* get_dimensions)(struct tagMSIVIEW *view, UINT *rows, UINT *cols)
UINT(* execute)(struct tagMSIVIEW *view, MSIRECORD *record)
UINT(* get_column_info)(struct tagMSIVIEW *view, UINT n, LPCWSTR *name, UINT *type, BOOL *temporary, LPCWSTR *table_name)
UINT(* set_int)(struct tagMSIVIEW *view, UINT row, UINT col, int val)
UINT(* delete_row)(struct tagMSIVIEW *view, UINT row)
UINT(* drop)(struct tagMSIVIEW *view)
const WCHAR * error_column
#define __WINE_ALLOC_SIZE(x)