ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

action.c File Reference
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "winerror.h"
#include "winreg.h"
#include "winsvc.h"
#include "odbcinst.h"
#include "wine/debug.h"
#include "msidefs.h"
#include "msipriv.h"
#include "winuser.h"
#include "shlobj.h"
#include "objbase.h"
#include "mscoree.h"
#include "shlwapi.h"
#include "imagehlp.h"
#include "wine/unicode.h"
#include "winver.h"

Go to the source code of this file.

Data Structures

struct  _ilfs
struct  typelib_struct

Defines

#define COBJMACROS
#define REG_PROGRESS_VALUE   13200
#define COMPONENT_PROGRESS_VALUE   24000
#define ENV_ACT_SETALWAYS   0x1
#define ENV_ACT_SETABSENT   0x2
#define ENV_ACT_REMOVE   0x4
#define ENV_ACT_REMOVEMATCH   0x8
#define ENV_MOD_MACHINE   0x20000000
#define ENV_MOD_APPEND   0x40000000
#define ENV_MOD_PREFIX   0x80000000
#define ENV_MOD_MASK   0xC0000000
#define check_flag_combo(x, y)   ((x) & ~(y)) == (y)

Enumerations

enum  parse_state {
  STATE_NONE, STATE_OK, STATE_MULTILINE, STATE_DONE,
  STATE_ROOT, STATE_CONFIGURATION, STATE_STARTUP, STATE_UNKNOWN,
  state_whitespace, state_token, state_quote
}

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (msi)
static void ui_actionstart (MSIPACKAGE *package, LPCWSTR action)
static void ui_actioninfo (MSIPACKAGE *package, LPCWSTR action, BOOL start, UINT rc)
static int parse_prop (const WCHAR *str, WCHAR *value, int *quotes)
static void remove_quotes (WCHAR *str)
UINT msi_parse_command_line (MSIPACKAGE *package, LPCWSTR szCommandLine, BOOL preserve_case)
WCHAR ** msi_split_string (const WCHAR *str, WCHAR sep)
static BOOL ui_sequence_exists (MSIPACKAGE *package)
UINT msi_set_sourcedir_props (MSIPACKAGE *package, BOOL replace)
static BOOL needs_ui_sequence (MSIPACKAGE *package)
UINT msi_set_context (MSIPACKAGE *package)
static UINT ITERATE_Actions (MSIRECORD *row, LPVOID param)
UINT MSI_Sequence (MSIPACKAGE *package, LPCWSTR table)
static UINT ACTION_ProcessExecSequence (MSIPACKAGE *package, BOOL UIran)
static UINT ACTION_ProcessUISequence (MSIPACKAGE *package)
static BOOL ACTION_HandleCustomAction (MSIPACKAGE *package, LPCWSTR action, UINT *rc, UINT script, BOOL force)
MSICOMPONENTmsi_get_loaded_component (MSIPACKAGE *package, const WCHAR *Component)
MSIFEATUREmsi_get_loaded_feature (MSIPACKAGE *package, const WCHAR *Feature)
MSIFILEmsi_get_loaded_file (MSIPACKAGE *package, const WCHAR *key)
MSIFILEPATCHmsi_get_loaded_filepatch (MSIPACKAGE *package, const WCHAR *key)
MSIFOLDERmsi_get_loaded_folder (MSIPACKAGE *package, const WCHAR *dir)
BOOL msi_create_full_path (const WCHAR *path)
void msi_ui_progress (MSIPACKAGE *package, int a, int b, int c, int d)
void msi_ui_actiondata (MSIPACKAGE *package, const WCHAR *action, MSIRECORD *record)
INSTALLSTATE msi_get_component_action (MSIPACKAGE *package, MSICOMPONENT *comp)
INSTALLSTATE msi_get_feature_action (MSIPACKAGE *package, MSIFEATURE *feature)
static UINT ITERATE_CreateFolders (MSIRECORD *row, LPVOID param)
static UINT ACTION_CreateFolders (MSIPACKAGE *package)
static void remove_persistent_folder (MSIFOLDER *folder)
static UINT ITERATE_RemoveFolders (MSIRECORD *row, LPVOID param)
static UINT ACTION_RemoveFolders (MSIPACKAGE *package)
static UINT load_component (MSIRECORD *row, LPVOID param)
UINT msi_load_all_components (MSIPACKAGE *package)
static UINT add_feature_component (MSIFEATURE *feature, MSICOMPONENT *comp)
static UINT add_feature_child (MSIFEATURE *parent, MSIFEATURE *child)
static UINT iterate_load_featurecomponents (MSIRECORD *row, LPVOID param)
static UINT load_feature (MSIRECORD *row, LPVOID param)
static UINT find_feature_children (MSIRECORD *row, LPVOID param)
UINT msi_load_all_features (MSIPACKAGE *package)
static LPWSTR folder_split_path (LPWSTR p, WCHAR ch)
static UINT load_file_hash (MSIPACKAGE *package, MSIFILE *file)
static UINT load_file_disk_id (MSIPACKAGE *package, MSIFILE *file)
static UINT load_file (MSIRECORD *row, LPVOID param)
static UINT load_all_files (MSIPACKAGE *package)
static UINT load_media (MSIRECORD *row, LPVOID param)
static UINT load_all_media (MSIPACKAGE *package)
static UINT load_patch (MSIRECORD *row, LPVOID param)
static UINT load_all_patches (MSIPACKAGE *package)
static UINT load_folder_persistence (MSIPACKAGE *package, MSIFOLDER *folder)
static UINT load_folder (MSIRECORD *row, LPVOID param)
static UINT add_folder_child (MSIFOLDER *parent, MSIFOLDER *child)
static UINT find_folder_children (MSIRECORD *row, LPVOID param)
static UINT load_all_folders (MSIPACKAGE *package)
static UINT ACTION_CostInitialize (MSIPACKAGE *package)
static UINT execute_script_action (MSIPACKAGE *package, UINT script, UINT index)
static UINT execute_script (MSIPACKAGE *package, UINT script)
static UINT ACTION_FileCost (MSIPACKAGE *package)
static void ACTION_GetComponentInstallStates (MSIPACKAGE *package)
static void ACTION_GetFeatureInstallStates (MSIPACKAGE *package)
static BOOL is_feature_selected (MSIFEATURE *feature, INT level)
static BOOL process_state_property (MSIPACKAGE *package, int level, LPCWSTR property, INSTALLSTATE state)
static BOOL process_overrides (MSIPACKAGE *package, int level)
UINT MSI_SetFeatureStates (MSIPACKAGE *package)
static UINT ITERATE_CostFinalizeConditions (MSIRECORD *row, LPVOID param)
VS_FIXEDFILEINFOmsi_get_disk_file_version (LPCWSTR filename)
int msi_compare_file_versions (VS_FIXEDFILEINFO *fi, const WCHAR *version)
int msi_compare_font_versions (const WCHAR *ver1, const WCHAR *ver2)
DWORD msi_get_disk_file_size (LPCWSTR filename)
BOOL msi_file_hash_matches (MSIFILE *file)
static WCHARget_temp_dir (void)
WCHARmsi_build_directory_name (DWORD count,...)
static void set_target_path (MSIPACKAGE *package, MSIFILE *file)
static UINT calculate_file_cost (MSIPACKAGE *package)
WCHARmsi_normalize_path (const WCHAR *in)
void msi_resolve_target_folder (MSIPACKAGE *package, const WCHAR *name, BOOL load_prop)
static UINT ACTION_CostFinalize (MSIPACKAGE *package)
static LPSTR parse_value (MSIPACKAGE *package, LPCWSTR value, DWORD *type, DWORD *size)
static const WCHARget_root_key (MSIPACKAGE *package, INT root, HKEY *root_key)
static WCHARget_keypath (MSIPACKAGE *package, HKEY root, const WCHAR *path)
static UINT ITERATE_WriteRegistryValues (MSIRECORD *row, LPVOID param)
static UINT ACTION_WriteRegistryValues (MSIPACKAGE *package)
static void delete_reg_value (HKEY root, const WCHAR *keypath, const WCHAR *value)
static void delete_reg_key (HKEY root, const WCHAR *keypath)
static UINT ITERATE_RemoveRegistryValuesOnUninstall (MSIRECORD *row, LPVOID param)
static UINT ITERATE_RemoveRegistryValuesOnInstall (MSIRECORD *row, LPVOID param)
static UINT ACTION_RemoveRegistryValues (MSIPACKAGE *package)
static UINT ACTION_InstallInitialize (MSIPACKAGE *package)
static UINT ACTION_InstallValidate (MSIPACKAGE *package)
static UINT ITERATE_LaunchConditions (MSIRECORD *row, LPVOID param)
static UINT ACTION_LaunchConditions (MSIPACKAGE *package)
static LPWSTR resolve_keypath (MSIPACKAGE *package, MSICOMPONENT *cmp)
static HKEY openSharedDLLsKey (void)
static UINT ACTION_GetSharedDLLsCount (LPCWSTR dll)
static UINT ACTION_WriteSharedDLLsCount (LPCWSTR path, UINT count)
static void ACTION_RefCountComponent (MSIPACKAGE *package, MSICOMPONENT *comp)
static WCHARbuild_full_keypath (MSIPACKAGE *package, MSICOMPONENT *comp)
static UINT ACTION_ProcessComponents (MSIPACKAGE *package)
static BOOL CALLBACK Typelib_EnumResNameProc (HMODULE hModule, LPCWSTR lpszType, LPWSTR lpszName, LONG_PTR lParam)
static UINT ITERATE_RegisterTypeLibraries (MSIRECORD *row, LPVOID param)
static UINT ACTION_RegisterTypeLibraries (MSIPACKAGE *package)
static UINT ITERATE_UnregisterTypeLibraries (MSIRECORD *row, LPVOID param)
static UINT ACTION_UnregisterTypeLibraries (MSIPACKAGE *package)
static WCHARget_link_file (MSIPACKAGE *package, MSIRECORD *row)
WCHARmsi_build_icon_path (MSIPACKAGE *package, const WCHAR *icon_name)
static UINT ITERATE_CreateShortcuts (MSIRECORD *row, LPVOID param)
static UINT ACTION_CreateShortcuts (MSIPACKAGE *package)
static UINT ITERATE_RemoveShortcuts (MSIRECORD *row, LPVOID param)
static UINT ACTION_RemoveShortcuts (MSIPACKAGE *package)
static UINT ITERATE_PublishIcon (MSIRECORD *row, LPVOID param)
static UINT msi_publish_icons (MSIPACKAGE *package)
static UINT msi_publish_sourcelist (MSIPACKAGE *package, HKEY hkey)
static UINT msi_publish_product_properties (MSIPACKAGE *package, HKEY hkey)
static UINT msi_publish_upgrade_code (MSIPACKAGE *package)
static BOOL msi_check_publish (MSIPACKAGE *package)
static BOOL msi_check_unpublish (MSIPACKAGE *package)
static UINT msi_publish_patches (MSIPACKAGE *package)
static UINT ACTION_PublishProduct (MSIPACKAGE *package)
static WCHARget_ini_file_name (MSIPACKAGE *package, MSIRECORD *row)
static UINT ITERATE_WriteIniValues (MSIRECORD *row, LPVOID param)
static UINT ACTION_WriteIniValues (MSIPACKAGE *package)
static UINT ITERATE_RemoveIniValuesOnUninstall (MSIRECORD *row, LPVOID param)
static UINT ITERATE_RemoveIniValuesOnInstall (MSIRECORD *row, LPVOID param)
static UINT ACTION_RemoveIniValues (MSIPACKAGE *package)
static void register_dll (const WCHAR *dll, BOOL unregister)
static UINT ITERATE_SelfRegModules (MSIRECORD *row, LPVOID param)
static UINT ACTION_SelfRegModules (MSIPACKAGE *package)
static UINT ITERATE_SelfUnregModules (MSIRECORD *row, LPVOID param)
static UINT ACTION_SelfUnregModules (MSIPACKAGE *package)
static UINT ACTION_PublishFeatures (MSIPACKAGE *package)
static UINT msi_unpublish_feature (MSIPACKAGE *package, MSIFEATURE *feature)
static UINT ACTION_UnpublishFeatures (MSIPACKAGE *package)
static UINT msi_publish_install_properties (MSIPACKAGE *package, HKEY hkey)
static UINT ACTION_RegisterProduct (MSIPACKAGE *package)
static UINT ACTION_InstallExecute (MSIPACKAGE *package)
static UINT ITERATE_UnpublishIcon (MSIRECORD *row, LPVOID param)
static UINT msi_unpublish_icons (MSIPACKAGE *package)
static UINT msi_unpublish_product (MSIPACKAGE *package, const WCHAR *remove)
static UINT ACTION_InstallFinalize (MSIPACKAGE *package)
UINT ACTION_ForceReboot (MSIPACKAGE *package)
WCHARmsi_build_error_string (MSIPACKAGE *package, UINT error, DWORD count,...)
static UINT ACTION_ResolveSource (MSIPACKAGE *package)
static UINT ACTION_RegisterUser (MSIPACKAGE *package)
static UINT ACTION_ExecuteAction (MSIPACKAGE *package)
WCHARmsi_create_component_advertise_string (MSIPACKAGE *package, MSICOMPONENT *component, const WCHAR *feature)
static UINT ITERATE_PublishComponent (MSIRECORD *rec, LPVOID param)
static UINT ACTION_PublishComponents (MSIPACKAGE *package)
static UINT ITERATE_UnpublishComponent (MSIRECORD *rec, LPVOID param)
static UINT ACTION_UnpublishComponents (MSIPACKAGE *package)
static UINT ITERATE_InstallService (MSIRECORD *rec, LPVOID param)
static UINT ACTION_InstallServices (MSIPACKAGE *package)
static LPCWSTRmsi_service_args_to_vector (LPWSTR args, DWORD *numargs)
static UINT ITERATE_StartService (MSIRECORD *rec, LPVOID param)
static UINT ACTION_StartServices (MSIPACKAGE *package)
static BOOL stop_service_dependents (SC_HANDLE scm, SC_HANDLE service)
static UINT stop_service (LPCWSTR name)
static UINT ITERATE_StopService (MSIRECORD *rec, LPVOID param)
static UINT ACTION_StopServices (MSIPACKAGE *package)
static UINT ITERATE_DeleteService (MSIRECORD *rec, LPVOID param)
static UINT ACTION_DeleteServices (MSIPACKAGE *package)
static UINT ITERATE_InstallODBCDriver (MSIRECORD *rec, LPVOID param)
static UINT ITERATE_InstallODBCTranslator (MSIRECORD *rec, LPVOID param)
static UINT ITERATE_InstallODBCDataSource (MSIRECORD *rec, LPVOID param)
static UINT ACTION_InstallODBC (MSIPACKAGE *package)
static UINT ITERATE_RemoveODBCDriver (MSIRECORD *rec, LPVOID param)
static UINT ITERATE_RemoveODBCTranslator (MSIRECORD *rec, LPVOID param)
static UINT ITERATE_RemoveODBCDataSource (MSIRECORD *rec, LPVOID param)
static UINT ACTION_RemoveODBC (MSIPACKAGE *package)
static UINT env_parse_flags (LPCWSTR *name, LPCWSTR *value, DWORD *flags)
static UINT open_env_key (DWORD flags, HKEY *key)
static UINT ITERATE_WriteEnvironmentString (MSIRECORD *rec, LPVOID param)
static UINT ACTION_WriteEnvironmentStrings (MSIPACKAGE *package)
static UINT ITERATE_RemoveEnvironmentString (MSIRECORD *rec, LPVOID param)
static UINT ACTION_RemoveEnvironmentStrings (MSIPACKAGE *package)
UINT msi_validate_product_id (MSIPACKAGE *package)
static UINT ACTION_ValidateProductID (MSIPACKAGE *package)
static UINT ACTION_ScheduleReboot (MSIPACKAGE *package)
static UINT ACTION_AllocateRegistrySpace (MSIPACKAGE *package)
static UINT ACTION_DisableRollback (MSIPACKAGE *package)
static UINT ACTION_InstallAdminPackage (MSIPACKAGE *package)
static UINT ACTION_SetODBCFolders (MSIPACKAGE *package)
static UINT ITERATE_RemoveExistingProducts (MSIRECORD *rec, LPVOID param)
static UINT ACTION_RemoveExistingProducts (MSIPACKAGE *package)
static UINT ITERATE_MigrateFeatureStates (MSIRECORD *rec, LPVOID param)
static UINT ACTION_MigrateFeatureStates (MSIPACKAGE *package)
static void bind_image (const char *filename, const char *path)
static UINT ITERATE_BindImage (MSIRECORD *rec, LPVOID param)
static UINT ACTION_BindImage (MSIPACKAGE *package)
static UINT msi_unimplemented_action_stub (MSIPACKAGE *package, LPCSTR action, LPCWSTR table)
static UINT ACTION_IsolateComponents (MSIPACKAGE *package)
static UINT ACTION_RMCCPSearch (MSIPACKAGE *package)
static UINT ACTION_RegisterComPlus (MSIPACKAGE *package)
static UINT ACTION_UnregisterComPlus (MSIPACKAGE *package)
static UINT ACTION_InstallSFPCatalogFile (MSIPACKAGE *package)
static BOOL ACTION_HandleStandardAction (MSIPACKAGE *package, LPCWSTR action, UINT *rc)
UINT ACTION_PerformAction (MSIPACKAGE *package, const WCHAR *action, UINT script)
UINT ACTION_PerformUIAction (MSIPACKAGE *package, const WCHAR *action, UINT script)
static UINT ACTION_PerformActionSequence (MSIPACKAGE *package, UINT seq)
UINT MSI_InstallPackage (MSIPACKAGE *package, LPCWSTR szPackagePath, LPCWSTR szCommandLine)

