https://git.reactos.org/?p=reactos.git;a=commitdiff;h=71bffdcde96c8b1769bfc…
commit 71bffdcde96c8b1769bfc6b2e8c7888663ad265e
Author: Amine Khaldi <amine.khaldi(a)reactos.org>
AuthorDate: Sun Oct 8 09:14:40 2017 +0100
[MSI] Sync with Wine Staging 2.16. CORE-13762
cb4c1dc msi: Always return MSIDBSTATE_ERROR when MsiGetDatabaseState is called from a
custom action.
04d242d msi: Create dummy thread to initialize COM for custom actions.
52fbaeb msi: Add support for ActionText table.
700ebc8 msi: Return the correct values from dialogs.
a3dd99c msi: Return the current date and time.
4ccc82a msi: Use the Error table for more messages.
77e3d33 msi: Use MsiProcessMessage() to send error messages.
3ca2dfe msi: Avoid uninitialized pointer access on error path (Coverity).
d631714 msi: Add a trailing linefeed to a FIXME() trace.
39c2ff0 msi: Send the dialog created message in dialog_create().
14f865e msi: Don't queue a parent dialog to be shown in EndDialog.
8826584 msi: Process ShowDialog/EndDialog after all other control events.
44fb23d msi: Don't set _BrowseProperty.
b4c39f4 msi: Avoid a null pointer dereference.
51bd884 msi: Properly parse empty format strings.
16f0dff msi: Return the correct values from custom actions.
f348c7c msi: Rewrite dump_record().
f9c68df msi: Use the given record for INSTALLMESSAGE_ACTIONDATA.
c788ed85 msi: Provide the result of the last action.
1505912 msi: Allow setting NULL in MsiSetInteger().
f9f53fe msi: Correctly format the template field for MsiProcessMessage().
3033dae msi: Implement UI messages for dialogs.
5da9250 msi: Don't increment the refcount when creating dialogs.
48237e2 msi: Add a basic internal UI implementation.
39b841d msi: Fix a buffer overrun.
9032279 msi: Implement UI messages in MsiOpenPackage().
bcc4a04 msi: Implement INSTALLMESSAGE_INITIALIZE and INSTALLMESSAGE_TERMINATE.
a388906 msi: Send the correct UI messages upon calling MsiDoAction().
de5246a msi: Don't reimplement record formatting.
4e49ae3cc msi: Pass the given record to the callback.
df31a7c msi: Store string and record callback data separately.
cef6799 msi: Use an external UI record handler before a string handler.
---
dll/win32/msi/action.c | 529 +++++++++++++++++++++----------------------
dll/win32/msi/appsearch.c | 2 +-
dll/win32/msi/assembly.c | 4 +-
dll/win32/msi/classes.c | 16 +-
dll/win32/msi/custom.c | 2 +-
dll/win32/msi/database.c | 17 +-
dll/win32/msi/dialog.c | 247 +++++++++-----------
dll/win32/msi/files.c | 12 +-
dll/win32/msi/font.c | 4 +-
dll/win32/msi/format.c | 89 ++++----
dll/win32/msi/lang/msi_Bg.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Da.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_De.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_En.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Es.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Fi.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Fr.rc | 165 ++++++++++++--
dll/win32/msi/lang/msi_He.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Hu.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_It.rc | 165 ++++++++++++--
dll/win32/msi/lang/msi_Ja.rc | 160 ++++++++++++-
dll/win32/msi/lang/msi_Ko.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Lt.rc | 165 ++++++++++++--
dll/win32/msi/lang/msi_Nl.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_No.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Pl.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Pt.rc | 326 ++++++++++++++++++++++++--
dll/win32/msi/lang/msi_Ro.rc | 192 +++++++++++++---
dll/win32/msi/lang/msi_Ru.rc | 165 ++++++++++++--
dll/win32/msi/lang/msi_Si.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Sq.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Sr.rc | 326 ++++++++++++++++++++++++--
dll/win32/msi/lang/msi_Sv.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Tr.rc | 164 +++++++++++++-
dll/win32/msi/lang/msi_Uk.rc | 165 ++++++++++++--
dll/win32/msi/lang/msi_Zh.rc | 327 ++++++++++++++++++++++++--
dll/win32/msi/media.c | 40 +---
dll/win32/msi/msi.c | 15 +-
dll/win32/msi/msi.rc | 43 +---
dll/win32/msi/msi_main.c | 4 +-
dll/win32/msi/msipriv.h | 16 +-
dll/win32/msi/package.c | 499 +++++++++++++++++++++++++++++-----------
dll/win32/msi/record.c | 38 +++-
dll/win32/msi/resource.h | 161 +++++++++++++
dll/win32/msi/rsrc.rc | 81 +++++++
dll/win32/msi/table.c | 19 --
dll/win32/msi/upgrade.c | 2 +-
media/doc/README.WINE | 2 +-
48 files changed, 5540 insertions(+), 1082 deletions(-)
diff --git a/dll/win32/msi/action.c b/dll/win32/msi/action.c
index cd1be04572..8c17f3b512 100644
--- a/dll/win32/msi/action.c
+++ b/dll/win32/msi/action.c
@@ -140,49 +140,56 @@ static const WCHAR szValidateProductID[] =
static const WCHAR szWriteEnvironmentStrings[] =
{'W','r','i','t','e','E','n','v','i','r','o','n','m','e','n','t','S','t','r','i','n','g','s',0};
-static void ui_actionstart(MSIPACKAGE *package, LPCWSTR action)
+struct dummy_thread
{
- static const WCHAR Query_t[] =
- {'S','E','L','E','C','T','
','*',' ','F','R','O','M','
',
- '`','A','c','t','i','o',
'n','T','e','x','t','`',' ',
- 'W','H','E','R','E', '
','`','A','c','t','i','o','n','`','
','=',
- ' ','\'','%','s','\'',0};
- MSIRECORD * row;
+ HANDLE started;
+ HANDLE stopped;
+ HANDLE thread;
+};
- row = MSI_QueryGetRecord( package->db, Query_t, action );
- if (!row)
- return;
- MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONSTART, row);
+static INT ui_actionstart(MSIPACKAGE *package, LPCWSTR action, LPCWSTR description,
LPCWSTR template)
+{
+ WCHAR query[] =
{'S','E','L','E','C','T','
','*',' ','F','R','O','M','
',
+
'`','A','c','t','i','o','n','T','e','x','t','`','
','W','H','E','R','E',' ',
+
'`','A','c','t','i','o','n','`','
','=','
','\'','%','s','\'',0};
+ MSIRECORD *row, *textrow;
+ INT rc;
+
+ textrow = MSI_QueryGetRecord(package->db, query, action);
+ if (textrow)
+ {
+ description = MSI_RecordGetString(textrow, 2);
+ template = MSI_RecordGetString(textrow, 3);
+ }
+
+ row = MSI_CreateRecord(3);
+ if (!row) return -1;
+ MSI_RecordSetStringW(row, 1, action);
+ MSI_RecordSetStringW(row, 2, description);
+ MSI_RecordSetStringW(row, 3, template);
+ rc = MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONSTART, row);
+ if (textrow) msiobj_release(&textrow->hdr);
msiobj_release(&row->hdr);
+ return rc;
}
static void ui_actioninfo(MSIPACKAGE *package, LPCWSTR action, BOOL start,
- UINT rc)
-{
- MSIRECORD * row;
- static const WCHAR template_s[]=
- {'A','c','t','i','o','n','
','s','t','a','r','t','
','%','s',':',' ',
- '%','s', '.',0};
- static const WCHAR template_e[]=
- {'A','c','t','i','o','n','
','e','n','d','e','d','
','%','s',':',' ',
- '%','s', '.','
','R','e','t','u','r','n','
','v','a','l','u','e',' ',
- '%','i','.',0};
- static const WCHAR format[] =
-
{'H','H','\'',':','\'','m','m','\'',':','\'','s','s',0};
- WCHAR message[1024];
- WCHAR timet[0x100];
-
- GetTimeFormatW(LOCALE_USER_DEFAULT, 0, NULL, format, timet, 0x100);
- if (start)
- sprintfW(message,template_s,timet,action);
- else
- sprintfW(message,template_e,timet,action,rc);
-
- row = MSI_CreateRecord(1);
- MSI_RecordSetStringW(row,1,message);
-
+ INT rc)
+{
+ MSIRECORD *row;
+ WCHAR *template;
+
+ template = msi_get_error_message(package->db, start ? MSIERR_INFO_ACTIONSTART :
MSIERR_INFO_ACTIONENDED);
+
+ row = MSI_CreateRecord(2);
+ if (!row) return;
+ MSI_RecordSetStringW(row, 0, template);
+ MSI_RecordSetStringW(row, 1, action);
+ MSI_RecordSetInteger(row, 2, start ? package->LastActionResult : rc);
MSI_ProcessMessage(package, INSTALLMESSAGE_INFO, row);
msiobj_release(&row->hdr);
+ msi_free(template);
+ if (!start) package->LastActionResult = rc;
}
enum parse_state
@@ -493,9 +500,6 @@ static UINT ITERATE_Actions(MSIRECORD *row, LPVOID param)
msi_dialog_check_messages( NULL );
- if (package->CurrentInstallState != ERROR_SUCCESS)
- rc = package->CurrentInstallState;
-
if (rc == ERROR_FUNCTION_NOT_CALLED)
rc = ERROR_SUCCESS;
@@ -601,18 +605,42 @@ static UINT ACTION_ProcessUISequence(MSIPACKAGE *package)
/********************************************************
* ACTION helper functions and functions that perform the actions
*******************************************************/
-static BOOL ACTION_HandleCustomAction( MSIPACKAGE *package, LPCWSTR action, UINT *rc,
UINT script )
+static UINT ACTION_HandleCustomAction(MSIPACKAGE *package, LPCWSTR action, UINT script)
{
- BOOL ret=FALSE;
UINT arc;
+ INT uirc;
+ uirc = ui_actionstart(package, action, NULL, NULL);
+ if (uirc == IDCANCEL)
+ return ERROR_INSTALL_USEREXIT;
+ ui_actioninfo(package, action, TRUE, 0);
arc = ACTION_CustomAction( package, action, script );
- if (arc != ERROR_CALL_NOT_IMPLEMENTED)
+ uirc = !arc;
+
+ if (arc == ERROR_FUNCTION_NOT_CALLED && needs_ui_sequence(package))
{
- *rc = arc;
- ret = TRUE;
+ uirc = ACTION_ShowDialog(package, action);
+ switch (uirc)
+ {
+ case -1:
+ return ERROR_SUCCESS; /* stop immediately */
+ case 0: arc = ERROR_FUNCTION_NOT_CALLED; break;
+ case 1: arc = ERROR_SUCCESS; break;
+ case 2: arc = ERROR_INSTALL_USEREXIT; break;
+ case 3: arc = ERROR_INSTALL_FAILURE; break;
+ case 4: arc = ERROR_INSTALL_SUSPEND; break;
+ case 5: arc = ERROR_MORE_DATA; break;
+ case 6: arc = ERROR_INVALID_HANDLE_STATE; break;
+ case 7: arc = ERROR_INVALID_DATA; break;
+ case 8: arc = ERROR_INSTALL_ALREADY_RUNNING; break;
+ case 9: arc = ERROR_INSTALL_PACKAGE_REJECTED; break;
+ default: arc = ERROR_FUNCTION_FAILED; break;
+ }
}
- return ret;
+
+ ui_actioninfo(package, action, FALSE, uirc);
+
+ return arc;
}
MSICOMPONENT *msi_get_loaded_component( MSIPACKAGE *package, const WCHAR *Component )
@@ -718,41 +746,6 @@ void msi_ui_progress( MSIPACKAGE *package, int a, int b, int c, int d
)
msi_dialog_check_messages( NULL );
}
-void msi_ui_actiondata( MSIPACKAGE *package, const WCHAR *action, MSIRECORD *record )
-{
- static const WCHAR query[] =
- {'S','E','L','E','C','T','
','*',' ','F','R','O','M','
',
- '`','A','c','t','i','o',
'n','T','e','x','t','`',' ',
- 'W','H','E','R','E',' ',
'`','A','c','t','i','o','n','`','
','=','
','\'','%','s','\'',0};
- WCHAR message[1024];
- MSIRECORD *row = 0;
- DWORD size;
-
- if (!package->LastAction || strcmpW( package->LastAction, action ))
- {
- if (!(row = MSI_QueryGetRecord( package->db, query, action ))) return;
-
- if (MSI_RecordIsNull( row, 3 ))
- {
- msiobj_release( &row->hdr );
- return;
- }
- /* update the cached action format */
- msi_free( package->ActionFormat );
- package->ActionFormat = msi_dup_record_field( row, 3 );
- msi_free( package->LastAction );
- package->LastAction = strdupW( action );
- msiobj_release( &row->hdr );
- }
- size = 1024;
- MSI_RecordSetStringW( record, 0, package->ActionFormat );
- MSI_FormatRecordW( package, record, message, &size );
- row = MSI_CreateRecord( 1 );
- MSI_RecordSetStringW( row, 1, message );
- MSI_ProcessMessage( package, INSTALLMESSAGE_ACTIONDATA, row );
- msiobj_release( &row->hdr );
-}
-
INSTALLSTATE msi_get_component_action( MSIPACKAGE *package, MSICOMPONENT *comp )
{
if (!comp->Enabled)
@@ -807,7 +800,7 @@ static UINT ITERATE_CreateFolders(MSIRECORD *row, LPVOID param)
uirow = MSI_CreateRecord(1);
MSI_RecordSetStringW(uirow, 1, dir);
- msi_ui_actiondata(package, szCreateFolders, uirow);
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release(&uirow->hdr);
full_path = msi_get_target_folder( package, dir );
@@ -895,7 +888,7 @@ static UINT ITERATE_RemoveFolders( MSIRECORD *row, LPVOID param )
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, dir );
- msi_ui_actiondata( package, szRemoveFolders, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
folder = msi_get_loaded_folder( package, dir );
@@ -1551,7 +1544,7 @@ static UINT ACTION_CostInitialize(MSIPACKAGE *package)
static UINT execute_script_action( MSIPACKAGE *package, UINT script, UINT index )
{
const WCHAR *action = package->script->Actions[script][index];
- ui_actionstart( package, action );
+ ui_actionstart( package, action, NULL, NULL );
TRACE("executing %s\n", debugstr_w(action));
return ACTION_PerformAction( package, action, script );
}
@@ -2956,7 +2949,7 @@ static UINT ITERATE_WriteRegistryValues(MSIRECORD *row, LPVOID
param)
MSI_RecordSetStringW(uirow,1,uikey);
if (type == REG_SZ || type == REG_EXPAND_SZ)
MSI_RecordSetStringW(uirow, 3, (LPWSTR)new_value);
- msi_ui_actiondata( package, szWriteRegistryValues, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(new_value);
@@ -3110,7 +3103,7 @@ static UINT ITERATE_RemoveRegistryValuesOnUninstall( MSIRECORD *row,
LPVOID para
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, ui_key_str );
MSI_RecordSetStringW( uirow, 2, deformated_name );
- msi_ui_actiondata( package, szRemoveRegistryValues, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free( ui_key_str );
@@ -3173,7 +3166,7 @@ static UINT ITERATE_RemoveRegistryValuesOnInstall( MSIRECORD *row,
LPVOID param
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, ui_key_str );
MSI_RecordSetStringW( uirow, 2, deformated_name );
- msi_ui_actiondata( package, szRemoveRegistryValues, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free( ui_key_str );
@@ -3632,7 +3625,7 @@ static UINT ACTION_ProcessComponents(MSIPACKAGE *package)
MSI_RecordSetStringW(uirow,1,package->ProductCode);
MSI_RecordSetStringW(uirow,2,comp->ComponentId);
MSI_RecordSetStringW(uirow,3,comp->FullKeypath);
- msi_ui_actiondata( package, szProcessComponents, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
return ERROR_SUCCESS;
@@ -3726,7 +3719,7 @@ static UINT ITERATE_RegisterTypeLibraries(MSIRECORD *row, LPVOID
param)
TRACE("component has no key path\n");
return ERROR_SUCCESS;
}
- msi_ui_actiondata( package, szRegisterTypeLibraries, row );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, row);
module = LoadLibraryExW( file->TargetPath, NULL, LOAD_LIBRARY_AS_DATAFILE );
if (module)
@@ -3817,7 +3810,7 @@ static UINT ITERATE_UnregisterTypeLibraries( MSIRECORD *row, LPVOID
param )
TRACE("component not scheduled for removal %s\n",
debugstr_w(component));
return ERROR_SUCCESS;
}
- msi_ui_actiondata( package, szUnregisterTypeLibraries, row );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, row);
guid = MSI_RecordGetString( row, 1 );
CLSIDFromString( guid, &libid );
@@ -3931,7 +3924,7 @@ static UINT ITERATE_CreateShortcuts(MSIRECORD *row, LPVOID param)
TRACE("component not scheduled for installation %s\n",
debugstr_w(component));
return ERROR_SUCCESS;
}
- msi_ui_actiondata( package, szCreateShortcuts, row );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, row);
res = CoCreateInstance( &CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,
&IID_IShellLinkW, (LPVOID *) &sl );
@@ -4062,7 +4055,7 @@ static UINT ITERATE_RemoveShortcuts( MSIRECORD *row, LPVOID param )
TRACE("component not scheduled for removal %s\n",
debugstr_w(component));
return ERROR_SUCCESS;
}
- msi_ui_actiondata( package, szRemoveShortcuts, row );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, row);
link_file = get_link_file( package, row );
@@ -4493,7 +4486,7 @@ static UINT ACTION_PublishProduct(MSIPACKAGE *package)
end:
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, package->ProductCode );
- msi_ui_actiondata( package, szPublishProduct, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
RegCloseKey(hukey);
@@ -4599,7 +4592,7 @@ static UINT ITERATE_WriteIniValues(MSIRECORD *row, LPVOID param)
MSI_RecordSetStringW(uirow,2,deformated_section);
MSI_RecordSetStringW(uirow,3,deformated_key);
MSI_RecordSetStringW(uirow,4,deformated_value);
- msi_ui_actiondata( package, szWriteIniValues, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(fullname);
@@ -4679,7 +4672,7 @@ static UINT ITERATE_RemoveIniValuesOnUninstall( MSIRECORD *row,
LPVOID param )
MSI_RecordSetStringW( uirow, 2, deformated_section );
MSI_RecordSetStringW( uirow, 3, deformated_key );
MSI_RecordSetStringW( uirow, 4, deformated_value );
- msi_ui_actiondata( package, szRemoveIniValues, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free( deformated_key );
@@ -4740,7 +4733,7 @@ static UINT ITERATE_RemoveIniValuesOnInstall( MSIRECORD *row, LPVOID
param )
MSI_RecordSetStringW( uirow, 2, deformated_section );
MSI_RecordSetStringW( uirow, 3, deformated_key );
MSI_RecordSetStringW( uirow, 4, deformated_value );
- msi_ui_actiondata( package, szRemoveIniValues, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free( deformated_key );
@@ -4781,17 +4774,10 @@ static UINT ACTION_RemoveIniValues( MSIPACKAGE *package )
static void register_dll( const WCHAR *dll, BOOL unregister )
{
-#ifdef __REACTOS__
- static const WCHAR regW[] =
-
{'r','e','g','s','v','r','3','2','.','e','x','e','
','/','s','
','\"','%','s','\"',0};
- static const WCHAR unregW[] =
-
{'r','e','g','s','v','r','3','2','.','e','x','e','
','/','s',' ','/','u','
','\"','%','s','\"',0};
-#else /* __REACTOS__ */
static const WCHAR regW[] =
{'r','e','g','s','v','r','3','2','.','e','x','e','
','\"','%','s','\"',0};
static const WCHAR unregW[] =
{'r','e','g','s','v','r','3','2','.','e','x','e','
','/','u','
','\"','%','s','\"',0};
-#endif /* __REACTOS__ */
PROCESS_INFORMATION pi;
STARTUPINFOW si;
WCHAR *cmd;
@@ -4838,7 +4824,7 @@ static UINT ITERATE_SelfRegModules(MSIRECORD *row, LPVOID param)
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, file->File );
MSI_RecordSetStringW( uirow, 2, file->Component->Directory );
- msi_ui_actiondata( package, szSelfRegModules, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
return ERROR_SUCCESS;
@@ -4888,7 +4874,7 @@ static UINT ITERATE_SelfUnregModules( MSIRECORD *row, LPVOID param
)
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, file->File );
MSI_RecordSetStringW( uirow, 2, file->Component->Directory );
- msi_ui_actiondata( package, szSelfUnregModules, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
return ERROR_SUCCESS;
@@ -5008,7 +4994,7 @@ static UINT ACTION_PublishFeatures(MSIPACKAGE *package)
/* the UI chunk */
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, feature->Feature );
- msi_ui_actiondata( package, szPublishFeatures, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
/* FIXME: call msi_ui_progress? */
}
@@ -5045,7 +5031,7 @@ static UINT msi_unpublish_feature(MSIPACKAGE *package, MSIFEATURE
*feature)
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, feature->Feature );
- msi_ui_actiondata( package, szUnpublishFeatures, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
return ERROR_SUCCESS;
@@ -5245,7 +5231,7 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
done:
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, package->ProductCode );
- msi_ui_actiondata( package, szRegisterProduct, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
RegCloseKey(hkey);
@@ -5456,43 +5442,6 @@ UINT ACTION_ForceReboot(MSIPACKAGE *package)
return ERROR_INSTALL_SUSPEND;
}
-WCHAR *msi_build_error_string( MSIPACKAGE *package, UINT error, DWORD count, ... )
-{
- static const WCHAR query[] =
- {'S','E','L','E','C','T','
','`','M','e','s','s','a','g','e','`','
',
- 'F','R','O','M','
','`','E','r','r','o','r','`','
','W','H','E','R','E',' ',
-
'`','E','r','r','o','r','`','
','=',' ','%','i',0};
- MSIRECORD *rec, *row;
- DWORD i, size = 0;
- va_list va;
- const WCHAR *str;
- WCHAR *data;
-
- if (!(row = MSI_QueryGetRecord( package->db, query, error ))) return 0;
-
- rec = MSI_CreateRecord( count + 2 );
- str = MSI_RecordGetString( row, 1 );
- MSI_RecordSetStringW( rec, 0, str );
- msiobj_release( &row->hdr );
- MSI_RecordSetInteger( rec, 1, error );
-
- va_start( va, count );
- for (i = 0; i < count; i++)
- {
- str = va_arg( va, const WCHAR *);
- MSI_RecordSetStringW( rec, i + 2, str );
- }
- va_end( va );
-
- MSI_FormatRecordW( package, rec, NULL, &size );
- size++;
- data = msi_alloc( size * sizeof(WCHAR) );
- if (size > 1) MSI_FormatRecordW( package, rec, data, &size );
- else data[0] = 0;
- msiobj_release( &rec->hdr );
- return data;
-}
-
static UINT ACTION_ResolveSource(MSIPACKAGE* package)
{
DWORD attrib;
@@ -5510,7 +5459,8 @@ static UINT ACTION_ResolveSource(MSIPACKAGE* package)
attrib = GetFileAttributesW(package->db->path);
if (attrib == INVALID_FILE_ATTRIBUTES)
{
- LPWSTR prompt, msg;
+ MSIRECORD *record;
+ LPWSTR prompt;
DWORD size = 0;
rc = MsiSourceListGetInfoW(package->ProductCode, NULL,
@@ -5526,19 +5476,18 @@ static UINT ACTION_ResolveSource(MSIPACKAGE* package)
else
prompt = strdupW(package->db->path);
- msg = msi_build_error_string(package, 1302, 1, prompt);
+ record = MSI_CreateRecord(2);
+ MSI_RecordSetInteger(record, 1, MSIERR_INSERTDISK);
+ MSI_RecordSetStringW(record, 2, prompt);
msi_free(prompt);
while(attrib == INVALID_FILE_ATTRIBUTES)
{
- rc = MessageBoxW(NULL, msg, NULL, MB_OKCANCEL);
+ MSI_RecordSetStringW(record, 0, NULL);
+ rc = MSI_ProcessMessage(package, INSTALLMESSAGE_ERROR, record);
if (rc == IDCANCEL)
- {
- msi_free(msg);
return ERROR_INSTALL_USEREXIT;
- }
attrib = GetFileAttributesW(package->db->path);
}
- msi_free(msg);
rc = ERROR_SUCCESS;
}
else
@@ -5595,7 +5544,7 @@ static UINT ACTION_RegisterUser(MSIPACKAGE *package)
end:
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, productid );
- msi_ui_actiondata( package, szRegisterUser, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(productid);
@@ -5735,7 +5684,7 @@ end:
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, compgroupid );
MSI_RecordSetStringW( uirow, 2, qualifier);
- msi_ui_actiondata( package, szPublishComponents, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
/* FIXME: call ui_progress? */
@@ -5812,7 +5761,7 @@ static UINT ITERATE_UnpublishComponent( MSIRECORD *rec, LPVOID param
)
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, compgroupid );
MSI_RecordSetStringW( uirow, 2, qualifier );
- msi_ui_actiondata( package, szUnpublishComponents, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
return ERROR_SUCCESS;
@@ -6124,7 +6073,7 @@ done:
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, display_name );
MSI_RecordSetStringW( uirow, 2, name );
- msi_ui_actiondata( package, szStartServices, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
if (service) CloseServiceHandle(service);
@@ -6292,7 +6241,7 @@ done:
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, display_name );
MSI_RecordSetStringW( uirow, 2, name );
- msi_ui_actiondata( package, szStopServices, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free( name );
@@ -6372,7 +6321,7 @@ done:
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, display_name );
MSI_RecordSetStringW( uirow, 2, name );
- msi_ui_actiondata( package, szDeleteServices, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
if (service) CloseServiceHandle( service );
@@ -6490,7 +6439,7 @@ static UINT ITERATE_InstallODBCDriver( MSIRECORD *rec, LPVOID param
)
MSI_RecordSetStringW( uirow, 1, desc );
MSI_RecordSetStringW( uirow, 2, MSI_RecordGetString(rec, 2) );
MSI_RecordSetStringW( uirow, 3, driver_file->Component->Directory );
- msi_ui_actiondata( package, szInstallODBC, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(driver);
@@ -6578,7 +6527,7 @@ static UINT ITERATE_InstallODBCTranslator( MSIRECORD *rec, LPVOID
param )
MSI_RecordSetStringW( uirow, 1, desc );
MSI_RecordSetStringW( uirow, 2, MSI_RecordGetString(rec, 2) );
MSI_RecordSetStringW( uirow, 3, translator_file->Component->Directory );
- msi_ui_actiondata( package, szInstallODBC, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(translator);
@@ -6639,7 +6588,7 @@ static UINT ITERATE_InstallODBCDataSource( MSIRECORD *rec, LPVOID
param )
MSI_RecordSetStringW( uirow, 1, desc );
MSI_RecordSetStringW( uirow, 2, MSI_RecordGetString(rec, 2) );
MSI_RecordSetInteger( uirow, 3, request );
- msi_ui_actiondata( package, szInstallODBC, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(attrs);
@@ -6721,7 +6670,7 @@ static UINT ITERATE_RemoveODBCDriver( MSIRECORD *rec, LPVOID param
)
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, desc );
MSI_RecordSetStringW( uirow, 2, MSI_RecordGetString(rec, 2) );
- msi_ui_actiondata( package, szRemoveODBC, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
return ERROR_SUCCESS;
@@ -6760,7 +6709,7 @@ static UINT ITERATE_RemoveODBCTranslator( MSIRECORD *rec, LPVOID
param )
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, desc );
MSI_RecordSetStringW( uirow, 2, MSI_RecordGetString(rec, 2) );
- msi_ui_actiondata( package, szRemoveODBC, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
return ERROR_SUCCESS;
@@ -6819,7 +6768,7 @@ static UINT ITERATE_RemoveODBCDataSource( MSIRECORD *rec, LPVOID
param )
MSI_RecordSetStringW( uirow, 1, desc );
MSI_RecordSetStringW( uirow, 2, MSI_RecordGetString(rec, 2) );
MSI_RecordSetInteger( uirow, 3, request );
- msi_ui_actiondata( package, szRemoveODBC, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
return ERROR_SUCCESS;
@@ -7167,7 +7116,7 @@ done:
MSI_RecordSetStringW( uirow, 1, name );
MSI_RecordSetStringW( uirow, 2, newval );
MSI_RecordSetInteger( uirow, 3, action );
- msi_ui_actiondata( package, szWriteEnvironmentStrings, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
if (env) RegCloseKey(env);
@@ -7310,7 +7259,7 @@ done:
MSI_RecordSetStringW( uirow, 1, name );
MSI_RecordSetStringW( uirow, 2, value );
MSI_RecordSetInteger( uirow, 3, action );
- msi_ui_actiondata( package, szRemoveEnvironmentStrings, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
if (env) RegCloseKey( env );
@@ -7382,7 +7331,7 @@ static UINT ACTION_AllocateRegistrySpace( MSIPACKAGE *package )
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetInteger( uirow, 1, space );
- msi_ui_actiondata( package, szAllocateRegistrySpace, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
return ERROR_SUCCESS;
@@ -7681,93 +7630,95 @@ static UINT ACTION_InstallSFPCatalogFile( MSIPACKAGE *package )
static const struct
{
const WCHAR *action;
+ const UINT description;
+ const UINT template;
UINT (*handler)(MSIPACKAGE *);
const WCHAR *action_rollback;
}
StandardActions[] =
{
- { szAllocateRegistrySpace, ACTION_AllocateRegistrySpace, NULL },
- { szAppSearch, ACTION_AppSearch, NULL },
- { szBindImage, ACTION_BindImage, NULL },
- { szCCPSearch, ACTION_CCPSearch, NULL },
- { szCostFinalize, ACTION_CostFinalize, NULL },
- { szCostInitialize, ACTION_CostInitialize, NULL },
- { szCreateFolders, ACTION_CreateFolders, szRemoveFolders },
- { szCreateShortcuts, ACTION_CreateShortcuts, szRemoveShortcuts },
- { szDeleteServices, ACTION_DeleteServices, szInstallServices },
- { szDisableRollback, ACTION_DisableRollback, NULL },
- { szDuplicateFiles, ACTION_DuplicateFiles, szRemoveDuplicateFiles },
- { szExecuteAction, ACTION_ExecuteAction, NULL },
- { szFileCost, ACTION_FileCost, NULL },
- { szFindRelatedProducts, ACTION_FindRelatedProducts, NULL },
- { szForceReboot, ACTION_ForceReboot, NULL },
- { szInstallAdminPackage, ACTION_InstallAdminPackage, NULL },
- { szInstallExecute, ACTION_InstallExecute, NULL },
- { szInstallExecuteAgain, ACTION_InstallExecute, NULL },
- { szInstallFiles, ACTION_InstallFiles, szRemoveFiles },
- { szInstallFinalize, ACTION_InstallFinalize, NULL },
- { szInstallInitialize, ACTION_InstallInitialize, NULL },
- { szInstallODBC, ACTION_InstallODBC, szRemoveODBC },
- { szInstallServices, ACTION_InstallServices, szDeleteServices },
- { szInstallSFPCatalogFile, ACTION_InstallSFPCatalogFile, NULL },
- { szInstallValidate, ACTION_InstallValidate, NULL },
- { szIsolateComponents, ACTION_IsolateComponents, NULL },
- { szLaunchConditions, ACTION_LaunchConditions, NULL },
- { szMigrateFeatureStates, ACTION_MigrateFeatureStates, NULL },
- { szMoveFiles, ACTION_MoveFiles, NULL },
- { szMsiPublishAssemblies, ACTION_MsiPublishAssemblies, szMsiUnpublishAssemblies },
- { szMsiUnpublishAssemblies, ACTION_MsiUnpublishAssemblies, szMsiPublishAssemblies },
- { szPatchFiles, ACTION_PatchFiles, NULL },
- { szProcessComponents, ACTION_ProcessComponents, szProcessComponents },
- { szPublishComponents, ACTION_PublishComponents, szUnpublishComponents },
- { szPublishFeatures, ACTION_PublishFeatures, szUnpublishFeatures },
- { szPublishProduct, ACTION_PublishProduct, szUnpublishProduct },
- { szRegisterClassInfo, ACTION_RegisterClassInfo, szUnregisterClassInfo },
- { szRegisterComPlus, ACTION_RegisterComPlus, szUnregisterComPlus },
- { szRegisterExtensionInfo, ACTION_RegisterExtensionInfo, szUnregisterExtensionInfo
},
- { szRegisterFonts, ACTION_RegisterFonts, szUnregisterFonts },
- { szRegisterMIMEInfo, ACTION_RegisterMIMEInfo, szUnregisterMIMEInfo },
- { szRegisterProduct, ACTION_RegisterProduct, NULL },
- { szRegisterProgIdInfo, ACTION_RegisterProgIdInfo, szUnregisterProgIdInfo },
- { szRegisterTypeLibraries, ACTION_RegisterTypeLibraries, szUnregisterTypeLibraries
},
- { szRegisterUser, ACTION_RegisterUser, NULL },
- { szRemoveDuplicateFiles, ACTION_RemoveDuplicateFiles, szDuplicateFiles },
- { szRemoveEnvironmentStrings, ACTION_RemoveEnvironmentStrings,
szWriteEnvironmentStrings },
- { szRemoveExistingProducts, ACTION_RemoveExistingProducts, NULL },
- { szRemoveFiles, ACTION_RemoveFiles, szInstallFiles },
- { szRemoveFolders, ACTION_RemoveFolders, szCreateFolders },
- { szRemoveIniValues, ACTION_RemoveIniValues, szWriteIniValues },
- { szRemoveODBC, ACTION_RemoveODBC, szInstallODBC },
- { szRemoveRegistryValues, ACTION_RemoveRegistryValues, szWriteRegistryValues },
- { szRemoveShortcuts, ACTION_RemoveShortcuts, szCreateShortcuts },
- { szResolveSource, ACTION_ResolveSource, NULL },
- { szRMCCPSearch, ACTION_RMCCPSearch, NULL },
- { szScheduleReboot, ACTION_ScheduleReboot, NULL },
- { szSelfRegModules, ACTION_SelfRegModules, szSelfUnregModules },
- { szSelfUnregModules, ACTION_SelfUnregModules, szSelfRegModules },
- { szSetODBCFolders, ACTION_SetODBCFolders, NULL },
- { szStartServices, ACTION_StartServices, szStopServices },
- { szStopServices, ACTION_StopServices, szStartServices },
- { szUnpublishComponents, ACTION_UnpublishComponents, szPublishComponents },
- { szUnpublishFeatures, ACTION_UnpublishFeatures, szPublishFeatures },
- { szUnpublishProduct, ACTION_UnpublishProduct, NULL }, /* for rollback only */
- { szUnregisterClassInfo, ACTION_UnregisterClassInfo, szRegisterClassInfo },
- { szUnregisterComPlus, ACTION_UnregisterComPlus, szRegisterComPlus },
- { szUnregisterExtensionInfo, ACTION_UnregisterExtensionInfo, szRegisterExtensionInfo
},
- { szUnregisterFonts, ACTION_UnregisterFonts, szRegisterFonts },
- { szUnregisterMIMEInfo, ACTION_UnregisterMIMEInfo, szRegisterMIMEInfo },
- { szUnregisterProgIdInfo, ACTION_UnregisterProgIdInfo, szRegisterProgIdInfo },
- { szUnregisterTypeLibraries, ACTION_UnregisterTypeLibraries, szRegisterTypeLibraries
},
- { szValidateProductID, ACTION_ValidateProductID, NULL },
- { szWriteEnvironmentStrings, ACTION_WriteEnvironmentStrings,
szRemoveEnvironmentStrings },
- { szWriteIniValues, ACTION_WriteIniValues, szRemoveIniValues },
- { szWriteRegistryValues, ACTION_WriteRegistryValues, szRemoveRegistryValues },
- { NULL, NULL, NULL }
+ { szAllocateRegistrySpace, IDS_DESC_ALLOCATEREGISTRYSPACE,
IDS_TEMP_ALLOCATEREGISTRYSPACE, ACTION_AllocateRegistrySpace, NULL },
+ { szAppSearch, IDS_DESC_APPSEARCH, IDS_TEMP_APPSEARCH, ACTION_AppSearch, NULL },
+ { szBindImage, IDS_DESC_BINDIMAGE, IDS_TEMP_BINDIMAGE, ACTION_BindImage, NULL },
+ { szCCPSearch, IDS_DESC_CCPSEARCH, 0, ACTION_CCPSearch, NULL },
+ { szCostFinalize, IDS_DESC_COSTFINALIZE, 0, ACTION_CostFinalize, NULL },
+ { szCostInitialize, IDS_DESC_COSTINITIALIZE, 0, ACTION_CostInitialize, NULL },
+ { szCreateFolders, IDS_DESC_CREATEFOLDERS, IDS_TEMP_CREATEFOLDERS,
ACTION_CreateFolders, szRemoveFolders },
+ { szCreateShortcuts, IDS_DESC_CREATESHORTCUTS, IDS_TEMP_CREATESHORTCUTS,
ACTION_CreateShortcuts, szRemoveShortcuts },
+ { szDeleteServices, IDS_DESC_DELETESERVICES, IDS_TEMP_DELETESERVICES,
ACTION_DeleteServices, szInstallServices },
+ { szDisableRollback, 0, 0, ACTION_DisableRollback, NULL },
+ { szDuplicateFiles, IDS_DESC_DUPLICATEFILES, IDS_TEMP_DUPLICATEFILES,
ACTION_DuplicateFiles, szRemoveDuplicateFiles },
+ { szExecuteAction, 0, 0, ACTION_ExecuteAction, NULL },
+ { szFileCost, IDS_DESC_FILECOST, 0, ACTION_FileCost, NULL },
+ { szFindRelatedProducts, IDS_DESC_FINDRELATEDPRODUCTS, IDS_TEMP_FINDRELATEDPRODUCTS,
ACTION_FindRelatedProducts, NULL },
+ { szForceReboot, 0, 0, ACTION_ForceReboot, NULL },
+ { szInstallAdminPackage, IDS_DESC_INSTALLADMINPACKAGE, IDS_TEMP_INSTALLADMINPACKAGE,
ACTION_InstallAdminPackage, NULL },
+ { szInstallExecute, 0, 0, ACTION_InstallExecute, NULL },
+ { szInstallExecuteAgain, 0, 0, ACTION_InstallExecute, NULL },
+ { szInstallFiles, IDS_DESC_INSTALLFILES, IDS_TEMP_INSTALLFILES, ACTION_InstallFiles,
szRemoveFiles },
+ { szInstallFinalize, 0, 0, ACTION_InstallFinalize, NULL },
+ { szInstallInitialize, 0, 0, ACTION_InstallInitialize, NULL },
+ { szInstallODBC, IDS_DESC_INSTALLODBC, 0, ACTION_InstallODBC, szRemoveODBC },
+ { szInstallServices, IDS_DESC_INSTALLSERVICES, IDS_TEMP_INSTALLSERVICES,
ACTION_InstallServices, szDeleteServices },
+ { szInstallSFPCatalogFile, IDS_DESC_INSTALLSFPCATALOGFILE,
IDS_TEMP_INSTALLSFPCATALOGFILE, ACTION_InstallSFPCatalogFile, NULL },
+ { szInstallValidate, IDS_DESC_INSTALLVALIDATE, 0, ACTION_InstallValidate, NULL },
+ { szIsolateComponents, 0, 0, ACTION_IsolateComponents, NULL },
+ { szLaunchConditions, IDS_DESC_LAUNCHCONDITIONS, 0, ACTION_LaunchConditions, NULL },
+ { szMigrateFeatureStates, IDS_DESC_MIGRATEFEATURESTATES,
IDS_TEMP_MIGRATEFEATURESTATES, ACTION_MigrateFeatureStates, NULL },
+ { szMoveFiles, IDS_DESC_MOVEFILES, IDS_TEMP_MOVEFILES, ACTION_MoveFiles, NULL },
+ { szMsiPublishAssemblies, IDS_DESC_MSIPUBLISHASSEMBLIES,
IDS_TEMP_MSIPUBLISHASSEMBLIES, ACTION_MsiPublishAssemblies, szMsiUnpublishAssemblies },
+ { szMsiUnpublishAssemblies, IDS_DESC_MSIUNPUBLISHASSEMBLIES,
IDS_TEMP_MSIUNPUBLISHASSEMBLIES, ACTION_MsiUnpublishAssemblies, szMsiPublishAssemblies },
+ { szPatchFiles, IDS_DESC_PATCHFILES, IDS_TEMP_PATCHFILES, ACTION_PatchFiles, NULL },
+ { szProcessComponents, IDS_DESC_PROCESSCOMPONENTS, 0, ACTION_ProcessComponents,
szProcessComponents },
+ { szPublishComponents, IDS_DESC_PUBLISHCOMPONENTS, IDS_TEMP_PUBLISHCOMPONENTS,
ACTION_PublishComponents, szUnpublishComponents },
+ { szPublishFeatures, IDS_DESC_PUBLISHFEATURES, IDS_TEMP_PUBLISHFEATURES,
ACTION_PublishFeatures, szUnpublishFeatures },
+ { szPublishProduct, IDS_DESC_PUBLISHPRODUCT, 0, ACTION_PublishProduct,
szUnpublishProduct },
+ { szRegisterClassInfo, IDS_DESC_REGISTERCLASSINFO, IDS_TEMP_REGISTERCLASSINFO,
ACTION_RegisterClassInfo, szUnregisterClassInfo },
+ { szRegisterComPlus, IDS_DESC_REGISTERCOMPLUS, IDS_TEMP_REGISTERCOMPLUS,
ACTION_RegisterComPlus, szUnregisterComPlus },
+ { szRegisterExtensionInfo, IDS_DESC_REGISTEREXTENSIONINFO, 0,
ACTION_RegisterExtensionInfo, szUnregisterExtensionInfo },
+ { szRegisterFonts, IDS_DESC_REGISTERFONTS, IDS_TEMP_REGISTERFONTS,
ACTION_RegisterFonts, szUnregisterFonts },
+ { szRegisterMIMEInfo, IDS_DESC_REGISTERMIMEINFO, IDS_TEMP_REGISTERMIMEINFO,
ACTION_RegisterMIMEInfo, szUnregisterMIMEInfo },
+ { szRegisterProduct, IDS_DESC_REGISTERPRODUCT, 0, ACTION_RegisterProduct, NULL },
+ { szRegisterProgIdInfo, IDS_DESC_REGISTERPROGIDINFO, IDS_TEMP_REGISTERPROGIDINFO,
ACTION_RegisterProgIdInfo, szUnregisterProgIdInfo },
+ { szRegisterTypeLibraries, IDS_DESC_REGISTERTYPELIBRARIES,
IDS_TEMP_REGISTERTYPELIBRARIES, ACTION_RegisterTypeLibraries, szUnregisterTypeLibraries
},
+ { szRegisterUser, IDS_DESC_REGISTERUSER, 0, ACTION_RegisterUser, NULL },
+ { szRemoveDuplicateFiles, IDS_DESC_REMOVEDUPLICATEFILES,
IDS_TEMP_REMOVEDUPLICATEFILES, ACTION_RemoveDuplicateFiles, szDuplicateFiles },
+ { szRemoveEnvironmentStrings, IDS_DESC_REMOVEENVIRONMENTSTRINGS,
IDS_TEMP_REMOVEENVIRONMENTSTRINGS, ACTION_RemoveEnvironmentStrings,
szWriteEnvironmentStrings },
+ { szRemoveExistingProducts, IDS_DESC_REMOVEEXISTINGPRODUCTS,
IDS_TEMP_REMOVEEXISTINGPRODUCTS, ACTION_RemoveExistingProducts, NULL },
+ { szRemoveFiles, IDS_DESC_REMOVEFILES, IDS_TEMP_REMOVEFILES, ACTION_RemoveFiles,
szInstallFiles },
+ { szRemoveFolders, IDS_DESC_REMOVEFOLDERS, IDS_TEMP_REMOVEFOLDERS,
ACTION_RemoveFolders, szCreateFolders },
+ { szRemoveIniValues, IDS_DESC_REMOVEINIVALUES, IDS_TEMP_REMOVEINIVALUES,
ACTION_RemoveIniValues, szWriteIniValues },
+ { szRemoveODBC, IDS_DESC_REMOVEODBC, 0, ACTION_RemoveODBC, szInstallODBC },
+ { szRemoveRegistryValues, IDS_DESC_REMOVEREGISTRYVALUES,
IDS_TEMP_REMOVEREGISTRYVALUES, ACTION_RemoveRegistryValues, szWriteRegistryValues },
+ { szRemoveShortcuts, IDS_DESC_REMOVESHORTCUTS, IDS_TEMP_REMOVESHORTCUTS,
ACTION_RemoveShortcuts, szCreateShortcuts },
+ { szResolveSource, 0, 0, ACTION_ResolveSource, NULL },
+ { szRMCCPSearch, IDS_DESC_RMCCPSEARCH, 0, ACTION_RMCCPSearch, NULL },
+ { szScheduleReboot, 0, 0, ACTION_ScheduleReboot, NULL },
+ { szSelfRegModules, IDS_DESC_SELFREGMODULES, IDS_TEMP_SELFREGMODULES,
ACTION_SelfRegModules, szSelfUnregModules },
+ { szSelfUnregModules, IDS_DESC_SELFUNREGMODULES, IDS_TEMP_SELFUNREGMODULES,
ACTION_SelfUnregModules, szSelfRegModules },
+ { szSetODBCFolders, IDS_DESC_SETODBCFOLDERS, 0, ACTION_SetODBCFolders, NULL },
+ { szStartServices, IDS_DESC_STARTSERVICES, IDS_TEMP_STARTSERVICES,
ACTION_StartServices, szStopServices },
+ { szStopServices, IDS_DESC_STOPSERVICES, IDS_TEMP_STOPSERVICES, ACTION_StopServices,
szStartServices },
+ { szUnpublishComponents, IDS_DESC_UNPUBLISHCOMPONENTS, IDS_TEMP_UNPUBLISHCOMPONENTS,
ACTION_UnpublishComponents, szPublishComponents },
+ { szUnpublishFeatures, IDS_DESC_UNPUBLISHFEATURES, IDS_TEMP_UNPUBLISHFEATURES,
ACTION_UnpublishFeatures, szPublishFeatures },
+ { szUnpublishProduct, IDS_DESC_UNPUBLISHPRODUCT, 0, ACTION_UnpublishProduct, NULL },
/* for rollback only */
+ { szUnregisterClassInfo, IDS_DESC_UNREGISTERCLASSINFO, IDS_TEMP_UNREGISTERCLASSINFO,
ACTION_UnregisterClassInfo, szRegisterClassInfo },
+ { szUnregisterComPlus, IDS_DESC_UNREGISTERCOMPLUS, IDS_TEMP_UNREGISTERCOMPLUS,
ACTION_UnregisterComPlus, szRegisterComPlus },
+ { szUnregisterExtensionInfo, IDS_DESC_UNREGISTEREXTENSIONINFO,
IDS_TEMP_UNREGISTEREXTENSIONINFO, ACTION_UnregisterExtensionInfo, szRegisterExtensionInfo
},
+ { szUnregisterFonts, IDS_DESC_UNREGISTERFONTS, IDS_TEMP_UNREGISTERFONTS,
ACTION_UnregisterFonts, szRegisterFonts },
+ { szUnregisterMIMEInfo, IDS_DESC_UNREGISTERMIMEINFO, IDS_TEMP_UNREGISTERMIMEINFO,
ACTION_UnregisterMIMEInfo, szRegisterMIMEInfo },
+ { szUnregisterProgIdInfo, IDS_DESC_UNREGISTERPROGIDINFO,
IDS_TEMP_UNREGISTERPROGIDINFO, ACTION_UnregisterProgIdInfo, szRegisterProgIdInfo },
+ { szUnregisterTypeLibraries, IDS_DESC_UNREGISTERTYPELIBRARIES,
IDS_TEMP_UNREGISTERTYPELIBRARIES, ACTION_UnregisterTypeLibraries, szRegisterTypeLibraries
},
+ { szValidateProductID, 0, 0, ACTION_ValidateProductID, NULL },
+ { szWriteEnvironmentStrings, IDS_DESC_WRITEENVIRONMENTSTRINGS,
IDS_TEMP_WRITEENVIRONMENTSTRINGS, ACTION_WriteEnvironmentStrings,
szRemoveEnvironmentStrings },
+ { szWriteIniValues, IDS_DESC_WRITEINIVALUES, IDS_TEMP_WRITEINIVALUES,
ACTION_WriteIniValues, szRemoveIniValues },
+ { szWriteRegistryValues, IDS_DESC_WRITEREGISTRYVALUES, IDS_TEMP_WRITEREGISTRYVALUES,
ACTION_WriteRegistryValues, szRemoveRegistryValues },
+ { 0 }
};
-static BOOL ACTION_HandleStandardAction( MSIPACKAGE *package, LPCWSTR action, UINT *rc )
+static UINT ACTION_HandleStandardAction(MSIPACKAGE *package, LPCWSTR action)
{
- BOOL ret = FALSE;
+ UINT rc = ERROR_FUNCTION_NOT_CALLED;
UINT i;
i = 0;
@@ -7775,12 +7726,19 @@ static BOOL ACTION_HandleStandardAction( MSIPACKAGE *package,
LPCWSTR action, UI
{
if (!strcmpW( StandardActions[i].action, action ))
{
- ui_actionstart( package, action );
+ WCHAR description[100] = {0}, template[100] = {0};
+
+ if (StandardActions[i].description != 0)
+ LoadStringW(msi_hInstance, StandardActions[i].description,
(LPWSTR)&description, 100);
+ if (StandardActions[i].template != 0)
+ LoadStringW(msi_hInstance, StandardActions[i].template,
(LPWSTR)&template, 100);
+
+ ui_actionstart(package, action, description, template);
if (StandardActions[i].handler)
{
ui_actioninfo( package, action, TRUE, 0 );
- *rc = StandardActions[i].handler( package );
- ui_actioninfo( package, action, FALSE, *rc );
+ rc = StandardActions[i].handler( package );
+ ui_actioninfo( package, action, FALSE, !rc );
if (StandardActions[i].action_rollback &&
!package->need_rollback)
{
@@ -7791,58 +7749,46 @@ static BOOL ACTION_HandleStandardAction( MSIPACKAGE *package,
LPCWSTR action, UI
else
{
FIXME("unhandled standard action %s\n", debugstr_w(action));
- *rc = ERROR_SUCCESS;
+ rc = ERROR_SUCCESS;
}
- ret = TRUE;
break;
}
i++;
}
- return ret;
+ return rc;
}
UINT ACTION_PerformAction(MSIPACKAGE *package, const WCHAR *action, UINT script)
{
- UINT rc = ERROR_SUCCESS;
- BOOL handled;
+ UINT rc;
TRACE("Performing action (%s)\n", debugstr_w(action));
- handled = ACTION_HandleStandardAction(package, action, &rc);
+ rc = ACTION_HandleStandardAction(package, action);
- if (!handled)
- handled = ACTION_HandleCustomAction(package, action, &rc, script);
+ if (rc == ERROR_FUNCTION_NOT_CALLED)
+ rc = ACTION_HandleCustomAction(package, action, script);
- if (!handled)
- {
+ if (rc == ERROR_FUNCTION_NOT_CALLED)
WARN("unhandled msi action %s\n", debugstr_w(action));
- rc = ERROR_FUNCTION_NOT_CALLED;
- }
return rc;
}
UINT ACTION_PerformUIAction(MSIPACKAGE *package, const WCHAR *action, UINT script)
{
- UINT rc = ERROR_SUCCESS;
- BOOL handled = FALSE;
+ UINT rc;
TRACE("Performing action (%s)\n", debugstr_w(action));
package->action_progress_increment = 0;
- handled = ACTION_HandleStandardAction(package, action, &rc);
-
- if (!handled)
- handled = ACTION_HandleCustomAction(package, action, &rc, script);
+ rc = ACTION_HandleStandardAction(package, action);
- if( !handled && ACTION_DialogBox(package, action) == ERROR_SUCCESS )
- handled = TRUE;
+ if (rc == ERROR_FUNCTION_NOT_CALLED)
+ rc = ACTION_HandleCustomAction(package, action, script);
- if (!handled)
- {
+ if (rc == ERROR_FUNCTION_NOT_CALLED)
WARN("unhandled msi action %s\n", debugstr_w(action));
- rc = ERROR_FUNCTION_NOT_CALLED;
- }
return rc;
}
@@ -7903,6 +7849,42 @@ static UINT ACTION_PerformActionSequence(MSIPACKAGE *package, UINT
seq)
return rc;
}
+DWORD WINAPI dummy_thread_proc(void *arg)
+{
+ struct dummy_thread *info = arg;
+ HRESULT hr;
+
+ hr = CoInitializeEx(0, COINIT_MULTITHREADED);
+ if (FAILED(hr)) ERR("CoInitializeEx failed %08x\n", hr);
+
+ SetEvent(info->started);
+ WaitForSingleObject(info->stopped, INFINITE);
+
+ CoUninitialize();
+ return 0;
+}
+
+static void start_dummy_thread(struct dummy_thread *info)
+{
+ if (!(info->started = CreateEventA(NULL, TRUE, FALSE, NULL))) return;
+ if (!(info->stopped = CreateEventA(NULL, TRUE, FALSE, NULL))) return;
+ if (!(info->thread = CreateThread(NULL, 0, dummy_thread_proc, info, 0, NULL)))
return;
+
+ WaitForSingleObject(info->started, INFINITE);
+}
+
+static void stop_dummy_thread(struct dummy_thread *info)
+{
+ if (info->thread)
+ {
+ SetEvent(info->stopped);
+ WaitForSingleObject(info->thread, INFINITE);
+ CloseHandle(info->thread);
+ }
+ if (info->started) CloseHandle(info->started);
+ if (info->stopped) CloseHandle(info->stopped);
+}
+
/****************************************************
* TOP level entry points
*****************************************************/
@@ -7914,6 +7896,7 @@ UINT MSI_InstallPackage( MSIPACKAGE *package, LPCWSTR
szPackagePath,
static const WCHAR szAction[] =
{'A','C','T','I','O','N',0};
static const WCHAR szInstall[] =
{'I','N','S','T','A','L','L',0};
WCHAR *reinstall, *remove, *patch, *productcode;
+ struct dummy_thread thread_info = {NULL, NULL, NULL};
BOOL ui_exists;
UINT rc;
@@ -7979,6 +7962,8 @@ UINT MSI_InstallPackage( MSIPACKAGE *package, LPCWSTR
szPackagePath,
msi_adjust_privilege_properties( package );
msi_set_context( package );
+ start_dummy_thread(&thread_info);
+
productcode = msi_dup_property( package->db, szProductCode );
if (strcmpiW( productcode, package->ProductCode ))
{
@@ -8027,6 +8012,8 @@ UINT MSI_InstallPackage( MSIPACKAGE *package, LPCWSTR
szPackagePath,
/* finish up running custom actions */
ACTION_FinishCustomActions(package);
+ stop_dummy_thread(&thread_info);
+
if (package->need_rollback && !reinstall)
{
WARN("installation failed, running rollback script\n");
diff --git a/dll/win32/msi/appsearch.c b/dll/win32/msi/appsearch.c
index b38bf2781f..e27fa74540 100644
--- a/dll/win32/msi/appsearch.c
+++ b/dll/win32/msi/appsearch.c
@@ -1104,7 +1104,7 @@ static UINT iterate_appsearch(MSIRECORD *row, LPVOID param)
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, propName );
MSI_RecordSetStringW( uirow, 2, sigName );
- msi_ui_actiondata( package, szAppSearch, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
return r;
diff --git a/dll/win32/msi/assembly.c b/dll/win32/msi/assembly.c
index 84026c29e0..c652b3040e 100644
--- a/dll/win32/msi/assembly.c
+++ b/dll/win32/msi/assembly.c
@@ -698,7 +698,7 @@ UINT ACTION_MsiPublishAssemblies( MSIPACKAGE *package )
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 2, assembly->display_name );
- msi_ui_actiondata( package, szMsiPublishAssemblies, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
return ERROR_SUCCESS;
@@ -747,7 +747,7 @@ UINT ACTION_MsiUnpublishAssemblies( MSIPACKAGE *package )
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 2, assembly->display_name );
- msi_ui_actiondata( package, szMsiPublishAssemblies, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
return ERROR_SUCCESS;
diff --git a/dll/win32/msi/classes.c b/dll/win32/msi/classes.c
index 1b138ebc5b..9b5794fdf3 100644
--- a/dll/win32/msi/classes.c
+++ b/dll/win32/msi/classes.c
@@ -893,7 +893,7 @@ UINT ACTION_RegisterClassInfo(MSIPACKAGE *package)
uirow = MSI_CreateRecord(1);
MSI_RecordSetStringW( uirow, 1, cls->clsid );
- msi_ui_actiondata( package, szRegisterClassInfo, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release(&uirow->hdr);
}
RegCloseKey(hkey);
@@ -985,7 +985,7 @@ UINT ACTION_UnregisterClassInfo( MSIPACKAGE *package )
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, cls->clsid );
- msi_ui_actiondata( package, szUnregisterClassInfo, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
RegCloseKey( hkey );
@@ -1091,7 +1091,7 @@ UINT ACTION_RegisterProgIdInfo(MSIPACKAGE *package)
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, progid->ProgID );
- msi_ui_actiondata( package, szRegisterProgIdInfo, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
return ERROR_SUCCESS;
@@ -1154,7 +1154,7 @@ UINT ACTION_UnregisterProgIdInfo( MSIPACKAGE *package )
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, progid->ProgID );
- msi_ui_actiondata( package, szUnregisterProgIdInfo, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
return ERROR_SUCCESS;
@@ -1341,7 +1341,7 @@ UINT ACTION_RegisterExtensionInfo(MSIPACKAGE *package)
uirow = MSI_CreateRecord(1);
MSI_RecordSetStringW( uirow, 1, ext->Extension );
- msi_ui_actiondata( package, szRegisterExtensionInfo, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release(&uirow->hdr);
}
return ERROR_SUCCESS;
@@ -1424,7 +1424,7 @@ UINT ACTION_UnregisterExtensionInfo( MSIPACKAGE *package )
uirow = MSI_CreateRecord( 1 );
MSI_RecordSetStringW( uirow, 1, ext->Extension );
- msi_ui_actiondata( package, szUnregisterExtensionInfo, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
return ERROR_SUCCESS;
@@ -1479,7 +1479,7 @@ UINT ACTION_RegisterMIMEInfo(MSIPACKAGE *package)
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, mt->ContentType );
MSI_RecordSetStringW( uirow, 2, mt->suffix );
- msi_ui_actiondata( package, szRegisterMIMEInfo, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
return ERROR_SUCCESS;
@@ -1523,7 +1523,7 @@ UINT ACTION_UnregisterMIMEInfo( MSIPACKAGE *package )
uirow = MSI_CreateRecord( 2 );
MSI_RecordSetStringW( uirow, 1, mime->ContentType );
MSI_RecordSetStringW( uirow, 2, mime->suffix );
- msi_ui_actiondata( package, szUnregisterMIMEInfo, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
return ERROR_SUCCESS;
diff --git a/dll/win32/msi/custom.c b/dll/win32/msi/custom.c
index 565feecea6..3dffb8680a 100644
--- a/dll/win32/msi/custom.c
+++ b/dll/win32/msi/custom.c
@@ -1203,7 +1203,7 @@ UINT ACTION_CustomAction( MSIPACKAGE *package, LPCWSTR action, UINT
script )
row = MSI_QueryGetRecord( package->db, query, action );
if (!row)
- return ERROR_CALL_NOT_IMPLEMENTED;
+ return ERROR_FUNCTION_NOT_CALLED;
type = MSI_RecordGetInteger(row,2);
source = MSI_RecordGetString(row,3);
diff --git a/dll/win32/msi/database.c b/dll/win32/msi/database.c
index b53762e7f4..a94cebdbdf 100644
--- a/dll/win32/msi/database.c
+++ b/dll/win32/msi/database.c
@@ -768,8 +768,11 @@ static UINT MSI_DatabaseImport(MSIDATABASE *db, LPCWSTR folder,
LPCWSTR file)
lstrcatW( path, file );
data = msi_read_text_archive( path, &len );
- if (data == NULL)
- return ERROR_BAD_PATHNAME;
+ if (!data)
+ {
+ msi_free(path);
+ return ERROR_FUNCTION_FAILED;
+ }
ptr = data;
msi_parse_line( &ptr, &columns, &num_columns, &len );
@@ -1988,16 +1991,8 @@ MSIDBSTATE WINAPI MsiGetDatabaseState( MSIHANDLE handle )
db = msihandle2msiinfo( handle, MSIHANDLETYPE_DATABASE );
if( !db )
{
- IWineMsiRemoteDatabase *remote_database;
-
- remote_database = (IWineMsiRemoteDatabase *)msi_get_remote( handle );
- if ( !remote_database )
- return MSIDBSTATE_ERROR;
-
- IWineMsiRemoteDatabase_Release( remote_database );
WARN("MsiGetDatabaseState not allowed during a custom action!\n");
-
- return MSIDBSTATE_READ;
+ return MSIDBSTATE_ERROR;
}
if (db->mode != MSIDBOPEN_READONLY )
diff --git a/dll/win32/msi/dialog.c b/dll/win32/msi/dialog.c
index bed62fe5d7..8b62bb0a8f 100644
--- a/dll/win32/msi/dialog.c
+++ b/dll/win32/msi/dialog.c
@@ -34,6 +34,7 @@ typedef struct msi_control_tag msi_control;
typedef UINT (*msi_handler)( msi_dialog *, msi_control *, WPARAM );
typedef void (*msi_update)( msi_dialog *, msi_control * );
typedef UINT (*control_event_handler)( msi_dialog *, const WCHAR *, const WCHAR * );
+typedef UINT (*event_handler)( msi_dialog *, const WCHAR * );
struct msi_control_tag
{
@@ -79,6 +80,9 @@ struct msi_dialog_tag
HWND hWndFocus;
LPWSTR control_default;
LPWSTR control_cancel;
+ event_handler pending_event;
+ LPWSTR pending_argument;
+ INT retval;
WCHAR name[1];
};
@@ -972,6 +976,16 @@ static UINT msi_dialog_button_handler( msi_dialog *dialog,
msi_control *control,
}
r = MSI_IterateRecords( view, 0, msi_dialog_control_event, dialog );
msiobj_release( &view->hdr );
+
+ /* dialog control events must be processed last regardless of ordering */
+ if (dialog->pending_event)
+ {
+ r = dialog->pending_event( dialog, dialog->pending_argument );
+
+ msi_free( dialog->pending_argument );
+ dialog->pending_event = NULL;
+ dialog->pending_argument = NULL;
+ }
return r;
}
@@ -3884,6 +3898,8 @@ static BOOL dialog_register_class( void )
static msi_dialog *dialog_create( MSIPACKAGE *package, const WCHAR *name, msi_dialog
*parent,
control_event_handler event_handler )
{
+ static const WCHAR szDialogCreated[] =
+ {'D','i','a','l','o','g','
','c','r','e','a','t','e','d',0};
MSIRECORD *rec = NULL;
msi_dialog *dialog;
@@ -3897,7 +3913,6 @@ static msi_dialog *dialog_create( MSIPACKAGE *package, const WCHAR
*name, msi_di
return NULL;
strcpyW( dialog->name, name );
dialog->parent = parent;
- msiobj_addref( &package->hdr );
dialog->package = package;
dialog->event_handler = event_handler;
dialog->finished = 0;
@@ -3908,7 +3923,6 @@ static msi_dialog *dialog_create( MSIPACKAGE *package, const WCHAR
*name, msi_di
rec = msi_get_dialog_record( dialog );
if( !rec )
{
- msiobj_release( &package->hdr );
msi_free( dialog );
return NULL;
}
@@ -3917,6 +3931,13 @@ static msi_dialog *dialog_create( MSIPACKAGE *package, const WCHAR
*name, msi_di
dialog->control_cancel = strdupW( MSI_RecordGetString( rec, 10 ) );
msiobj_release( &rec->hdr );
+ rec = MSI_CreateRecord(2);
+ if (!rec) return NULL;
+ MSI_RecordSetStringW(rec, 1, name);
+ MSI_RecordSetStringW(rec, 2, szDialogCreated);
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONSTART, rec);
+ msiobj_release(&rec->hdr);
+
return dialog;
}
@@ -4035,7 +4056,6 @@ void msi_dialog_destroy( msi_dialog *dialog )
msi_free( dialog->control_default );
msi_free( dialog->control_cancel );
- msiobj_release( &dialog->package->hdr );
dialog->package = NULL;
msi_free( dialog );
}
@@ -4061,109 +4081,6 @@ void msi_event_cleanup_all_subscriptions( MSIPACKAGE *package )
}
}
-static UINT error_dialog_handler( msi_dialog *dialog, const WCHAR *event, const WCHAR
*argument )
-{
- static const WCHAR end_dialog[] =
{'E','n','d','D','i','a','l','o','g',0};
- static const WCHAR error_abort[] =
{'E','r','r','o','r','A','b','o','r','t',0};
- static const WCHAR error_cancel[] =
{'E','r','r','o','r','C','a','n','c','e','l',0};
- static const WCHAR error_no[] =
{'E','r','r','o','r','N','o',0};
- static const WCHAR result_prop[] = {
-
'M','S','I','E','r','r','o','r','D','i','a','l','o','g','R','e','s','u','l','t',0
- };
-
- if ( strcmpW( event, end_dialog ) )
- return ERROR_SUCCESS;
-
- if ( !strcmpW( argument, error_abort ) || !strcmpW( argument, error_cancel ) ||
- !strcmpW( argument, error_no ) )
- {
- msi_set_property( dialog->package->db, result_prop, error_abort, -1 );
- }
-
- msi_event_cleanup_all_subscriptions( dialog->package );
- msi_dialog_end_dialog( dialog );
-
- return ERROR_SUCCESS;
-}
-
-static UINT msi_error_dialog_set_error( MSIPACKAGE *package, LPWSTR error_dialog, LPWSTR
error )
-{
- MSIRECORD * row;
-
- static const WCHAR update[] =
- {'U','P','D','A','T','E','
','`','C','o','n','t','r','o','l','`','
',
- 'S','E','T','
','`','T','e','x','t','`','
','=','
','\'','%','s','\'',' ',
- 'W','H','E','R','E', '
','`','D','i','a','l','o','g','_','`','
','=','
','\'','%','s','\'',' ',
- 'A','N','D','
','`','C','o','n','t','r','o','l','`','
','=',' ',
-
'\'','E','r','r','o','r','T','e','x','t','\'',0};
-
- row = MSI_QueryGetRecord( package->db, update, error, error_dialog );
- if (!row)
- return ERROR_FUNCTION_FAILED;
-
- msiobj_release(&row->hdr);
- return ERROR_SUCCESS;
-}
-
-UINT msi_spawn_error_dialog( MSIPACKAGE *package, LPWSTR error_dialog, LPWSTR error )
-{
- msi_dialog *dialog;
- WCHAR result[MAX_PATH];
- UINT r = ERROR_SUCCESS;
- DWORD size = MAX_PATH;
- int res;
-
- static const WCHAR pn_prop[] =
{'P','r','o','d','u','c','t','N','a','m','e',0};
- static const WCHAR title_fmt[] = {'%','s','
','W','a','r','n','i','n','g',0};
- static const WCHAR error_abort[] =
{'E','r','r','o','r','A','b','o','r','t',0};
- static const WCHAR result_prop[] = {
-
'M','S','I','E','r','r','o','r','D','i','a','l','o','g','R','e','s','u','l','t',0
- };
-
- if ((package->ui_level & INSTALLUILEVEL_MASK) == INSTALLUILEVEL_NONE) return
ERROR_SUCCESS;
-
- if ( !error_dialog )
- {
- LPWSTR product_name = msi_dup_property( package->db, pn_prop );
- WCHAR title[MAX_PATH];
-
- sprintfW( title, title_fmt, product_name );
- res = MessageBoxW( NULL, error, title, MB_OKCANCEL | MB_ICONWARNING );
-
- msi_free( product_name );
-
- if ( res == IDOK )
- return ERROR_SUCCESS;
- else
- return ERROR_FUNCTION_FAILED;
- }
-
- r = msi_error_dialog_set_error( package, error_dialog, error );
- if ( r != ERROR_SUCCESS )
- return r;
-
- dialog = dialog_create( package, error_dialog, package->dialog,
error_dialog_handler );
- if ( !dialog )
- return ERROR_FUNCTION_FAILED;
-
- dialog->finished = FALSE;
- r = dialog_run_message_loop( dialog );
- if ( r != ERROR_SUCCESS )
- goto done;
-
- r = msi_get_property( package->db, result_prop, result, &size );
- if ( r != ERROR_SUCCESS)
- r = ERROR_SUCCESS;
-
- if ( !strcmpW( result, error_abort ) )
- r = ERROR_FUNCTION_FAILED;
-
-done:
- msi_dialog_destroy( dialog );
-
- return r;
-}
-
static void MSI_ClosePreview( MSIOBJECTHDR *arg )
{
MSIPREVIEW *preview = (MSIPREVIEW *)arg;
@@ -4299,8 +4216,6 @@ UINT WINAPI MsiPreviewBillboardA( MSIHANDLE hPreview, LPCSTR
szControlName, LPCS
return ERROR_CALL_NOT_IMPLEMENTED;
}
-typedef UINT (*event_handler)( msi_dialog *, const WCHAR * );
-
struct control_event
{
const WCHAR *event;
@@ -4310,10 +4225,11 @@ struct control_event
static UINT dialog_event_handler( msi_dialog *, const WCHAR *, const WCHAR * );
/* create a dialog box and run it if it's modal */
-static UINT event_do_dialog( MSIPACKAGE *package, const WCHAR *name, msi_dialog *parent,
BOOL destroy_modeless )
+static INT event_do_dialog( MSIPACKAGE *package, const WCHAR *name, msi_dialog *parent,
BOOL destroy_modeless )
{
msi_dialog *dialog;
UINT r;
+ INT retval;
/* create a new dialog */
dialog = dialog_create( package, name, parent, dialog_event_handler );
@@ -4329,12 +4245,18 @@ static UINT event_do_dialog( MSIPACKAGE *package, const WCHAR
*name, msi_dialog
/* modeless dialogs return an error message */
r = dialog_run_message_loop( dialog );
if (r == ERROR_SUCCESS)
+ {
+ retval = dialog->retval;
msi_dialog_destroy( dialog );
+ return retval;
+ }
else
+ {
package->dialog = dialog;
+ return IDOK;
+ }
}
- else r = ERROR_FUNCTION_FAILED;
- return r;
+ else return 0;
}
/* end a modal dialog box */
@@ -4346,28 +4268,31 @@ static UINT event_end_dialog( msi_dialog *dialog, const WCHAR
*argument )
static const WCHAR returnW[] =
{'R','e','t','u','r','n',0};
if (!strcmpW( argument, exitW ))
- dialog->package->CurrentInstallState = ERROR_INSTALL_USEREXIT;
+ dialog->retval = IDCANCEL;
else if (!strcmpW( argument, retryW ))
- dialog->package->CurrentInstallState = ERROR_INSTALL_SUSPEND;
+ dialog->retval = IDRETRY;
else if (!strcmpW( argument, ignoreW ))
- dialog->package->CurrentInstallState = ERROR_SUCCESS;
+ dialog->retval = IDOK;
else if (!strcmpW( argument, returnW ))
- {
- msi_dialog *parent = dialog->parent;
- msi_free( dialog->package->next_dialog );
- dialog->package->next_dialog = (parent) ? strdupW( parent->name ) :
NULL;
- dialog->package->CurrentInstallState = ERROR_SUCCESS;
- }
+ dialog->retval = 0;
else
{
ERR("Unknown argument string %s\n", debugstr_w(argument));
- dialog->package->CurrentInstallState = ERROR_FUNCTION_FAILED;
+ dialog->retval = IDABORT;
}
event_cleanup_subscriptions( dialog->package, dialog->name );
msi_dialog_end_dialog( dialog );
return ERROR_SUCCESS;
}
+static UINT pending_event_end_dialog( msi_dialog *dialog, const WCHAR *argument )
+{
+ dialog->pending_event = event_end_dialog;
+ if (dialog->pending_argument) msi_free( dialog->pending_argument );
+ dialog->pending_argument = strdupW( argument );
+ return ERROR_SUCCESS;
+}
+
/* transition from one modal dialog to another modal dialog */
static UINT event_new_dialog( msi_dialog *dialog, const WCHAR *argument )
{
@@ -4378,19 +4303,39 @@ static UINT event_new_dialog( msi_dialog *dialog, const WCHAR
*argument )
return ERROR_SUCCESS;
}
+static UINT pending_event_new_dialog( msi_dialog *dialog, const WCHAR *argument )
+{
+ dialog->pending_event = event_new_dialog;
+ if (dialog->pending_argument) msi_free( dialog->pending_argument );
+ dialog->pending_argument = strdupW( argument );
+ return ERROR_SUCCESS;
+}
+
/* create a new child dialog of an existing modal dialog */
static UINT event_spawn_dialog( msi_dialog *dialog, const WCHAR *argument )
{
+ INT r;
/* don't destroy a modeless dialogs that might be our parent */
- event_do_dialog( dialog->package, argument, dialog, FALSE );
- if (dialog->package->CurrentInstallState != ERROR_SUCCESS)
+ r = event_do_dialog( dialog->package, argument, dialog, FALSE );
+ if (r != 0)
+ {
+ dialog->retval = r;
msi_dialog_end_dialog( dialog );
+ }
else
msi_dialog_update_all_controls(dialog);
return ERROR_SUCCESS;
}
+static UINT pending_event_spawn_dialog( msi_dialog *dialog, const WCHAR *argument )
+{
+ dialog->pending_event = event_spawn_dialog;
+ if (dialog->pending_argument) msi_free( dialog->pending_argument );
+ dialog->pending_argument = strdupW( argument );
+ return ERROR_SUCCESS;
+}
+
/* creates a dialog that remains up for a period of time based on a condition */
static UINT event_spawn_wait_dialog( msi_dialog *dialog, const WCHAR *argument )
{
@@ -4489,26 +4434,49 @@ static UINT event_reset( msi_dialog *dialog, const WCHAR *argument
)
return ERROR_SUCCESS;
}
-/* Return ERROR_SUCCESS if dialog is process and ERROR_FUNCTION_FAILED
- * if the given parameter is not a dialog box
- */
-UINT ACTION_DialogBox( MSIPACKAGE *package, const WCHAR *dialog )
+INT ACTION_ShowDialog( MSIPACKAGE *package, const WCHAR *dialog )
{
- UINT r;
+ static const WCHAR szDialog[] =
{'D','i','a','l','o','g',0};
+ MSIRECORD *row;
+ INT rc;
+
+ if (!TABLE_Exists(package->db, szDialog)) return 0;
+
+ row = MSI_CreateRecord(0);
+ if (!row) return -1;
+ MSI_RecordSetStringW(row, 0, dialog);
+ rc = MSI_ProcessMessage(package, INSTALLMESSAGE_SHOWDIALOG, row);
+ msiobj_release(&row->hdr);
+
+ if (rc == -2) rc = 0;
+
+ if (!rc)
+ {
+ MSIRECORD *row = MSI_CreateRecord(2);
+ if (!row) return -1;
+ MSI_RecordSetInteger(row, 1, 2726);
+ MSI_RecordSetStringW(row, 2, dialog);
+ MSI_ProcessMessage(package, INSTALLMESSAGE_INFO, row);
+
+ msiobj_release(&row->hdr);
+ }
+ return rc;
+}
+
+INT ACTION_DialogBox( MSIPACKAGE *package, const WCHAR *dialog )
+{
+ INT r;
if (package->next_dialog) ERR("Already got next dialog... ignoring
it\n");
package->next_dialog = NULL;
- /* Dialogs are chained by filling in the next_dialog member
- * of the package structure, then terminating the current dialog.
- * The code below sees the next_dialog member set, and runs the
- * next dialog.
- * We fall out of the loop below if we come across a modeless
- * dialog, as it returns ERROR_IO_PENDING when we try to run
- * its message loop.
+ /* Dialogs are chained through NewDialog, which sets the next_dialog member.
+ * We fall out of the loop if we reach a modeless dialog, which immediately
+ * returns IDOK, or an EndDialog event, which returns the value corresponding
+ * to its argument.
*/
r = event_do_dialog( package, dialog, NULL, TRUE );
- while (r == ERROR_SUCCESS && package->next_dialog)
+ while (package->next_dialog)
{
WCHAR *name = package->next_dialog;
@@ -4516,7 +4484,6 @@ UINT ACTION_DialogBox( MSIPACKAGE *package, const WCHAR *dialog )
r = event_do_dialog( package, name, NULL, TRUE );
msi_free( name );
}
- if (r == ERROR_IO_PENDING) r = ERROR_SUCCESS;
return r;
}
@@ -4567,9 +4534,9 @@ static const WCHAR validate_product_idW[] =
{'V','a','l','i','d','a','t','e','P'
static const struct control_event control_events[] =
{
- { end_dialogW, event_end_dialog },
- { new_dialogW, event_new_dialog },
- { spawn_dialogW, event_spawn_dialog },
+ { end_dialogW, pending_event_end_dialog },
+ { new_dialogW, pending_event_new_dialog },
+ { spawn_dialogW, pending_event_spawn_dialog },
{ spawn_wait_dialogW, event_spawn_wait_dialog },
{ do_actionW, event_do_action },
{ add_localW, event_add_local },
diff --git a/dll/win32/msi/files.c b/dll/win32/msi/files.c
index 981d568bd8..635bff6198 100644
--- a/dll/win32/msi/files.c
+++ b/dll/win32/msi/files.c
@@ -44,7 +44,7 @@ static void msi_file_update_ui( MSIPACKAGE *package, MSIFILE *f, const
WCHAR *ac
MSI_RecordSetStringW( uirow, 1, f->FileName );
MSI_RecordSetStringW( uirow, 9, f->Component->Directory );
MSI_RecordSetInteger( uirow, 6, f->FileSize );
- msi_ui_actiondata( package, action, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_ui_progress( package, 2, f->FileSize, 0, 0 );
}
@@ -966,7 +966,7 @@ done:
MSI_RecordSetStringW( uirow, 1, MSI_RecordGetString(rec, 1) );
MSI_RecordSetInteger( uirow, 6, 1 ); /* FIXME */
MSI_RecordSetStringW( uirow, 9, destdir );
- msi_ui_actiondata( package, szMoveFiles, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(sourcedir);
@@ -1103,7 +1103,7 @@ static UINT ITERATE_DuplicateFiles(MSIRECORD *row, LPVOID param)
MSI_RecordSetStringW( uirow, 1, MSI_RecordGetString( row, 1 ) );
MSI_RecordSetInteger( uirow, 6, file->FileSize );
MSI_RecordSetStringW( uirow, 9, MSI_RecordGetString( row, 5 ) );
- msi_ui_actiondata( package, szDuplicateFiles, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(dest);
@@ -1179,7 +1179,7 @@ static UINT ITERATE_RemoveDuplicateFiles( MSIRECORD *row, LPVOID
param )
uirow = MSI_CreateRecord( 9 );
MSI_RecordSetStringW( uirow, 1, MSI_RecordGetString( row, 1 ) );
MSI_RecordSetStringW( uirow, 9, MSI_RecordGetString( row, 5 ) );
- msi_ui_actiondata( package, szRemoveDuplicateFiles, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(dest);
@@ -1301,7 +1301,7 @@ done:
uirow = MSI_CreateRecord( 9 );
MSI_RecordSetStringW( uirow, 1, MSI_RecordGetString(row, 1) );
MSI_RecordSetStringW( uirow, 9, dir );
- msi_ui_actiondata( package, szRemoveFiles, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free(filename);
@@ -1391,7 +1391,7 @@ UINT ACTION_RemoveFiles( MSIPACKAGE *package )
uirow = MSI_CreateRecord( 9 );
MSI_RecordSetStringW( uirow, 1, file->FileName );
MSI_RecordSetStringW( uirow, 9, comp->Directory );
- msi_ui_actiondata( package, szRemoveFiles, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
}
diff --git a/dll/win32/msi/font.c b/dll/win32/msi/font.c
index 999f884b28..8a91ecab94 100644
--- a/dll/win32/msi/font.c
+++ b/dll/win32/msi/font.c
@@ -272,7 +272,7 @@ static UINT ITERATE_RegisterFonts(MSIRECORD *row, LPVOID param)
if (p) p++;
else p = uipath;
MSI_RecordSetStringW( uirow, 1, p );
- msi_ui_actiondata( package, szRegisterFonts, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free( uipath );
/* FIXME: call msi_ui_progress? */
@@ -352,7 +352,7 @@ static UINT ITERATE_UnregisterFonts( MSIRECORD *row, LPVOID param )
if (p) p++;
else p = uipath;
MSI_RecordSetStringW( uirow, 1, p );
- msi_ui_actiondata( package, szUnregisterFonts, uirow );
+ MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
msiobj_release( &uirow->hdr );
msi_free( uipath );
/* FIXME: call msi_ui_progress? */
diff --git a/dll/win32/msi/format.c b/dll/win32/msi/format.c
index 142f356155..10baa0ef04 100644
--- a/dll/win32/msi/format.c
+++ b/dll/win32/msi/format.c
@@ -260,7 +260,7 @@ static WCHAR *deformat_environment( FORMAT *format, FORMSTR *str, int
*ret_len )
}
static WCHAR *deformat_literal( FORMAT *format, FORMSTR *str, BOOL *propfound,
- BOOL *nonprop, int *type, int *len )
+ int *type, int *len )
{
LPCWSTR data = get_formstr_data(format, str);
WCHAR *replaced = NULL;
@@ -327,58 +327,24 @@ static LPWSTR build_default_format(const MSIRECORD* record)
{
int i;
int count;
- LPWSTR rc, buf;
- static const WCHAR fmt[] = {'%','i',':','
','%','s',' ',0};
- static const WCHAR fmt_null[] = {'%','i',':','
',' ',0};
- static const WCHAR fmt_index[] = {'%','i',0};
- LPCWSTR str;
- WCHAR index[10];
- DWORD size, max_len, len;
+ WCHAR *rc, buf[26];
+ static const WCHAR fmt[] = {'%','i',':','
','[','%','i',']',' ',0};
+ DWORD size;
count = MSI_RecordGetFieldCount(record);
- max_len = MAX_PATH;
- buf = msi_alloc((max_len + 1) * sizeof(WCHAR));
-
- rc = NULL;
+ rc = msi_alloc(1);
+ rc[0] = 0;
size = 1;
+
for (i = 1; i <= count; i++)
{
- sprintfW(index, fmt_index, i);
- str = MSI_RecordGetString(record, i);
- len = (str) ? lstrlenW(str) : 0;
- len += (sizeof(fmt_null)/sizeof(fmt_null[0]) - 3) + lstrlenW(index);
- size += len;
-
- if (len > max_len)
- {
- max_len = len;
- buf = msi_realloc(buf, (max_len + 1) * sizeof(WCHAR));
- if (!buf)
- {
- msi_free(rc);
- return NULL;
- }
- }
-
- if (str)
- sprintfW(buf, fmt, i, str);
- else
- sprintfW(buf, fmt_null, i);
-
- if (!rc)
- {
- rc = msi_alloc(size * sizeof(WCHAR));
- lstrcpyW(rc, buf);
- }
- else
- {
- rc = msi_realloc(rc, size * sizeof(WCHAR));
- lstrcatW(rc, buf);
- }
+ sprintfW(buf, fmt, i, i);
+ size += lstrlenW(buf);
+ rc = msi_realloc(rc, size * sizeof(WCHAR));
+ lstrcatW(rc, buf);
}
- msi_free(buf);
return rc;
}
@@ -669,7 +635,7 @@ static WCHAR *replace_stack_prop( FORMAT *format, STACK *values,
content->len = *oldsize - 2;
content->type = *type;
- if (*type == FORMAT_NUMBER)
+ if (*type == FORMAT_NUMBER && format->record)
{
replaced = deformat_index( format, content, len );
if (replaced)
@@ -683,7 +649,7 @@ static WCHAR *replace_stack_prop( FORMAT *format, STACK *values,
}
else if (format->package)
{
- replaced = deformat_literal( format, content, propfound, nonprop, type, len );
+ replaced = deformat_literal( format, content, propfound, type, len );
}
else
{
@@ -775,7 +741,7 @@ static BOOL verify_format(LPWSTR data)
static DWORD deformat_string_internal(MSIPACKAGE *package, LPCWSTR ptr,
WCHAR** data, DWORD *len,
- MSIRECORD* record, INT* failcount)
+ MSIRECORD* record)
{
FORMAT format;
FORMSTR *str = NULL;
@@ -858,18 +824,37 @@ static DWORD deformat_string_internal(MSIPACKAGE *package, LPCWSTR
ptr,
UINT MSI_FormatRecordW( MSIPACKAGE* package, MSIRECORD* record, LPWSTR buffer,
LPDWORD size )
{
- WCHAR *format, *deformated;
+ WCHAR *format, *deformated = NULL;
UINT rc = ERROR_INVALID_PARAMETER;
DWORD len;
+ MSIRECORD *record_deformated;
+ int field_count, i;
TRACE("%p %p %p %p\n", package, record, buffer, size);
+ dump_record(record);
if (!(format = msi_dup_record_field( record, 0 )))
format = build_default_format( record );
- TRACE("%s\n", debugstr_w(format));
+ field_count = MSI_RecordGetFieldCount(record);
+ record_deformated = MSI_CloneRecord(record);
+ if (!record_deformated)
+ {
+ rc = ERROR_OUTOFMEMORY;
+ goto end;
+ }
+ MSI_RecordSetStringW(record_deformated, 0, format);
+ for (i = 1; i <= field_count; i++)
+ {
+ if (MSI_RecordGetString(record, i))
+ {
+ deformat_string_internal(package, MSI_RecordGetString(record, i),
&deformated, &len, NULL);
+ MSI_RecordSetStringW(record_deformated, i, deformated);
+ msi_free(deformated);
+ }
+ }
- deformat_string_internal( package, format, &deformated, &len, record, NULL
);
+ deformat_string_internal(package, format, &deformated, &len,
record_deformated);
if (buffer)
{
if (*size>len)
@@ -891,6 +876,8 @@ UINT MSI_FormatRecordW( MSIPACKAGE* package, MSIRECORD* record, LPWSTR
buffer,
else rc = ERROR_SUCCESS;
*size = len;
+ msiobj_release(&record_deformated->hdr);
+end:
msi_free( format );
msi_free( deformated );
return rc;
diff --git a/dll/win32/msi/lang/msi_Bg.rc b/dll/win32/msi/lang/msi_Bg.rc
index e5d5df7c00..46ab527b80 100644
--- a/dll/win32/msi/lang/msi_Bg.rc
+++ b/dll/win32/msi/lang/msi_Bg.rc
@@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "The specified installation package could not be opened. Please check the
file path and try again."
+ 5 "ïúòÿò %s íå å íàìåðåí"
+ 9 "ïîñòàâåòå äèñê %s"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parameter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "âúâåäåòå ïàïêàòà, êîÿòî ñúäúðæà %s"
+ 12 "èçòî÷íèêà çà èíñòàëàöèÿ íà ôóíêöèîíàëíîñòòà ëèïñâà"
+ 13 "ìðåæîâîòî óñòðîéñòâà íóæíî çà ôóíêöèîíàëíîñòòà ëèïñâà "
+ 14 "ôóíêöèîíàëíîñò îò:"
+ 15 "èçáåðåòå ïàïêàòà, êîÿòî ñúäúðæà %s"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "The specified installation package could not be opened. Please check the file
path and try again."
- 5 "ïúòÿò %s íå å íàìåðåí"
- 9 "ïîñòàâåòå äèñê %s"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parammeter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pa [...]
- 11 "âúâåäåòå ïàïêàòà, êîÿòî ñúäúðæà %s"
- 12 "èçòî÷íèêà çà èíñòàëàöèÿ íà ôóíêöèîíàëíîñòòà ëèïñâà"
- 13 "ìðåæîâîòî óñòðîéñòâà íóæíî çà ôóíêöèîíàëíîñòòà ëèïñâà "
- 14 "ôóíêöèîíàëíîñò îò:"
- 15 "èçáåðåòå ïàïêàòà, êîÿòî ñúäúðæà %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Da.rc b/dll/win32/msi/lang/msi_Da.rc
index fc37ff0bb9..b14bd9f285 100644
--- a/dll/win32/msi/lang/msi_Da.rc
+++ b/dll/win32/msi/lang/msi_Da.rc
@@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_DANISH, SUBLANG_DEFAULT
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "Kunne ikke åbne den specificerede installationspakke. Kontroller stien og
prøv igen."
+ 5 "kunne ikke finden stien '%s'."
+ 9 "indsæt disk '%s'"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parammeter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "angiv kataloget som indeholder '%s'."
+ 12 "featurens installationskilde mangler."
+ 13 "featurens netværksdrev mangler."
+ 14 "feature fra:"
+ 15 "Vælg kataloget som indeholder '%s'."
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "Kunne ikke åbne den specificerede installationspakke. Kontroller stien og prøv
igen."
- 5 "kunne ikke finden stien '%s'."
- 9 "indsæt disk '%s'"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parammeter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pa [...]
- 11 "angiv kataloget som indeholder '%s'."
- 12 "featurens installationskilde mangler."
- 13 "featurens netværksdrev mangler."
- 14 "feature fra:"
- 15 "Vælg kataloget som indeholder '%s'."
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_De.rc b/dll/win32/msi/lang/msi_De.rc
index 558107c57f..0d486f3f87 100644
--- a/dll/win32/msi/lang/msi_De.rc
+++ b/dll/win32/msi/lang/msi_De.rc
@@ -19,21 +19,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "Das angegebene Installationspaket konnte nicht geöffnet werden. Bitte
überprüfen Sie den Pfadnamen und versuchen Sie es noch einmal."
+ 5 "Der Pfad %s wurde nicht gefunden."
+ 9 "Bitte Disk %s einlegen."
+ 10 "Windows Installer %s\n\nBenutzung:\nmsiexec Befehl {Parameter} [Zusätzliche
Parammeter]\n\nProdukt installieren:\n\t/i {Paket|Produktcode} [Eigenschaft]\n\t/package
{Paket|Produktcode} [Eigenschaft]\n\t/a Paket [Eigenschaft]\nInstallation
reparieren:\n\t/f[p|o|e|d|c|a|u|m|s|v] {Paket|Produktcode}\nProdukt
deinstallieren:\n\t/uninstall {Paket|Produktcode} [Eigenschaft]\n\t/x {Paket|Produktcode}
[Eigenschaft]\nProdukt ankündigen:\n\t/j[u|m] Paket [/t Transformationspaket] [/g Sprac
[...]
+ 11 "Geben Sie das Verzeichnis ein, dass %s enthält."
+ 12 "Die Installationsquelle für das Feature fehlt."
+ 13 "Das Netzwerklaufwerk für das Feature fehlt."
+ 14 "Feature von:"
+ 15 "Wählen Sie das Verzeichnis aus, dass %s enthält."
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "Das angegebene Installationspaket konnte nicht geöffnet werden. Bitte überprüfen
Sie den Pfadnamen und versuchen Sie es noch einmal."
- 5 "Der Pfad %s wurde nicht gefunden."
- 9 "Bitte Disk %s einlegen."
- 10 "Windows Installer %s\n\nBenutzung:\nmsiexec Befehl {Parameter} [Zusätzliche
Parammeter]\n\nProdukt installieren:\n\t/i {Paket|Produktcode} [Eigenschaft]\n\t/package
{Paket|Produktcode} [Eigenschaft]\n\t/a Paket [Eigenschaft]\nInstallation
reparieren:\n\t/f[p|o|e|d|c|a|u|m|s|v] {Paket|Produktcode}\nProdukt
deinstallieren:\n\t/uninstall {Paket|Produktcode} [Eigenschaft]\n\t/x {Paket|Produktcode}
[Eigenschaft]\nProdukt ankündigen:\n\t/j[u|m] Paket [/t Transformationspaket] [/g Sprachke
[...]
- 11 "Geben Sie das Verzeichnis ein, dass %s enthält."
- 12 "Die Installationsquelle für das Feature fehlt."
- 13 "Das Netzwerklaufwerk für das Feature fehlt."
- 14 "Feature von:"
- 15 "Wählen Sie das Verzeichnis aus, dass %s enthält."
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_En.rc b/dll/win32/msi/lang/msi_En.rc
index 2b520e98d1..d7972f7409 100644
--- a/dll/win32/msi/lang/msi_En.rc
+++ b/dll/win32/msi/lang/msi_En.rc
@@ -19,21 +19,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_ENGLISH, SUBLANG_DEFAULT
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "The specified installation package could not be opened. Please check the
file path and try again."
+ 5 "path %s not found"
+ 9 "insert disk %s"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parameter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "enter which folder contains %s"
+ 12 "install source for feature missing"
+ 13 "network drive for feature missing"
+ 14 "feature from:"
+ 15 "choose which folder contains %s"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "The specified installation package could not be opened. Please check the file
path and try again."
- 5 "path %s not found"
- 9 "insert disk %s"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parameter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pat [...]
- 11 "enter which folder contains %s"
- 12 "install source for feature missing"
- 13 "network drive for feature missing"
- 14 "feature from:"
- 15 "choose which folder contains %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Es.rc b/dll/win32/msi/lang/msi_Es.rc
index f81e26096a..c9b3392b4c 100644
--- a/dll/win32/msi/lang/msi_Es.rc
+++ b/dll/win32/msi/lang/msi_Es.rc
@@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "No se ha podido abrir el paquete de instalación especificado. Por favor,
compruebe la ruta del archivo y vuelva a intentarlo."
+ 5 "ruta %s no encontrada"
+ 9 "inserte el disco %s"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parameter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "introduzca qué carpeta contiene %s"
+ 12 "instalar fuente para característica ausente"
+ 13 "unidad de red para característica ausente"
+ 14 "característica de:"
+ 15 "elija qué carpeta contiene %s"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "No se ha podido abrir el paquete de instalación especificado. Por favor,
compruebe la ruta del archivo y vuelva a intentarlo."
- 5 "ruta %s no encontrada"
- 9 "inserte el disco %s"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parammeter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pa [...]
- 11 "introduzca qué carpeta contiene %s"
- 12 "instalar fuente para característica ausente"
- 13 "unidad de red para característica ausente"
- 14 "característica de:"
- 15 "elija qué carpeta contiene %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Fi.rc b/dll/win32/msi/lang/msi_Fi.rc
index 4229e2dc9c..233aa2c3ae 100644
--- a/dll/win32/msi/lang/msi_Fi.rc
+++ b/dll/win32/msi/lang/msi_Fi.rc
@@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_FINNISH, SUBLANG_DEFAULT
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "Annettua asennuspakettia ei voitu avata. Tarkista tiedoston polku ja yritä
uudelleen."
+ 5 "Polkua %s ei löydy."
+ 9 "Anna levy %s"
+ 10 "Windows Installer %s\n\nKäyttö:\nmsiexec komento {pakollinen parametri}
[valinnainen parametri]\n\nAsenna tuote:\n\t/i {paketti|tuotekoodi}
[ominaisuus]\n\t/package {paketti|tuotekoodi} [ominaisuus]\n\t/a {paketti}
[ominaisuus]\nKorjaa asennus:\n\t/f[p|o|e|d|c|a|u|m|s|v] {paketti|tuotekoodi}\nPoista
tuote:\n\t/uninstall {paketti|tuotekoodi} [ominaisuus]\n\t/x {paketti|tuotekoodi}
[ominaisuus]\nMainosta (advertise) tuotetta:\n\t/j[u|m] paketti [/t muunnos] [/g
kielitunnus]\nAsenna [...]
+ 11 "Anna kansio, jossa on %s"
+ 12 "Ominaisuuden asennuslähde puuttuu."
+ 13 "Ominaisuuden verkkolevy puuttuu."
+ 14 "Ominaisuus:"
+ 15 "Valitse kansio, jossa on %s"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "Annettua asennuspakettia ei voitu avata. Tarkista tiedoston polku ja yritä
uudelleen."
- 5 "Polkua %s ei löydy."
- 9 "Anna levy %s"
- 10 "Windows Installer %s\n\nKäyttö:\nmsiexec komento {pakollinen parametri}
[valinnainen parametri]\n\nAsenna tuote:\n\t/i {paketti|tuotekoodi}
[ominaisuus]\n\t/package {paketti|tuotekoodi} [ominaisuus]\n\t/a {paketti}
[ominaisuus]\nKorjaa asennus:\n\t/f[p|o|e|d|c|a|u|m|s|v] {paketti|tuotekoodi}\nPoista
tuote:\n\t/uninstall {paketti|tuotekoodi} [ominaisuus]\n\t/x {paketti|tuotekoodi}
[ominaisuus]\nMainosta (advertise) tuotetta:\n\t/j[u|m] paketti [/t muunnos] [/g
kielitunnus]\nAsenna ko [...]
- 11 "Anna kansio, jossa on %s"
- 12 "Ominaisuuden asennuslähde puuttuu."
- 13 "Ominaisuuden verkkolevy puuttuu."
- 14 "Ominaisuus:"
- 15 "Valitse kansio, jossa on %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Fr.rc b/dll/win32/msi/lang/msi_Fr.rc
index ca1f4d6d3e..026baa11ea 100644
--- a/dll/win32/msi/lang/msi_Fr.rc
+++ b/dll/win32/msi/lang/msi_Fr.rc
@@ -19,22 +19,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
+LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
-/* UTF-8 */
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "Le paquet d'installation spécifié n'a pu être ouvert. Veuillez
vérifier le chemin du fichier et réessayer."
+ 5 "Le chemin %s est introuvable"
+ 9 "insérez le disque %s"
+ 10 "Programme d'installation Windows %s\n\nUsage :\nmsiexec commande
{paramètre obligatoire} [paramètre optionnel]\n\nInstaller un produit :\n\t/i
{paquet|code_produit} [propriété]\n\t/package {paquet|code_produit} [propriété]\n\t/a
paquet [propriété]\nRéparer une installation :\n\t/f[p|o|e|d|c|a|u|m|s|v]
{paquet|code_produit}\nDésinstaller un produit :\n\t/uninstall {paquet|code_produit}
[propriété]\n\t/x {paquet|code_produit} [propriété]\nPublier un produit :\n\t/j[u|m]
paquet [/t [...]
+ 11 "saisissez le nom du dossier contenant %s"
+ 12 "source d'installation pour la fonctionnalité manquante"
+ 13 "lecteur réseau pour la fonctionnalité manquante"
+ 14 "fonctionnalité depuis :"
+ 15 "sélectionnez le dossier contenant %s"
+}
-LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "Le paquet d'installation spécifié n'a pu être ouvert. Veuillez vérifier
le chemin du fichier et réessayer."
- 5 "Le chemin %s est introuvable"
- 9 "insérez le disque %s"
- 10 "Programme d'installation Windows %s\n\nUsage :\nmsiexec commande {paramètre
obligatoire} [paramètre optionnel]\n\nInstaller un produit :\n\t/i {paquet|code_produit}
[propriété]\n\t/package {paquet|code_produit} [propriété]\n\t/a paquet
[propriété]\nRéparer une installation :\n\t/f[p|o|e|d|c|a|u|m|s|v]
{paquet|code_produit}\nDésinstaller un produit :\n\t/uninstall {paquet|code_produit}
[propriété]\n\t/x {paquet|code_produit} [propriété]\nPublier un produit :\n\t/j[u|m]
paquet [/t tra [...]
- 11 "saisissez le nom du dossier contenant %s"
- 12 "source d'installation pour la fonctionnalité manquante"
- 13 "lecteur réseau pour la fonctionnalité manquante"
- 14 "fonctionnalité depuis :"
- 15 "sélectionnez le dossier contenant %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_He.rc b/dll/win32/msi/lang/msi_He.rc
index be903327c2..492e2aae4c 100644
--- a/dll/win32/msi/lang/msi_He.rc
+++ b/dll/win32/msi/lang/msi_He.rc
@@ -21,21 +21,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "The specified installation package could not be opened. Please check the
file path and try again."
+ 5 "הנתיב %s לא נמצא"
+ 9 "הכנס דיסק %s"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parameter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "הזן איזו תיקיה מכילה את %s"
+ 12 "מקור ההתקנה עבור התכונה חסר"
+ 13 "כונן רשת עבור התכונה חסר"
+ 14 "מהתקן מ:"
+ 15 "בחר איזו תיקיה מכילה את %s"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "The specified installation package could not be opened. Please check the file
path and try again."
- 5 "הנתיב %s לא נמצא"
- 9 "הכנס דיסק %s"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parameter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pat [...]
- 11 "הזן איזו תיקיה מכילה את %s"
- 12 "מקור ההתקנה עבור התכונה חסר"
- 13 "כונן רשת עבור התכונה חסר"
- 14 "מהתקן מ:"
- 15 "בחר איזו תיקיה מכילה את %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Hu.rc b/dll/win32/msi/lang/msi_Hu.rc
index 4354013251..70ab46f9d9 100644
--- a/dll/win32/msi/lang/msi_Hu.rc
+++ b/dll/win32/msi/lang/msi_Hu.rc
@@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "The specified installation package could not be opened. Please check the
file path and try again."
+ 5 "%s útvonal nem található"
+ 9 "helyezze be a lemezt: %s"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parameter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "adja meg melyik mappa tartalmazza ezt: %s"
+ 12 "hiányzó tulajdonság a telepítési forráshoz"
+ 13 "hiányzó tulajdonság a hálózati meghajtóhoz"
+ 14 "tulajdonság innen:"
+ 15 "válassza ki, melyik mappa tartalmazza ezt: %s"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "The specified installation package could not be opened. Please check the file
path and try again."
- 5 "%s útvonal nem található"
- 9 "helyezze be a lemezt: %s"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parammeter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pa [...]
- 11 "adja meg melyik mappa tartalmazza ezt: %s"
- 12 "hiányzó tulajdonság a telepítési forráshoz"
- 13 "hiányzó tulajdonság a hálózati meghajtóhoz"
- 14 "tulajdonság innen:"
- 15 "válassza ki, melyik mappa tartalmazza ezt: %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_It.rc b/dll/win32/msi/lang/msi_It.rc
index bc1ad8470e..4a437a8ab2 100644
--- a/dll/win32/msi/lang/msi_It.rc
+++ b/dll/win32/msi/lang/msi_It.rc
@@ -18,22 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
+LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
-/*UTF-8*/
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "Impossibile aprire il pacchetto di installazione specificato. Per favore
controlla l'indirizzo del file e riprova."
+ 5 "percorso %s non trovato"
+ 9 "inserire disco %s"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parammeter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "immettere il nome della cartella che contiene %s"
+ 12 "sorgente di installazione per la funzionalità mancante"
+ 13 "periferica di rete per la funzionalità mancante"
+ 14 "funzionalità da:"
+ 15 "selezionare la cartella che contiene %s"
+}
-LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "Impossibile aprire il pacchetto di installazione specificato. Per favore
controlla l'indirizzo del file e riprova."
- 5 "percorso %s non trovato"
- 9 "inserire disco %s"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parammeter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pa [...]
- 11 "immettere il nome della cartella che contiene %s"
- 12 "sorgente di installazione per la funzionalità mancante"
- 13 "periferica di rete per la funzionalità mancante"
- 14 "funzionalità da:"
- 15 "selezionare la cartella che contiene %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Ja.rc b/dll/win32/msi/lang/msi_Ja.rc
index c0759563e8..c3ac0197d5 100644
--- a/dll/win32/msi/lang/msi_Ja.rc
+++ b/dll/win32/msi/lang/msi_Ja.rc
@@ -1,15 +1,157 @@
LANGUAGE LANG_JAPANESE, SUBLANG_NEUTRAL
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 5 "パス %s がみつかりませんでした"
+ 9 "ディスク %s を挿入してください"
+ 10 "無効なパラメータです"
+ 11 "%s のあるフォルダを入力してください"
+ 12 "機能のインストール元がありません"
+ 13 "機能があるネットワーク ドライブがありません"
+ 14 "機能の場所:"
+ 15 "%s のあるフォルダを選択してください"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 5 "パス %s がみつかりませんでした"
- 9 "ディスク %s を挿入してください"
- 10 "無効なパラメータです"
- 11 "%s のあるフォルダを入力してください"
- 12 "機能\のインストール元がありません"
- 13 "機能\があるネットワーク ドライブがありません"
- 14 "機能\の場所:"
- 15 "%s のあるフォルダを選択してください"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Ko.rc b/dll/win32/msi/lang/msi_Ko.rc
index fc72a65ee5..47d29b9202 100644
--- a/dll/win32/msi/lang/msi_Ko.rc
+++ b/dll/win32/msi/lang/msi_Ko.rc
@@ -20,21 +20,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 " 지정한 설치 패키지를 열 수 없습니다. 파일 경로를 확인하고 다시 시도하십시오."
+ 5 "%s 경로를 찾을수 없습니다"
+ 9 "디스크 %s 삽입"
+ 10 "Windows Installer %s\n\n사용법:\nmsiexec 명령 {필수 매개변수} [선택적 매개변수]\n\n제품
설치:\n\t/i {package|productcode} [property]\n\t/package {package|productcode}
[property]\n\t/a package [property]\n설치 복구:\n\t/f[p|o|e|d|c|a|u|m|s|v]
{package|productcode}\n제품 제거:\n\t/uninstall {package|productcode} [property]\n\t/x
{package|productcode} [property]\n제품 알리기:\n\t/j[u|m] package [/t transform] [/g
languageid]\n패치 추가:\n\t/p patchpackage [property]\n\t/p patchpackage /a package
[property]\n위의 명령어를 위한 L [...]
+ 11 "%s를 포함하는 폴더를 입력하세여"
+ 12 "빠진 부분(feature)을 위한 설치 원본"
+ 13 "빠진 부분(feature)을 위한 네트워크 드라이브"
+ 14 "부분(feature)에서:"
+ 15 " %s를 포함하는 폴더 선택"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 " 지정한 설치 패키지를 열 수 없습니다. 파일 경로를 확인하고 다시 시도하십시오."
- 5 "%s 경로를 찾을수 없습니다"
- 9 "디스크 %s 삽입"
- 10 "Windows Installer %s\n\n사용법:\nmsiexec 명령 {필수 매개변수} [선택적 매개변수]\n\n제품 설치:\n\t/i
{package|productcode} [property]\n\t/package {package|productcode} [property]\n\t/a
package [property]\n설치 복구:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\n제품
제거:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\n제품 알리기:\n\t/j[u|m] package [/t transform] [/g languageid]\n패치 추가:\n\t/p
patchpackage [property]\n\t/p patchpackage /a package [property]\n위의 명령어를 위한 Log [...]
- 11 "%s를 포함하는 폴더를 입력하세여"
- 12 "빠진 부분(feature)을 위한 설치 원본"
- 13 "빠진 부분(feature)을 위한 네트워크 드라이브"
- 14 "부분(feature)에서:"
- 15 " %s를 포함하는 폴더 선택"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Lt.rc b/dll/win32/msi/lang/msi_Lt.rc
index 57de188ed6..597b360ab2 100644
--- a/dll/win32/msi/lang/msi_Lt.rc
+++ b/dll/win32/msi/lang/msi_Lt.rc
@@ -18,22 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
+LANGUAGE LANG_LITHUANIAN, SUBLANG_NEUTRAL
-/* UTF-8 */
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "Nepavyko atverti nurodyto diegimo paketo. Patikrinkite failo kelią ir
mėginkite dar kartą."
+ 5 "kelias %s nerastas"
+ 9 "įdėkite diską %s"
+ 10 "Windows diegimo programa %s\n\nNaudojimas:\nmsiexec komanda {būtinas
parametras} [nebūtinas parametras]\n\nĮdiegti produktą:\n\t/i {paketas|produkto_kodas}
[savybė]\n\t/package {paketas|produkto_kodas} [savybė]\n\t/a paketas [savybė]\nTaisyti
įdiegimą:\n\t/f[p|o|e|d|c|a|u|m|s|v] {paketas|produkto_kodas}\nPašalinti
produktą:\n\t/uninstall {paketas|produkto_kodas} [savybė]\n\t/x {paketas|produkto_kodas}
[savybė]\nSkelbti produktą:\n\t/j[u|m] paketas [/t pakeitimas] [/g kalbos_ident [...]
+ 11 "įveskite aplanką, kuris turi %s"
+ 12 "trūksta diegimo šaltinio komponentui"
+ 13 "trūksta tinklo disko komponentui"
+ 14 "komponentas iš:"
+ 15 "parinkite aplanką, kuris turi %s"
+}
-LANGUAGE LANG_LITHUANIAN, SUBLANG_NEUTRAL
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "Nepavyko atverti nurodyto diegimo paketo. Patikrinkite failo kelią ir mėginkite
dar kartą."
- 5 "kelias %s nerastas"
- 9 "įdėkite diską %s"
- 10 "Windows diegimo programa %s\n\nNaudojimas:\nmsiexec komanda {būtinas
parametras} [nebūtinas parametras]\n\nĮdiegti produktą:\n\t/i {paketas|produkto_kodas}
[savybė]\n\t/package {paketas|produkto_kodas} [savybė]\n\t/a paketas [savybė]\nTaisyti
įdiegimą:\n\t/f[p|o|e|d|c|a|u|m|s|v] {paketas|produkto_kodas}\nPašalinti
produktą:\n\t/uninstall {paketas|produkto_kodas} [savybė]\n\t/x {paketas|produkto_kodas}
[savybė]\nSkelbti produktą:\n\t/j[u|m] paketas [/t pakeitimas] [/g kalbos_identifi [...]
- 11 "įveskite aplanką, kuris turi %s"
- 12 "trūksta diegimo šaltinio komponentui"
- 13 "trūksta tinklo disko komponentui"
- 14 "komponentas iš:"
- 15 "parinkite aplanką, kuris turi %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Nl.rc b/dll/win32/msi/lang/msi_Nl.rc
index 4157d4a41f..29197e8916 100644
--- a/dll/win32/msi/lang/msi_Nl.rc
+++ b/dll/win32/msi/lang/msi_Nl.rc
@@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "Het opgegeven installatie pakket kon niet worden geopend. Verifieer het
bestandspad en probeer opnieuw."
+ 5 "Pad %s niet gevonden"
+ 9 "Plaats disk %s"
+ 10 "Windows Installer %s\n\nGebruik:\nmsiexec commando {vereiste parameter}
[optionele parameter]\n\nInstalleer een product:\n\t/i {pakket|productcode}
[eigenschap]\n\t/package {pakket|productcode} [eigenschap]\n\t/a pakket
[eigenschap]\nHerstel een installatie:\n\t/f[p|o|e|d|c|a|u|m|s|v]
{pakket|productcode}\nVerwijder een product:\n\t/uninstall {pakket|productcode}
[eigenschap]\n\t/x {pakket|productcode} [eigenschap]\nAdverteer een product:\n\t/j[u|m]
pakket [/t transform] [/g lang [...]
+ 11 "Voer de map in die %s bevat"
+ 12 "De installatiebron van de feature ontbreekt"
+ 13 "De netwerkschijf met de feature ontbreekt"
+ 14 "Feature van:"
+ 15 "Kies de map die %s bevat"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "Het opgegeven installatie pakket kon niet worden geopend. Verifieer het
bestandspad en probeer opnieuw."
- 5 "Pad %s niet gevonden"
- 9 "Plaats disk %s"
- 10 "Windows Installer %s\n\nGebruik:\nmsiexec commando {vereiste parameter}
[optionele parameter]\n\nInstalleer een product:\n\t/i {pakket|productcode}
[eigenschap]\n\t/package {pakket|productcode} [eigenschap]\n\t/a pakket
[eigenschap]\nHerstel een installatie:\n\t/f[p|o|e|d|c|a|u|m|s|v]
{pakket|productcode}\nVerwijder een product:\n\t/uninstall {pakket|productcode}
[eigenschap]\n\t/x {pakket|productcode} [eigenschap]\nAdverteer een product:\n\t/j[u|m]
pakket [/t transform] [/g languag [...]
- 11 "Voer de map in die %s bevat"
- 12 "De installatiebron van de feature ontbreekt"
- 13 "De netwerkschijf met de feature ontbreekt"
- 14 "Feature van:"
- 15 "Kies de map die %s bevat"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_No.rc b/dll/win32/msi/lang/msi_No.rc
index 733525dba6..8c020bfe61 100644
--- a/dll/win32/msi/lang/msi_No.rc
+++ b/dll/win32/msi/lang/msi_No.rc
@@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_NORWEGIAN, SUBLANG_NORWEGIAN_BOKMAL
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "Klarte ikke åpne den oppgitte installasjonspakken. Kontroller filbanen og
prøv igjen."
+ 5 "Fant ikke stien '%s'."
+ 9 "Sett i disk '%s'"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parameter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "Oppgi katalogen som inneholder '%s'."
+ 12 "Egenskapens installasjonskilde mangler."
+ 13 "Egenskapens nettverksstasjon mangler."
+ 14 "Egenskap fra::"
+ 15 "Velg katalogen som inneholder '%s'."
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "Klarte ikke åpne den oppgitte installasjonspakken. Kontroller filbanen og prøv
igjen."
- 5 "Fant ikke stien '%s'."
- 9 "Sett i disk '%s'"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parammeter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pa [...]
- 11 "Oppgi katalogen som inneholder '%s'."
- 12 "Egenskapens installasjonskilde mangler."
- 13 "Egenskapens nettverksstasjon mangler."
- 14 "Egenskap fra::"
- 15 "Velg katalogen som inneholder '%s'."
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Pl.rc b/dll/win32/msi/lang/msi_Pl.rc
index 2f43e6c682..5bbf4b07c3 100644
--- a/dll/win32/msi/lang/msi_Pl.rc
+++ b/dll/win32/msi/lang/msi_Pl.rc
@@ -19,21 +19,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
-
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "Nie udało się otworzyć wybranego pakietu instalacyjnego. Sprawdź czy ścieżka
jest poprawna i spróbuj ponownie."
+ 5 "ścieżka '%s' nie została odnaleziona"
+ 9 "włóż dysk '%s'"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parameter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "wprowadź siceżkę do folderu zawierającego '%s'"
+ 12 "źródło danych zawierające żądanę funkcję jest niedostępne"
+ 13 "dysk siecowy zawierający żądaną funckje jest niedostępny"
+ 14 "funkcja z:"
+ 15 "wybierz folder zawierający '%s'"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "Nie udało się otworzyć wybranego pakietu instalacyjnego. Sprawdź czy ścieżka
jest poprawna i spróbuj ponownie."
- 5 "ścieżka '%s' nie została odnaleziona"
- 9 "włóż dysk '%s'"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parammeter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pa [...]
- 11 "wprowadź siceżkę do folderu zawierającego '%s'"
- 12 "źródło danych zawierające żądanę funkcję jest niedostępne"
- 13 "dysk siecowy zawierający żądaną funckje jest niedostępny"
- 14 "funkcja z:"
- 15 "wybierz folder zawierający '%s'"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
diff --git a/dll/win32/msi/lang/msi_Pt.rc b/dll/win32/msi/lang/msi_Pt.rc
index 22147b87e6..1d919c993b 100644
--- a/dll/win32/msi/lang/msi_Pt.rc
+++ b/dll/win32/msi/lang/msi_Pt.rc
@@ -20,36 +20,320 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include "windef.h"
+LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
-#pragma code_page(65001)
+STRINGTABLE
+{
+ 4 "O pacote de instalação especificado não pôde ser aberto. Por favor, verifique
o arquivo e tente novamente."
+ 5 "caminho %s não encontrado"
+ 9 "insira disco %s"
+ 10 "Windows Installer %s\n\nModo de usar:\nmsiexec command {required parameter}
[optional parammeter]\n\nInstalar um produto:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nReparar
uma instalação:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nDesinstalar um
produto:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAnunciar um produto:\n\t/j[u|m] package [/t transform] [/g language [...]
+ 11 "entre a pasta que contém %s"
+ 12 "faltando fonte de instalação para característica"
+ 13 "faltando drive de rede para característica"
+ 14 "origem da característica:"
+ 15 "escolha a pasta que contém %s"
+}
-LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+/* Standard action template strings */
STRINGTABLE
{
- 4 "O pacote de instalação especificado não pôde ser aberto. Por favor, verifique o
arquivo e tente novamente."
- 5 "caminho %s não encontrado"
- 9 "insira disco %s"
- 10 "Windows Installer %s\n\nModo de usar:\nmsiexec command {required parameter}
[optional parammeter]\n\nInstalar um produto:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nReparar
uma instalação:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nDesinstalar um
produto:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAnunciar um produto:\n\t/j[u|m] package [/t transform] [/g languageid] [...]
- 11 "entre a pasta que contém %s"
- 12 "faltando fonte de instalação para característica"
- 13 "faltando drive de rede para característica"
- 14 "origem da característica:"
- 15 "escolha a pasta que contém %s"
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_REGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_REGISTERCOMPLUS "AppId: [1]{{, AppType: [2], Users: [3], RSN:
[4]}}"
+ IDS_TEMP_REGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_REGISTERFONTS "Font: [1]"
+ IDS_TEMP_REGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_REGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_REGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_REMOVEDUPLICATEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_REMOVEEXISTINGPRODUCTS "Application: [1], Command line: [2]"
+ IDS_TEMP_REMOVEFILES "File: [1], Directory: [9]"
+ IDS_TEMP_REMOVEFOLDERS "Folder: [1]"
+ IDS_TEMP_REMOVEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_REMOVEREGISTRYVALUES "Key: [1], Name: [2]"
+ IDS_TEMP_REMOVESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_SELFREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_SELFUNREGMODULES "File: [1], Folder: [2]"
+ IDS_TEMP_STARTSERVICES "Service: [1]"
+ IDS_TEMP_STOPSERVICES "Service: [1]"
+ IDS_TEMP_UNPUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_UNPUBLISHFEATURES "Feature: [1]"
+ IDS_TEMP_UNREGISTERCLASSINFO "Class Id: [1]"
+ IDS_TEMP_UNREGISTERCOMPLUS "AppId: [1]{{, AppType: [2]}}"
+ IDS_TEMP_UNREGISTEREXTENSIONINFO "Extension: [1]"
+ IDS_TEMP_UNREGISTERFONTS "Font: [1]"
+ IDS_TEMP_UNREGISTERMIMEINFO "MIME Content Type: [1], Extension: [2]"
+ IDS_TEMP_UNREGISTERPROGIDINFO "ProgId: [1]"
+ IDS_TEMP_UNREGISTERTYPELIBRARIES "LibID: [1]"
+ IDS_TEMP_WRITEENVIRONMENTSTRINGS "Name: [1], Value: [2], Action [3]"
+ IDS_TEMP_WRITEINIVALUES "File: [1], Section: [2], Key: [3], Value: [4]"
+ IDS_TEMP_WRITEREGISTRYVALUES "Key: [1], Name: [2], Value: [3]"
}
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE
STRINGTABLE
{
- 4 "The specified installation package could not be opened. Please check the file
path and try again."
- 5 "localização %s não encontrada"
- 9 "insira o disco %s"
- 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter} [optional
parammeter]\n\nInstall a product:\n\t/i {package|productcode} [property]\n\t/package
{package|productcode} [property]\n\t/a package [property]\nRepair an
installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a pa [...]
- 11 "indique que pasta contém %s"
- 12 "instalar fonte para a opção em falta"
- 13 "controlador de rede para a opção em falta"
- 14 "opção de:"
- 15 "indique que pasta contém %s"
+ 4 "The specified installation package could not be opened. Please check the
file path and try again."
+ 5 "localização %s não encontrada"
+ 9 "insira o disco %s"
+ 10 "Windows Installer %s\n\nUsage:\nmsiexec command {required parameter}
[optional parammeter]\n\nInstall a product:\n\t/i {package|productcode}
[property]\n\t/package {package|productcode} [property]\n\t/a package [property]\nRepair
an installation:\n\t/f[p|o|e|d|c|a|u|m|s|v] {package|productcode}\nUninstall a
product:\n\t/uninstall {package|productcode} [property]\n\t/x {package|productcode}
[property]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nApply
a [...]
+ 11 "indique que pasta contém %s"
+ 12 "instalar fonte para a opção em falta"
+ 13 "controlador de rede para a opção em falta"
+ 14 "opção de:"
+ 15 "indique que pasta contém %s"
+}
+
+/* Error messages */
+STRINGTABLE
+{
+ IDS_FATALEXIT "{{Fatal error: }}"
+ IDS_ERROR "{{Error [1]. }}"
+ IDS_WARNING "Warning [1]."
+ IDS_INFO "Info [1]."
+ IDS_INSTALLERROR "The installer has encountered an unexpected error installing
this package. This may indicate a problem with this package. The error code is [1]. {{The
arguments are: [2], [3], [4]}}"
+ IDS_OUTOFDISKSPACE "{{Disk full: }}"
+ IDS_ACTIONSTART "Action [Time]: [1]. [2]"
+ IDS_COMMONDATA "Message type: [1], Argument: [2]{, [3]}"
+ IDS_INFO_ACTIONSTART "Action start [Time]: [1]."
+ IDS_INFO_ACTIONENDED "Action ended [Time]: [1]. Return value [2]."
+ IDS_INFO_LOGGINGSTART "=== Logging started: [Date] [Time] ==="
+
+ IDS_ERR_INSERTDISK "Please insert the disk: [2]"
+ IDS_ERR_CABNOTFOUND "Source file not found{{(cabinet)}}: [2]. Verify that the
file exists and that you can access it."
+}
+
+/* Standard action description strings */
+STRINGTABLE
+{
+ IDS_DESC_ALLOCATEREGISTRYSPACE "Allocating registry space"
+ IDS_DESC_APPSEARCH "Searching for installed applications"
+ IDS_DESC_BINDIMAGE "Binding executables"
+ IDS_DESC_CCPSEARCH "Searching for qualifying products"
+ IDS_DESC_COSTFINALIZE "Computing space requirements"
+ IDS_DESC_COSTINITIALIZE "Computing space requirements"
+ IDS_DESC_CREATEFOLDERS "Creating folders"
+ IDS_DESC_CREATESHORTCUTS "Creating shortcuts"
+ IDS_DESC_DELETESERVICES "Deleting services"
+ IDS_DESC_DUPLICATEFILES "Creating duplicate files"
+ IDS_DESC_FILECOST "Computing space requirements"
+ IDS_DESC_FINDRELATEDPRODUCTS "Searching for related applications"
+ IDS_DESC_INSTALLADMINPACKAGE "Copying network install files"
+ IDS_DESC_INSTALLFILES "Copying new files"
+ IDS_DESC_INSTALLODBC "Installing ODBC components"
+ IDS_DESC_INSTALLSERVICES "Installing new services"
+ IDS_DESC_INSTALLSFPCATALOGFILE "Installing system catalog"
+ IDS_DESC_INSTALLVALIDATE "Validating install"
+ IDS_DESC_LAUNCHCONDITIONS "Evaluating launch conditions"
+ IDS_DESC_MIGRATEFEATURESTATES "Migrating feature states from related
applications"
+ IDS_DESC_MOVEFILES "Moving files"
+ IDS_DESC_MSIPUBLISHASSEMBLIES "Publishing assembly information"
+ IDS_DESC_MSIUNPUBLISHASSEMBLIES "Unpublishing assembly information"
+ IDS_DESC_PATCHFILES "Patching files"
+ IDS_DESC_PROCESSCOMPONENTS "Updating component registration"
+ IDS_DESC_PUBLISHCOMPONENTS "Publishing Qualified Components"
+ IDS_DESC_PUBLISHFEATURES "Publishing Product Features"
+ IDS_DESC_PUBLISHPRODUCT "Publishing product information"
+ IDS_DESC_REGISTERCLASSINFO "Registering Class servers"
+ IDS_DESC_REGISTERCOMPLUS "Registering COM+ Applications and Components"
+ IDS_DESC_REGISTEREXTENSIONINFO "Registering extension servers"
+ IDS_DESC_REGISTERFONTS "Registering fonts"
+ IDS_DESC_REGISTERMIMEINFO "Registering MIME info"
+ IDS_DESC_REGISTERPRODUCT "Registering product"
+ IDS_DESC_REGISTERPROGIDINFO "Registering program identifiers"
+ IDS_DESC_REGISTERTYPELIBRARIES "Registering type libraries"
+ IDS_DESC_REGISTERUSER "Registering user"
+ IDS_DESC_REMOVEDUPLICATEFILES "Removing duplicated files"
+ IDS_DESC_REMOVEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_REMOVEEXISTINGPRODUCTS "Removing applications"
+ IDS_DESC_REMOVEFILES "Removing files"
+ IDS_DESC_REMOVEFOLDERS "Removing folders"
+ IDS_DESC_REMOVEINIVALUES "Removing INI files entries"
+ IDS_DESC_REMOVEODBC "Removing ODBC components"
+ IDS_DESC_REMOVEREGISTRYVALUES "Removing system registry values"
+ IDS_DESC_REMOVESHORTCUTS "Removing shortcuts"
+ IDS_DESC_RMCCPSEARCH "Searching for qualifying products"
+ IDS_DESC_SELFREGMODULES "Registering modules"
+ IDS_DESC_SELFUNREGMODULES "Unregistering modules"
+ IDS_DESC_SETODBCFOLDERS "Initializing ODBC directories"
+ IDS_DESC_STARTSERVICES "Starting services"
+ IDS_DESC_STOPSERVICES "Stopping services"
+ IDS_DESC_UNPUBLISHCOMPONENTS "Unpublishing Qualified Components"
+ IDS_DESC_UNPUBLISHFEATURES "Unpublishing Product Features"
+ IDS_DESC_UNPUBLISHPRODUCT "Unpublishing product information"
+ IDS_DESC_UNREGISTERCLASSINFO "Unregister Class servers"
+ IDS_DESC_UNREGISTERCOMPLUS "Unregistering COM+ Applications and
Components"
+ IDS_DESC_UNREGISTEREXTENSIONINFO "Unregistering extension servers"
+ IDS_DESC_UNREGISTERFONTS "Unregistering fonts"
+ IDS_DESC_UNREGISTERMIMEINFO "Unregistering MIME info"
+ IDS_DESC_UNREGISTERPROGIDINFO "Unregistering program identifiers"
+ IDS_DESC_UNREGISTERTYPELIBRARIES "Unregistering type libraries"
+ IDS_DESC_WRITEENVIRONMENTSTRINGS "Updating environment strings"
+ IDS_DESC_WRITEINIVALUES "Writing INI files values"
+ IDS_DESC_WRITEREGISTRYVALUES "Writing system registry values"
+}
+
+/* Standard action template strings */
+STRINGTABLE
+{
+ IDS_TEMP_ALLOCATEREGISTRYSPACE "Free space: [1]"
+ IDS_TEMP_APPSEARCH "Property: [1], Signature: [2]"
+ IDS_TEMP_BINDIMAGE "File: [1]"
+ IDS_TEMP_CREATEFOLDERS "Folder: [1]"
+ IDS_TEMP_CREATESHORTCUTS "Shortcut: [1]"
+ IDS_TEMP_DELETESERVICES "Service: [1]"
+ IDS_TEMP_DUPLICATEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_FINDRELATEDPRODUCTS "Found application: [1]"
+ IDS_TEMP_INSTALLADMINPACKAGE "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_INSTALLSERVICES "Service: [2]"
+ IDS_TEMP_INSTALLSFPCATALOGFILE "File: [1], Dependencies: [2]"
+ IDS_TEMP_MIGRATEFEATURESTATES "Application: [1]"
+ IDS_TEMP_MOVEFILES "File: [1], Directory: [9], Size: [6]"
+ IDS_TEMP_MSIPUBLISHASSEMBLIES "Application Context:[1], Assembly Name:[2]"
+ IDS_TEMP_MSIUNPUBLISHASSEMBLIES "Application Context:[1], Assembly
Name:[2]"
+ IDS_TEMP_PATCHFILES "File: [1], Directory: [2], Size: [3]"
+ IDS_TEMP_PUBLISHCOMPONENTS "Component ID: [1], Qualifier: [2]"
+ IDS_TEMP_PUBLISHFEATURES "Feature: [1]"
... 3293 lines suppressed ...