[PATCH 5/5] msi: Implement UI messages in MsiOpenPackage().
Hans Leidekker
hans at codeweavers.com
Mon Jun 26 04:09:33 CDT 2017
> @@ -1610,6 +1617,35 @@ UINT MSI_OpenPackageW(LPCWSTR szPackage, MSIPACKAGE **pPackage)
> if (gszLogFile)
> package->log_file = CreateFileW( gszLogFile, GENERIC_WRITE, FILE_SHARE_WRITE, NULL,
> OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL );
> +
> + /* FIXME: when should these messages be sent? */
> + data_row = MSI_CreateRecord(3);
> + /* FIXME: field 0 should be NULL */
> + MSI_RecordSetInteger(data_row, 1, 0);
> + MSI_RecordSetInteger(data_row, 2, package->num_langids ? package->langids[0] : 0);
> + MSI_RecordSetInteger(data_row, 3, msi_get_string_table_codepage(package->db->strings));
> + MSI_ProcessMessage(package, INSTALLMESSAGE_COMMONDATA, data_row);
> +
> + info_row = MSI_CreateRecord(0);
> + GetTimeFormatW(LOCALE_USER_DEFAULT, 0, NULL, time_format, timet, 100);
> + GetDateFormatW(LOCALE_USER_DEFAULT, 0, NULL, date_format, datet, 100);
> + LoadStringW(msi_hInstance, IDS_INFO_LOGGINGSTART, info_template, 1024);
> + sprintfW(info_message, info_template, datet, timet);
> + MSI_RecordSetStringW(info_row, 0, info_message);
> + MSI_ProcessMessage(package, INSTALLMESSAGE_INFO|MB_ICONHAND, info_row);
> +
> + MSI_ProcessMessage(package, INSTALLMESSAGE_COMMONDATA, data_row);
> +
> + productname = msi_dup_property(package->db, INSTALLPROPERTY_PRODUCTNAMEW);
> + MSI_RecordSetInteger(data_row, 1, 1);
> + MSI_RecordSetStringW(data_row, 2, productname);
> + MSI_RecordSetStringW(data_row, 3, NULL);
> + MSI_ProcessMessage(package, INSTALLMESSAGE_COMMONDATA, data_row);
Error handling.
More information about the wine-devel
mailing list