Variables

static const WCHAR szCreateFolders []
static const WCHAR szCostFinalize []
static const WCHAR szWriteRegistryValues []
static const WCHAR szFileCost []
static const WCHAR szInstallInitialize []
static const WCHAR szInstallValidate []
static const WCHAR szLaunchConditions []
static const WCHAR szProcessComponents []
static const WCHAR szRegisterTypeLibraries []
static const WCHAR szCreateShortcuts []
static const WCHAR szPublishProduct []
static const WCHAR szWriteIniValues []
static const WCHAR szSelfRegModules []
static const WCHAR szPublishFeatures []
static const WCHAR szRegisterProduct []
static const WCHAR szInstallExecute []
static const WCHAR szInstallExecuteAgain []
static const WCHAR szInstallFinalize []
static const WCHAR szForceReboot []
static const WCHAR szResolveSource []
static const WCHAR szAllocateRegistrySpace []
static const WCHAR szBindImage []
static const WCHAR szDeleteServices []
static const WCHAR szDisableRollback []
static const WCHAR szExecuteAction []
static const WCHAR szInstallAdminPackage []
static const WCHAR szInstallSFPCatalogFile []
static const WCHAR szIsolateComponents []
static const WCHAR szMigrateFeatureStates []
static const WCHAR szMsiUnpublishAssemblies []
static const WCHAR szInstallODBC []
static const WCHAR szInstallServices []
static const WCHAR szPublishComponents []
static const WCHAR szRegisterComPlus []
static const WCHAR szRegisterUser []
static const WCHAR szRemoveEnvironmentStrings []
static const WCHAR szRemoveExistingProducts []
static const WCHAR szRemoveFolders []
static const WCHAR szRemoveIniValues []
static const WCHAR szRemoveODBC []
static const WCHAR szRemoveRegistryValues []
static const WCHAR szRemoveShortcuts []
static const WCHAR szRMCCPSearch []
static const WCHAR szScheduleReboot []
static const WCHAR szSelfUnregModules []
static const WCHAR szSetODBCFolders []
static const WCHAR szStartServices []
static const WCHAR szStopServices []
static const WCHAR szUnpublishComponents []
static const WCHAR szUnpublishFeatures []
static const WCHAR szUnregisterComPlus []
static const WCHAR szUnregisterTypeLibraries []
static const WCHAR szValidateProductID []
static const WCHAR szWriteEnvironmentStrings []
struct {
   const WCHAR *   action
   UINT(*   handler )(MSIPACKAGE *)
   const WCHAR *   action_rollback
StandardActions []

Generated on Sun May 27 2012 05:14:21 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.