[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.
This commit is contained in:
Amine Khaldi 2017-10-08 09:14:40 +01:00
parent 154006810e
commit 71bffdcde9
48 changed files with 5569 additions and 1111 deletions

View file

@ -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)
INT 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];
MSIRECORD *row;
WCHAR *template;
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);
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);
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 && ACTION_DialogBox(package, action) == ERROR_SUCCESS )
handled = TRUE;
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");

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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);

View file

@ -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 )

View file

@ -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 },

View file

@ -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 );
}

View file

@ -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? */

View file

@ -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;

View file

@ -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 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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "âúâåäåòå ïàïêàòà, êîÿòî ñúäúðæà %s"
12 "èçòî÷íèêà çà èíñòàëàöèÿ íà ôóíêöèîíàëíîñòòà ëèïñâà"
13 "ìðåæîâîòî óñòðîéñòâà íóæíî çà ôóíêöèîíàëíîñòòà ëèïñâà "
14 "ôóíêöèîíàëíîñò îò:"
15 "èçáåðåòå ïàïêàòà, êîÿòî ñúäúðæà %s"
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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'."
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -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 Sprachkennung]\nPatch integrieren:\n\t/p Patchpaket [Eigenschaft]\n\t/p Patchpaket /a Paket [Eigenschaft]\nProtokollierung und Benutzeroberfläche für die oberen Befehle anpassen:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] Protokolldatei\n\t/q{|n|b|r|f|n+|b+|b-}\nMSI Service registrieren:\n\t/y\nRegistrierung des MSI Service aufheben:\n\t/z\nHilfe anzeigen:\n\t/help\n\t/?\n"
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."
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 Sprachkennung]\nPatch integrieren:\n\t/p Patchpaket [Eigenschaft]\n\t/p Patchpaket /a Paket [Eigenschaft]\nProtokollierung und Benutzeroberfläche für die oberen Befehle anpassen:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] Protokolldatei\n\t/q{|n|b|r|f|n+|b+|b-}\nMSI Service registrieren:\n\t/y\nRegistrierung des MSI Service aufheben:\n\t/z\nHilfe anzeigen:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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"
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -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 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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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"
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -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 korjaus:\n\t/p korjauspaketti [ominaisuus]\n\t/p korjauspaketti /a paketti [ominaisuus]\nLoki- ja käyttöliittymäasetukset edellisille komennoille:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] lokitiedosto\n\t/q{|n|b|r|f|n+|b+|b-}\nRekisteröi MSI-palvelu:\n\t/y\nPeru MSI-palvelun rekisteröinti:\n\t/z\nNäytä tämä ohje:\n\t/help\n\t/?\n"
11 "Anna kansio, jossa on %s"
12 "Ominaisuuden asennuslähde puuttuu."
13 "Ominaisuuden verkkolevy puuttuu."
14 "Ominaisuus:"
15 "Valitse kansio, jossa on %s"
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 korjaus:\n\t/p korjauspaketti [ominaisuus]\n\t/p korjauspaketti /a paketti [ominaisuus]\nLoki- ja käyttöliittymäasetukset edellisille komennoille:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] lokitiedosto\n\t/q{|n|b|r|f|n+|b+|b-}\nRekisteröi MSI-palvelu:\n\t/y\nPeru MSI-palvelun rekisteröinti:\n\t/z\nNäytä tämä ohje:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -19,22 +19,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
/* UTF-8 */
#pragma code_page(65001)
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
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 transformation] [/g id_langue]\nAppliquer un patch :\n\t/p paquet_patch [propriété]\n\t/p paquet_patch /a paquet [propriété]\nModificateurs de journalisation et d'interface utilisateur pour les commandes ci-dessus :\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] fichier_journal\n\t/q{|n|b|r|f|n+|b+|b-}\nEnregistrer le service MSI :\n\t/y\nAnnuler l'enregistrement du service MSI :\n\t/z\nAfficher cette aide :\n\t/help\n\t/?\n"
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"
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 transformation] [/g id_langue]\nAppliquer un patch :\n\t/p paquet_patch [propriété]\n\t/p paquet_patch /a paquet [propriété]\nModificateurs de journalisation et d'interface utilisateur pour les commandes ci-dessus :\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] fichier_journal\n\t/q{|n|b|r|f|n+|b+|b-}\nEnregistrer le service MSI :\n\t/y\nAnnuler l'enregistrement du service MSI :\n\t/z\nAfficher cette aide :\n\t/help\n\t/?\n"
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"
}
/* 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]"
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]"
}

View file

@ -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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "הזן איזו תיקיה מכילה את %s"
12 "מקור ההתקנה עבור התכונה חסר"
13 "כונן רשת עבור התכונה חסר"
14 "מהתקן מ:"
15 "בחר איזו תיקיה מכילה את %s"
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -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 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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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"
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -18,22 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
/*UTF-8*/
#pragma code_page(65001)
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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"
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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"
}
/* 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]"
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]"
}

View file

@ -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 のあるフォルダを選択してください"
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
{
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]"
}

View file

@ -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위의 명령어를 위한 Log 와 UI 한정자 :\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nMSI 서비스 등록:\n\t/y\nMSI 서비스 등록 해제:\n\t/z\n도움말 보기:\n\t/help\n\t/?\n"
11 "%s를 포함하는 폴더를 입력하세여"
12 "빠진 부분(feature)을 위한 설치 원본"
13 "빠진 부분(feature)을 위한 네트워크 드라이브"
14 "부분(feature)에서:"
15 " %s를 포함하는 폴더 선택"
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 와 UI 한정자 :\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nMSI 서비스 등록:\n\t/y\nMSI 서비스 등록 해제:\n\t/z\n도움말 보기:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -18,22 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
/* UTF-8 */
#pragma code_page(65001)
LANGUAGE LANG_LITHUANIAN, SUBLANG_NEUTRAL
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_identifikatorius]\nPritaikyti pataisą:\n\t/p pataisos_paketas [savybė]\n\t/p pataisos_paketas /a paketas [savybė]\nŽurnalo ir sąsajos modifikatoriai aukščiau išvardintoms komandoms:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] žurnalo_failas\n\t/q{|n|b|r|f|n+|b+|b-}\nRegistruoti MSI tarnybą:\n\t/y\nIšregistruoti MSI tarnybą:\n\t/z\nParodyti šią pagalbą:\n\t/help\n\t/?\n"
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"
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_identifikatorius]\nPritaikyti pataisą:\n\t/p pataisos_paketas [savybė]\n\t/p pataisos_paketas /a paketas [savybė]\nŽurnalo ir sąsajos modifikatoriai aukščiau išvardintoms komandoms:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] žurnalo_failas\n\t/q{|n|b|r|f|n+|b+|b-}\nRegistruoti MSI tarnybą:\n\t/y\nIšregistruoti MSI tarnybą:\n\t/z\nParodyti šią pagalbą:\n\t/help\n\t/?\n"
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"
}
/* 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]"
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]"
}

View file

@ -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 languageid]\nPas een patch toe:\n\t/p patchpakket [eigenschap]\n\t/p patchpakket /a pakket [eigenschap]\nLog en UI Modifiers voor bovenstaande commando's:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logbestand\n\t/q{|n|b|r|f|n+|b+|b-}\nRegistreer MSI Service:\n\t/y\nMaak registratie MSI Service ongedaan:\n\t/z\nLaat dit helpvenster zien:\n\t/help\n\t/?\n"
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"
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 languageid]\nPas een patch toe:\n\t/p patchpakket [eigenschap]\n\t/p patchpakket /a pakket [eigenschap]\nLog en UI Modifiers voor bovenstaande commando's:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logbestand\n\t/q{|n|b|r|f|n+|b+|b-}\nRegistreer MSI Service:\n\t/y\nMaak registratie MSI Service ongedaan:\n\t/z\nLaat dit helpvenster zien:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -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 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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "Oppgi katalogen som inneholder '%s'."
12 "Egenskapens installasjonskilde mangler."
13 "Egenskapens nettverksstasjon mangler."
14 "Egenskap fra::"
15 "Velg katalogen som inneholder '%s'."
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -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 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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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'"
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -20,36 +20,320 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
#pragma code_page(65001)
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
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]\nAplicar um patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nModificadores Log e UI para os comandos acima:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegistrar Serviço MSI:\n\t/y\nDesregistrar Serviço MSI:\n\t/z\nMostrar esta ajuda:\n\t/help\n\t/?\n"
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"
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]\nAplicar um patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nModificadores Log e UI para os comandos acima:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegistrar Serviço MSI:\n\t/y\nDesregistrar Serviço MSI:\n\t/z\nMostrar esta ajuda:\n\t/help\n\t/?\n"
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"
}
/* 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]"
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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]"
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]"
}

View file

@ -18,35 +18,175 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
#pragma code_page(65001)
STRINGTABLE
{
4 "Pachetul de instalare menționat nu a putut fi deschis. Verificați calea și încercați din nou."
5 "calea %s nu a fost găsită"
9 "inserați discul %s"
10 "Instalatorul Windows %s\n\nUtilizare:\nmsiexec command {parametru obligatoriu} [parametru opțional]\n\n" \
"Instalarea unui produs:\n\t/i {pachet|cod_produs} [proprietate]" \
"\n\t/package {pachet|cod_produs} [proprietate]" \
"\n\t/a pachet [proprietate]\n" \
"Repararea unei instalări:\n\t/f[p|o|e|d|c|a|u|m|s|v] {pachet|cod_produs}\n" \
"Dezinstalarea unui produs:\n\t/uninstall {pachet|cod_produs} [proprietate]" \
"\n\t/x {pachet|cod_produs} [proprietate]\n" \
"Promovarea unui produs:\n\t/j[u|m] pachet [/t transformare] [/g id_limbă]\n" \
"Aplicarea unui patch:\n\t/p pachet_patch [proprietate]" \
"\n\t/p pachet_patch /a pachet [proprietate]\n" \
"Jurnalizare și modificatori de interfață pentru comenzile enumerate:" \
"\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] fișier_jurnal\n\t/q{|n|b|r|f|n+|b+|b-}\n" \
"Înregistrarea serviciului MSI:\n\t/y\n" \
"Excluderea serviciului MSI:\n\t/z\n" \
"Afișarea acestui manual:\n\t/help\n\t/?\n"
11 "introduceți fișierul care conține %s"
12 "lipsește sursa de instalare pentru această caracteristică"
13 "lipsește unitatea de rețea pentru această caracteristică"
14 "caracteristică de la:"
15 "selectați fișierul care conține %s"
4 "Pachetul de instalare menționat nu a putut fi deschis. Verificați calea și încercați din nou."
5 "calea %s nu a fost găsită"
9 "inserați discul %s"
10 "Instalatorul Windows %s\n\nUtilizare:\nmsiexec command {parametru obligatoriu} [parametru opțional]\n\n \
Instalarea unui produs:\n\t/i {pachet|cod_produs} [proprietate] \
\n\t/package {pachet|cod_produs} [proprietate] \
\n\t/a pachet [proprietate]\n \
Repararea unei instalări:\n\t/f[p|o|e|d|c|a|u|m|s|v] {pachet|cod_produs}\n \
Dezinstalarea unui produs:\n\t/uninstall {pachet|cod_produs} [proprietate] \
\n\t/x {pachet|cod_produs} [proprietate]\n \
Promovarea unui produs:\n\t/j[u|m] pachet [/t transformare] [/g id_limbă]\n \
Aplicarea unui patch:\n\t/p pachet_patch [proprietate] \
\n\t/p pachet_patch /a pachet [proprietate]\n \
Jurnalizare și modificatori de interfață pentru comenzile enumerate: \
\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] fișier_jurnal\n\t/q{|n|b|r|f|n+|b+|b-}\n \
Înregistrarea serviciului MSI:\n\t/y\n \
Excluderea serviciului MSI:\n\t/z\n \
Afișarea acestui manual:\n\t/help\n\t/?\n"
11 "introduceți fișierul care conține %s"
12 "lipsește sursa de instalare pentru această caracteristică"
13 "lipsește unitatea de rețea pentru această caracteristică"
14 "caracteristică de la:"
15 "selectați fișierul care conține %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]"
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]"
}

View file

@ -18,22 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
/* UTF-8 */
#pragma code_page(65001)
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
STRINGTABLE
{
4 "Указанный пакет не может быть открыт. Проверьте файл и повторите попытку."
5 "путь %s не найден"
9 "вставьте диск %s"
10 "Устанновщик ReactOS %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]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nПрименить патч:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\Регистрация сервиса MSI:\n\t/y\nUnregister MSI Service:\n\t/z\nОтобразить эту справку:\n\t/help\n\t/?\n"
11 "укажите каталог, содержащий %s"
12 "источник установки данной возможности не указан"
13 "сетевой диск для данной возможности не указан"
14 "возможность из:"
15 "выберите каталог, содержащий %s"
4 "Указанный пакет не может быть открыт. Проверьте файл и повторите попытку."
5 "путь %s не найден"
9 "вставьте диск %s"
10 "Устанновщик ReactOS %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]\nAdvertise a product:\n\t/j[u|m] package [/t transform] [/g languageid]\nПрименить патч:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nРегистрация сервиса MSI:\n\t/y\nUnregister MSI Service:\n\t/z\nОтобразить эту справку:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
#pragma code_page(65001)
LANGUAGE LANG_SLOVENIAN, SUBLANG_DEFAULT
STRINGTABLE
{
4 "Navedenega namestitvenega paketa ni mogoče odpreti. Preverite ime datoteke in poskusite znova."
5 "pot %s ne obstaja"
9 "vnesite 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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "vnesite ime mape, ki vsebuje %s"
12 "manjkajoč namestitveni vir za namestitev funkcije"
13 "manjkajoč omrežni pogon za namestitev funkcijo"
14 "funkcija z:"
15 "izberite mapo, ki vsebuje %s"
4 "Navedenega namestitvenega paketa ni mogoče odpreti. Preverite ime datoteke in poskusite znova."
5 "pot %s ne obstaja"
9 "vnesite 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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "vnesite ime mape, ki vsebuje %s"
12 "manjkajoč namestitveni vir za namestitev funkcije"
13 "manjkajoč omrežni pogon za namestitev funkcijo"
14 "funkcija z:"
15 "izberite mapo, ki vsebuje %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]"
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]"
}

View file

@ -19,21 +19,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
#pragma code_page(65001)
STRINGTABLE
{
4 "Paketa e specifikuar instalimi nuk mund të hapet. Ju lutem kontrolloni rrugën e dokumentit dhe të provoni përsëri."
5 "rruga %s nuk u gjënd"
9 "fusni diskun %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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "hyr e cila dosje përmban %s"
12 "instalo burimin për funksionin e munguar"
13 "rrjet drive-ri për funksionin e munguar"
14 "funksione nga:"
15 "zgjidhni dosjen që përmban %s"
4 "Paketa e specifikuar instalimi nuk mund të hapet. Ju lutem kontrolloni rrugën e dokumentit dhe të provoni përsëri."
5 "rruga %s nuk u gjënd"
9 "fusni diskun %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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "hyr e cila dosje përmban %s"
12 "instalo burimin për funksionin e munguar"
13 "rrjet drive-ri për funksionin e munguar"
14 "funksione nga:"
15 "zgjidhni dosjen që përmban %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]"
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]"
}

View file

@ -19,36 +19,320 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
#pragma code_page(65001)
LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_LATIN
STRINGTABLE
{
4 "Instalacija ne može biti otvorena. Molimo proverite destinaciju fajla i pokušajte ponovo."
5 "putanja %s nije nađena"
9 "Ubacite disk %s"
10 "Windows Instalacija programa %s\n\nSvrha:\nmsiexec komanda {traženi parametar} [opcioni parametar]\n\nInstalacija proizvoda:\n\t/i {paket|kod} [svojina]\n\t/package {paket|kod} [svojina]\n\t/a paket [svojina]\nPopravak instalacije:\n\t/f[p|o|e|d|c|a|u|m|s|v] {paket|kod}\nUninstal programa:\n\t/uninstall {paket|kod} [svojina]\n\t/x {paket|kod} [svojina]\nReklama programa:\n\t/j[u|m] paket [/t pretvori] [/g id jezika]\nPrimeni peč:\n\t/p pečpaket [svojina]\n\t/p pečpaket /a paket [svojina]\nIzveštalj i Izgled Modifikatori za komande iznad:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] izvestaj\n\t/q{|n|b|r|f|n+|b+|b-}\nRegistracija MSI Servisa:\n\t/y\n Uklanjanje MSI Servisa:\n\t/z\nPrikaži ovu Pomoć:\n\t/help\n\t/?\n"
11 "unesite koji folder sadrži %s"
12 "instalacija nedostaje"
13 "mrežni drajv nedostaje"
14 "dodatak sa:"
15 "izaberite koji folder sadrži %s"
4 "Instalacija ne može biti otvorena. Molimo proverite destinaciju fajla i pokušajte ponovo."
5 "putanja %s nije nađena"
9 "Ubacite disk %s"
10 "Windows Instalacija programa %s\n\nSvrha:\nmsiexec komanda {traženi parametar} [opcioni parametar]\n\nInstalacija proizvoda:\n\t/i {paket|kod} [svojina]\n\t/package {paket|kod} [svojina]\n\t/a paket [svojina]\nPopravak instalacije:\n\t/f[p|o|e|d|c|a|u|m|s|v] {paket|kod}\nUninstal programa:\n\t/uninstall {paket|kod} [svojina]\n\t/x {paket|kod} [svojina]\nReklama programa:\n\t/j[u|m] paket [/t pretvori] [/g id jezika]\nPrimeni peč:\n\t/p pečpaket [svojina]\n\t/p pečpaket /a paket [svojina]\nIzveštalj i Izgled Modifikatori za komande iznad:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] izvestaj\n\t/q{|n|b|r|f|n+|b+|b-}\nRegistracija MSI Servisa:\n\t/y\n Uklanjanje MSI Servisa:\n\t/z\nPrikaži ovu Pomoć:\n\t/help\n\t/?\n"
11 "unesite koji folder sadrži %s"
12 "instalacija nedostaje"
13 "mrežni drajv nedostaje"
14 "dodatak sa:"
15 "izaberite koji folder sadrži %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]"
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_SERBIAN, SUBLANG_SERBIAN_CYRILLIC
STRINGTABLE
{
4 "Инсталација не може бити отворена. Молимо проверите дестинацију фајла и покушајте поново."
5 "путања %s није нађена"
9 "Убаците диск %s"
10 "Виндовс Инсталација програма %s\n\nСврха:\nmsiexec команда {тражени параметар} [опциони параметар]\n\nИнсталација производа:\n\t/i {пакет|код} [својина]\n\t/package {пакет|код} [својина]\n\t/a пакет [svojina]\nПоправак инсталације:\n\t/f[p|o|e|d|c|a|u|m|s|v] {пакет|код}\nБрисање програма:\n\t/uninstall {пакет|код} [svojina]\n\t/x {пакет|код} [својина]\nРеклама програма:\n\t/j[u|m] пакет [/t transform] [/g languageid]\nПримени печ:\n\t/p печпакет [својина]\n\t/p печпакет /a пакет [својина]\nИзвестај и Изглед Модификатора за команде изнад:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] извештај\n\t/q{|n|b|r|f|n+|b+|b-}\nРегистрација МСИ Сервиса:\n\t/y\nУклањање МСИ Сервиса:\n\t/z\nПрикажи ову Помоћ:\n\t/help\n\t/?\n"
11 "Унесите који фолдер садржи %s"
12 "Инсталација недостаје"
13 "Мрежни драјв недостаје"
14 "Додатак са:"
15 "Изаберите који фолдер садржи %s"
4 "Инсталација не може бити отворена. Молимо проверите дестинацију фајла и покушајте поново."
5 "путања %s није нађена"
9 "Убаците диск %s"
10 "Виндовс Инсталација програма %s\n\nСврха:\nmsiexec команда {тражени параметар} [опциони параметар]\n\nИнсталација производа:\n\t/i {пакет|код} [својина]\n\t/package {пакет|код} [својина]\n\t/a пакет [svojina]\nПоправак инсталације:\n\t/f[p|o|e|d|c|a|u|m|s|v] {пакет|код}\nБрисање програма:\n\t/uninstall {пакет|код} [svojina]\n\t/x {пакет|код} [својина]\nРеклама програма:\n\t/j[u|m] пакет [/t transform] [/g languageid]\nПримени печ:\n\t/p печпакет [својина]\n\t/p печпакет /a пакет [својина]\nИзвестај и Изглед Модификатора за команде изнад:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] извештај\n\t/q{|n|b|r|f|n+|b+|b-}\nРегистрација МСИ Сервиса:\n\t/y\nУклањање МСИ Сервиса:\n\t/z\nПрикажи ову Помоћ:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
#pragma code_page(65001)
STRINGTABLE
{
4 "Det angivna installationspaketet kunde inte öppnas. Kontrollera filsökvägen och försök igen."
5 "sökvägen %s hittades inte"
9 "mata in %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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "ange vilken mapp som innehåller %s"
12 "installationskälla för funktion saknar"
13 "nätverksenhet för funktion saknar"
14 "funktion från:"
15 "välj den mapp som innehåller %s"
4 "Det angivna installationspaketet kunde inte öppnas. Kontrollera filsökvägen och försök igen."
5 "sökvägen %s hittades inte"
9 "mata in %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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "ange vilken mapp som innehåller %s"
12 "installationskälla för funktion saknar"
13 "nätverksenhet för funktion saknar"
14 "funktion från:"
15 "välj den mapp som innehåller %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]"
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]"
}

View file

@ -18,21 +18,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
#pragma code_page(65001)
STRINGTABLE
{
4 "Belirtilen kurulum paketi açılamadı. Lütfen, kütüğün yolunu denetleyiniz ve yeiden deneyiniz."
5 "%s yolu bulunamadı."
9 "%s diskini takınız."
10 "Windows Yükleyici %s\n\nKullanım:\nmsiexec komut {gerekli değişkenler} [seçimlik değişkenler]\n\nBir ürün yükle:\n\t/i {paket|ürün kodu} [husûsiyet]\n\t/package {paket|ürün kodu} [husûsiyet]\n\t/a paket [husûsiyet]\nBir kurulum onar:\n\t/f[p|o|e|d|c|a|u|m|s|v] {paket|ürün kodu}\nBir ürün kaldır:\n\t/uninstall {paket|ürün kodu} [husûsiyet]\n\t/x {paket|ürün kodu} [husûsiyet]\nBir ürün bildir:\n\t/j[u|m] paket [/t dönüşüm] [/g dil kimliği]\nBir yama uygula:\n\t/p yama paketi [husûsiyet]\n\t/p yama paketi /a paket [husûsiyet]\nYukarıdaki komutlar için kayıt ve kullanıcı arayüzü tümleyicileri:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] kayıt kütüğü\n\t/q{|n|b|r|f|n+|b+|b-}\nMSI hizmetini sakla:\n\t/y\nMSI hizmetinin kaydını sil:\n\t/z\nBu yardımı görüntüle:\n\t/help\n\t/?\n"
11 "%s içeren dizini giriniz."
12 "Husûsiyet eksikliği için kurulum kaynağı"
13 "Husûsiyet eksikliği için ağ sürücüsü"
14 "Şuradan özellik:"
15 "%s içeren dizini seçiniz."
4 "Belirtilen kurulum paketi açılamadı. Lütfen, kütüğün yolunu denetleyiniz ve yeiden deneyiniz."
5 "%s yolu bulunamadı."
9 "%s diskini takınız."
10 "Windows Yükleyici %s\n\nKullanım:\nmsiexec komut {gerekli değişkenler} [seçimlik değişkenler]\n\nBir ürün yükle:\n\t/i {paket|ürün kodu} [husûsiyet]\n\t/package {paket|ürün kodu} [husûsiyet]\n\t/a paket [husûsiyet]\nBir kurulum onar:\n\t/f[p|o|e|d|c|a|u|m|s|v] {paket|ürün kodu}\nBir ürün kaldır:\n\t/uninstall {paket|ürün kodu} [husûsiyet]\n\t/x {paket|ürün kodu} [husûsiyet]\nBir ürün bildir:\n\t/j[u|m] paket [/t dönüşüm] [/g dil kimliği]\nBir yama uygula:\n\t/p yama paketi [husûsiyet]\n\t/p yama paketi /a paket [husûsiyet]\nYukarıdaki komutlar için kayıt ve kullanıcı arayüzü tümleyicileri:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] kayıt kütüğü\n\t/q{|n|b|r|f|n+|b+|b-}\nMSI hizmetini sakla:\n\t/y\nMSI hizmetinin kaydını sil:\n\t/z\nBu yardımı görüntüle:\n\t/help\n\t/?\n"
11 "%s içeren dizini giriniz."
12 "Husûsiyet eksikliği için kurulum kaynağı"
13 "Husûsiyet eksikliği için ağ sürücüsü"
14 "Şuradan özellik:"
15 "%s içeren dizini seçiniz."
}
/* 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]"
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]"
}

View file

@ -20,22 +20,161 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
/* UTF-8 */
#pragma code_page(65001)
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
STRINGTABLE
{
4 "Не вдалося відкрити вказаний пакет інсталяції. Перевірте шлях до файлу та спробуйте знов."
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "вкажіть папку, що містить %s"
12 "джерело встановлення даної можливості не вказане"
13 "мережевий диск для даної можливості не вказаний"
14 "можливість з:"
15 "виберіть папку, що містить %s"
4 "Не вдалося відкрити вказаний пакет інсталяції. Перевірте шлях до файлу та спробуйте знов."
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -18,37 +18,320 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "windef.h"
/* Chinese text is encoded in UTF-8 */
#pragma code_page(65001)
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
STRINGTABLE
{
4 "不能打开所指定的安装软件包. 请检查文件路径后再试."
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "输入包含 %s 的文件夹"
12 "本功能的安装源不存在"
13 "本功能的网络驱动器不存在"
14 "功能来自:"
15 "选择包含 %s 的文件夹"
4 "不能打开所指定的安装软件包. 请检查文件路径后再试."
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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_CHINESE, SUBLANG_CHINESE_TRADITIONAL
STRINGTABLE
{
4 "不能開啟所指定的安裝軟件包. 請檢查檔案路徑後再試."
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
11 "輸入包含 %s 的檔案夾"
12 "本功能的安裝源不存在"
13 "本功能的網路儲存槽不存在"
14 "功能來自:"
15 "選擇包含 %s 的檔案夾"
4 "不能開啟所指定的安裝軟件包. 請檢查檔案路徑後再試."
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 patch:\n\t/p patchpackage [property]\n\t/p patchpackage /a package [property]\nLog and UI Modifiers for above commands:\n\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] logfile\n\t/q{|n|b|r|f|n+|b+|b-}\nRegister MSI Service:\n\t/y\nUnregister MSI Service:\n\t/z\nDisplay this help:\n\t/help\n\t/?\n"
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
{
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]"
}

View file

@ -67,44 +67,22 @@ static BOOL source_matches_volume(MSIMEDIAINFO *mi, LPCWSTR source_root)
static UINT msi_change_media(MSIPACKAGE *package, MSIMEDIAINFO *mi)
{
LPWSTR error, error_dialog;
MSIRECORD *record;
LPWSTR source_dir;
UINT r = ERROR_SUCCESS;
UINT r = IDRETRY;
static const WCHAR error_prop[] = {'E','r','r','o','r','D','i','a','l','o','g',0};
if ((package->ui_level & INSTALLUILEVEL_MASK) == INSTALLUILEVEL_NONE &&
!gUIHandlerA && !gUIHandlerW && !gUIHandlerRecord) return ERROR_SUCCESS;
error = msi_build_error_string(package, 1302, 1, mi->disk_prompt);
error_dialog = msi_dup_property(package->db, error_prop);
source_dir = msi_dup_property(package->db, szSourceDir);
record = MSI_CreateRecord(2);
while (r == ERROR_SUCCESS && !source_matches_volume(mi, source_dir))
while (r == IDRETRY && !source_matches_volume(mi, source_dir))
{
r = msi_spawn_error_dialog(package, error_dialog, error);
if (gUIHandlerW)
{
gUIHandlerW(gUIContext, MB_RETRYCANCEL | INSTALLMESSAGE_ERROR, error);
}
else if (gUIHandlerA)
{
char *msg = strdupWtoA(error);
gUIHandlerA(gUIContext, MB_RETRYCANCEL | INSTALLMESSAGE_ERROR, msg);
msi_free(msg);
}
else if (gUIHandlerRecord)
{
MSIHANDLE rec = MsiCreateRecord(1);
MsiRecordSetStringW(rec, 0, error);
gUIHandlerRecord(gUIContext, MB_RETRYCANCEL | INSTALLMESSAGE_ERROR, rec);
MsiCloseHandle(rec);
}
MSI_RecordSetStringW(record, 0, NULL);
MSI_RecordSetInteger(record, 1, MSIERR_CABNOTFOUND);
MSI_RecordSetStringW(record, 2, mi->disk_prompt);
r = MSI_ProcessMessage(package, INSTALLMESSAGE_ERROR | MB_RETRYCANCEL, record);
}
msi_free(error);
msi_free(error_dialog);
msiobj_release(&record->hdr);
msi_free(source_dir);
return r;

View file

@ -2293,7 +2293,16 @@ INSTALLUILEVEL WINAPI MsiSetInternalUI(INSTALLUILEVEL dwUILevel, HWND *phWnd)
TRACE("%08x %p\n", dwUILevel, phWnd);
gUILevel = dwUILevel;
if (dwUILevel & ~(INSTALLUILEVEL_MASK|INSTALLUILEVEL_HIDECANCEL|INSTALLUILEVEL_PROGRESSONLY|
INSTALLUILEVEL_ENDDIALOG|INSTALLUILEVEL_SOURCERESONLY))
{
FIXME("Unrecognized flags %08x\n", dwUILevel);
return INSTALLUILEVEL_NOCHANGE;
}
if (dwUILevel != INSTALLUILEVEL_NOCHANGE)
gUILevel = dwUILevel;
if (phWnd)
{
gUIhwnd = *phWnd;
@ -4198,8 +4207,8 @@ UINT WINAPI MsiSetExternalUIRecord( INSTALLUI_HANDLER_RECORD handler,
*prev = gUIHandlerRecord;
gUIHandlerRecord = handler;
gUIFilter = filter;
gUIContext = context;
gUIFilterRecord = filter;
gUIContextRecord = context;
return ERROR_SUCCESS;
}

View file

@ -20,46 +20,7 @@
#include <windef.h>
LANGUAGE LANG_ENGLISH, SUBLANG_DEFAULT
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\n\
Usage:\n\
msiexec command {required parameter} [optional parameter]\n\n\
Install a product:\n\
\t/i {package|product_code} [property]\n\
\t/package {package|product_code} [property]\n\
\t/a package [property]\n\
Repair an installation:\n\
\t/f[p|o|e|d|c|a|u|m|s|v] {package|product_code}\n\
Uninstall a product:\n\
\t/uninstall {package|product_code} [property]\n\
\t/x {package|product_code} [property]\n\
Advertise a product:\n\
\t/j[u|m] package [/t transform] [/g languageid]\n\
Apply a patch:\n\
\t/p patch_package [property]\n\
\t/p patch_package /a package [property]\n\
Log and user interface modifiers for the above commands:\n\
\t/l[*][i|w|e|a|r|u|c|m|o|p|v|][+|!] log_file\n\
\t/q{|n|b|r|f|n+|b+|b-}\n\
Register the MSI Service:\n\
\t/y\n\
Unregister the MSI Service:\n\
\t/z\n\
Display this help:\n\
\t/help\n\
\t/?\n"
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"
}
#include "resource.h"
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
@ -90,3 +51,5 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#define WINE_PRODUCTVERSION_STR "4.5.6001.22308"
#include <wine/wine_common_ver.rc>
#include "rsrc.rc"

View file

@ -27,13 +27,15 @@ WINE_DEFAULT_DEBUG_CHANNEL(msi);
static LONG dll_count;
/* the UI level */
INSTALLUILEVEL gUILevel = INSTALLUILEVEL_BASIC;
INSTALLUILEVEL gUILevel = INSTALLUILEVEL_DEFAULT;
HWND gUIhwnd = 0;
INSTALLUI_HANDLERA gUIHandlerA = NULL;
INSTALLUI_HANDLERW gUIHandlerW = NULL;
INSTALLUI_HANDLER_RECORD gUIHandlerRecord = NULL;
DWORD gUIFilter = 0;
DWORD gUIFilterRecord = 0;
LPVOID gUIContext = NULL;
LPVOID gUIContextRecord = NULL;
WCHAR *gszLogFile = NULL;
HINSTANCE msi_hInstance;

View file

@ -52,6 +52,8 @@
#include <wine/list.h>
#include <wine/unicode.h>
#include "resource.h"
static const BOOL is_64bit = sizeof(void *) > sizeof(int);
BOOL is_wow64 DECLSPEC_HIDDEN;
@ -404,6 +406,8 @@ typedef struct tagMSIPACKAGE
struct list cabinet_streams;
LPWSTR ActionFormat;
LPWSTR LastAction;
LPWSTR LastActionTemplate;
UINT LastActionResult;
UINT action_progress_increment;
HANDLE log_file;
IAssemblyCache *cache_net[CLR_VERSION_MAX];
@ -426,7 +430,6 @@ typedef struct tagMSIPACKAGE
BOOL delete_on_close;
INSTALLUILEVEL ui_level;
UINT CurrentInstallState;
msi_dialog *dialog;
LPWSTR next_dialog;
float center_x;
@ -814,7 +817,8 @@ extern void msi_free_patchinfo( MSIPATCHINFO *patch ) DECLSPEC_HIDDEN;
/* action internals */
extern UINT MSI_InstallPackage( MSIPACKAGE *, LPCWSTR, LPCWSTR ) DECLSPEC_HIDDEN;
extern UINT ACTION_DialogBox( MSIPACKAGE*, LPCWSTR) DECLSPEC_HIDDEN;
extern INT ACTION_ShowDialog( MSIPACKAGE*, LPCWSTR) DECLSPEC_HIDDEN;
extern INT ACTION_DialogBox( MSIPACKAGE*, LPCWSTR) DECLSPEC_HIDDEN;
extern UINT ACTION_ForceReboot(MSIPACKAGE *package) DECLSPEC_HIDDEN;
extern UINT MSI_Sequence( MSIPACKAGE *package, LPCWSTR szTable ) DECLSPEC_HIDDEN;
extern UINT MSI_SetFeatureStates( MSIPACKAGE *package ) DECLSPEC_HIDDEN;
@ -851,6 +855,7 @@ extern BOOL MSI_RecordsAreEqual( MSIRECORD *, MSIRECORD * ) DECLSPEC_HIDDEN;
extern BOOL MSI_RecordsAreFieldsEqual(MSIRECORD *a, MSIRECORD *b, UINT field) DECLSPEC_HIDDEN;
extern UINT msi_record_set_string(MSIRECORD *, UINT, const WCHAR *, int) DECLSPEC_HIDDEN;
extern const WCHAR *msi_record_get_string(const MSIRECORD *, UINT, int *) DECLSPEC_HIDDEN;
extern void dump_record(MSIRECORD *) DECLSPEC_HIDDEN;
/* stream internals */
extern void enum_stream_names( IStorage *stg ) DECLSPEC_HIDDEN;
@ -883,6 +888,7 @@ extern UINT MSI_SetInstallLevel( MSIPACKAGE *package, int iInstallLevel ) DECLSP
extern MSIPACKAGE *MSI_CreatePackage( MSIDATABASE *, LPCWSTR ) DECLSPEC_HIDDEN;
extern UINT MSI_OpenPackageW( LPCWSTR szPackage, MSIPACKAGE **pPackage ) DECLSPEC_HIDDEN;
extern UINT MSI_SetTargetPathW( MSIPACKAGE *, LPCWSTR, LPCWSTR ) DECLSPEC_HIDDEN;
extern INT MSI_ProcessMessageVerbatim( MSIPACKAGE *, INSTALLMESSAGE, MSIRECORD * ) DECLSPEC_HIDDEN;
extern INT MSI_ProcessMessage( MSIPACKAGE *, INSTALLMESSAGE, MSIRECORD * ) DECLSPEC_HIDDEN;
extern MSICONDITION MSI_EvaluateConditionW( MSIPACKAGE *, LPCWSTR ) DECLSPEC_HIDDEN;
extern UINT MSI_GetComponentStateW( MSIPACKAGE *, LPCWSTR, INSTALLSTATE *, INSTALLSTATE * ) DECLSPEC_HIDDEN;
@ -961,7 +967,6 @@ extern LONG msi_reg_set_subkey_val( HKEY hkey, LPCWSTR path, LPCWSTR name, LPCWS
extern void msi_dialog_check_messages( HANDLE ) DECLSPEC_HIDDEN;
extern void msi_dialog_destroy( msi_dialog* ) DECLSPEC_HIDDEN;
extern void msi_dialog_unregister_class( void ) DECLSPEC_HIDDEN;
extern UINT msi_spawn_error_dialog( MSIPACKAGE*, LPWSTR, LPWSTR ) DECLSPEC_HIDDEN;
/* summary information */
extern UINT msi_get_suminfo( IStorage *stg, UINT uiUpdateCount, MSISUMMARYINFO **si ) DECLSPEC_HIDDEN;
@ -987,7 +992,9 @@ extern INSTALLUI_HANDLERA gUIHandlerA DECLSPEC_HIDDEN;
extern INSTALLUI_HANDLERW gUIHandlerW DECLSPEC_HIDDEN;
extern INSTALLUI_HANDLER_RECORD gUIHandlerRecord DECLSPEC_HIDDEN;
extern DWORD gUIFilter DECLSPEC_HIDDEN;
extern DWORD gUIFilterRecord DECLSPEC_HIDDEN;
extern LPVOID gUIContext DECLSPEC_HIDDEN;
extern LPVOID gUIContextRecord DECLSPEC_HIDDEN;
extern WCHAR *gszLogFile DECLSPEC_HIDDEN;
extern HINSTANCE msi_hInstance DECLSPEC_HIDDEN;
@ -1047,7 +1054,6 @@ extern WCHAR *msi_create_component_advertise_string(MSIPACKAGE *, MSICOMPONENT *
extern void ACTION_UpdateComponentStates(MSIPACKAGE *package, MSIFEATURE *feature) DECLSPEC_HIDDEN;
extern UINT msi_register_unique_action(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN;
extern BOOL msi_action_is_unique(const MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN;
extern WCHAR *msi_build_error_string(MSIPACKAGE *, UINT, DWORD, ...) DECLSPEC_HIDDEN;
extern UINT msi_set_last_used_source(LPCWSTR product, LPCWSTR usersid,
MSIINSTALLCONTEXT context, DWORD options, LPCWSTR value) DECLSPEC_HIDDEN;
extern UINT msi_create_empty_local_file(LPWSTR path, LPCWSTR suffix) DECLSPEC_HIDDEN;
@ -1063,6 +1069,7 @@ extern WCHAR *msi_get_assembly_path(MSIPACKAGE *, const WCHAR *) DECLSPEC_HIDDEN
extern WCHAR *msi_font_version_from_file(const WCHAR *) DECLSPEC_HIDDEN;
extern WCHAR **msi_split_string(const WCHAR *, WCHAR) DECLSPEC_HIDDEN;
extern UINT msi_set_original_database_property(MSIDATABASE *, const WCHAR *) DECLSPEC_HIDDEN;
extern WCHAR *msi_get_error_message(MSIDATABASE *, int) DECLSPEC_HIDDEN;
/* media */
@ -1112,7 +1119,6 @@ extern DWORD call_script(MSIHANDLE hPackage, INT type, LPCWSTR script, LPCWSTR f
/* User interface messages from the actions */
extern void msi_ui_progress(MSIPACKAGE *, int, int, int, int) DECLSPEC_HIDDEN;
extern void msi_ui_actiondata(MSIPACKAGE *, const WCHAR *, MSIRECORD *) DECLSPEC_HIDDEN;
/* common strings */
static const WCHAR szSourceDir[] = {'S','o','u','r','c','e','D','i','r',0};

View file

@ -305,6 +305,7 @@ static void free_package_structures( MSIPACKAGE *package )
msi_free( package->ProductCode );
msi_free( package->ActionFormat );
msi_free( package->LastAction );
msi_free( package->LastActionTemplate );
msi_free( package->langids );
/* cleanup control event subscriptions */
@ -326,6 +327,7 @@ static void MSI_FreePackage( MSIOBJECTHDR *arg)
if (package->delete_on_close) DeleteFileW( package->localfile );
msi_free( package->localfile );
MSI_ProcessMessage(NULL, INSTALLMESSAGE_TERMINATE, 0);
}
static UINT create_temp_property_table(MSIPACKAGE *package)
@ -646,7 +648,6 @@ static VOID set_installer_properties(MSIPACKAGE *package)
HKEY hkey;
LPWSTR username, companyname;
SYSTEM_INFO sys_info;
SYSTEMTIME systemtime;
LANGID langid;
static const WCHAR szCommonFilesFolder[] = {'C','o','m','m','o','n','F','i','l','e','s','F','o','l','d','e','r',0};
@ -708,8 +709,6 @@ static VOID set_installer_properties(MSIPACKAGE *package)
};
static const WCHAR szUSERNAME[] = {'U','S','E','R','N','A','M','E',0};
static const WCHAR szCOMPANYNAME[] = {'C','O','M','P','A','N','Y','N','A','M','E',0};
static const WCHAR szDate[] = {'D','a','t','e',0};
static const WCHAR szTime[] = {'T','i','m','e',0};
static const WCHAR szUserLanguageID[] = {'U','s','e','r','L','a','n','g','u','a','g','e','I','D',0};
static const WCHAR szSystemLangID[] = {'S','y','s','t','e','m','L','a','n','g','u','a','g','e','I','D',0};
static const WCHAR szProductState[] = {'P','r','o','d','u','c','t','S','t','a','t','e',0};
@ -718,8 +717,6 @@ static VOID set_installer_properties(MSIPACKAGE *package)
static const WCHAR szPrintHoodFolder[] = {'P','r','i','n','t','H','o','o','d','F','o','l','d','e','r',0};
static const WCHAR szRecentFolder[] = {'R','e','c','e','n','t','F','o','l','d','e','r',0};
static const WCHAR szComputerName[] = {'C','o','m','p','u','t','e','r','N','a','m','e',0};
static const WCHAR szBrowseProperty[] = {'_','B','r','o','w','s','e','P','r','o','p','e','r','t','y',0};
static const WCHAR szInstallDir[] = {'I','N','S','T','A','L','L','D','I','R',0};
/*
* Other things that probably should be set:
@ -940,22 +937,6 @@ static VOID set_installer_properties(MSIPACKAGE *package)
if ( set_user_sid_prop( package ) != ERROR_SUCCESS)
ERR("Failed to set the UserSID property\n");
/* Date and time properties */
GetSystemTime( &systemtime );
if (GetDateFormatW( LOCALE_USER_DEFAULT, DATE_SHORTDATE, &systemtime,
NULL, bufstr, sizeof(bufstr)/sizeof(bufstr[0]) ))
msi_set_property( package->db, szDate, bufstr, -1 );
else
ERR("Couldn't set Date property: GetDateFormat failed with error %d\n", GetLastError());
if (GetTimeFormatW( LOCALE_USER_DEFAULT,
TIME_FORCE24HOURFORMAT | TIME_NOTIMEMARKER,
&systemtime, NULL, bufstr,
sizeof(bufstr)/sizeof(bufstr[0]) ))
msi_set_property( package->db, szTime, bufstr, -1 );
else
ERR("Couldn't set Time property: GetTimeFormat failed with error %d\n", GetLastError());
set_msi_assembly_prop( package );
langid = GetUserDefaultLangID();
@ -991,7 +972,6 @@ static VOID set_installer_properties(MSIPACKAGE *package)
msi_free( computername );
}
}
msi_set_property( package->db, szBrowseProperty, szInstallDir, -1 );
}
static MSIPACKAGE *msi_alloc_package( void )
@ -1069,6 +1049,9 @@ MSIPACKAGE *MSI_CreatePackage( MSIDATABASE *db, LPCWSTR base_url )
msiobj_addref( &db->hdr );
package->db = db;
package->LastAction = NULL;
package->LastActionTemplate = NULL;
package->LastActionResult = MSI_NULL_INTEGER;
package->WordCount = 0;
package->PackagePath = strdupW( db->path );
package->BaseURL = strdupW( base_url );
@ -1441,6 +1424,7 @@ UINT MSI_OpenPackageW(LPCWSTR szPackage, MSIPACKAGE **pPackage)
MSIDATABASE *db;
MSIPACKAGE *package;
MSIHANDLE handle;
MSIRECORD *data_row, *info_row;
LPWSTR ptr, base_url = NULL;
UINT r;
WCHAR localfile[MAX_PATH], cachefile[MAX_PATH];
@ -1448,9 +1432,13 @@ UINT MSI_OpenPackageW(LPCWSTR szPackage, MSIPACKAGE **pPackage)
DWORD index = 0;
MSISUMMARYINFO *si;
BOOL delete_on_close = FALSE;
LPWSTR productname;
WCHAR *info_template;
TRACE("%s %p\n", debugstr_w(szPackage), pPackage);
MSI_ProcessMessage(NULL, INSTALLMESSAGE_INITIALIZE, 0);
localfile[0] = 0;
if( szPackage[0] == '#' )
{
@ -1581,6 +1569,40 @@ UINT MSI_OpenPackageW(LPCWSTR szPackage, MSIPACKAGE **pPackage)
if (gszLogFile)
package->log_file = CreateFileW( gszLogFile, GENERIC_WRITE, FILE_SHARE_WRITE, NULL,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL );
/* FIXME: when should these messages be sent? */
data_row = MSI_CreateRecord(3);
if (!data_row)
return ERROR_OUTOFMEMORY;
MSI_RecordSetStringW(data_row, 0, NULL);
MSI_RecordSetInteger(data_row, 1, 0);
MSI_RecordSetInteger(data_row, 2, package->num_langids ? package->langids[0] : 0);
MSI_RecordSetInteger(data_row, 3, msi_get_string_table_codepage(package->db->strings));
MSI_ProcessMessageVerbatim(package, INSTALLMESSAGE_COMMONDATA, data_row);
info_row = MSI_CreateRecord(0);
if (!info_row)
{
msiobj_release(&data_row->hdr);
return ERROR_OUTOFMEMORY;
}
info_template = msi_get_error_message(package->db, MSIERR_INFO_LOGGINGSTART);
MSI_RecordSetStringW(info_row, 0, info_template);
msi_free(info_template);
MSI_ProcessMessage(package, INSTALLMESSAGE_INFO|MB_ICONHAND, info_row);
MSI_ProcessMessage(package, INSTALLMESSAGE_COMMONDATA, data_row);
productname = msi_dup_property(package->db, INSTALLPROPERTY_PRODUCTNAMEW);
MSI_RecordSetInteger(data_row, 1, 1);
MSI_RecordSetStringW(data_row, 2, productname);
MSI_RecordSetStringW(data_row, 3, NULL);
MSI_ProcessMessage(package, INSTALLMESSAGE_COMMONDATA, data_row);
msi_free(productname);
msiobj_release(&info_row->hdr);
msiobj_release(&data_row->hdr);
*pPackage = package;
return ERROR_SUCCESS;
}
@ -1612,6 +1634,8 @@ UINT WINAPI MsiOpenPackageExW(LPCWSTR szPackage, DWORD dwOptions, MSIHANDLE *phP
ret = ERROR_NOT_ENOUGH_MEMORY;
msiobj_release( &package->hdr );
}
else
MSI_ProcessMessage(NULL, INSTALLMESSAGE_TERMINATE, 0);
return ret;
}
@ -1678,18 +1702,169 @@ MSIHANDLE WINAPI MsiGetActiveDatabase(MSIHANDLE hInstall)
return handle;
}
INT MSI_ProcessMessage( MSIPACKAGE *package, INSTALLMESSAGE eMessageType, MSIRECORD *record )
static INT internal_ui_handler(MSIPACKAGE *package, INSTALLMESSAGE eMessageType, MSIRECORD *record, LPCWSTR message)
{
static const WCHAR szActionData[] = {'A','c','t','i','o','n','D','a','t','a',0};
static const WCHAR szSetProgress[] = {'S','e','t','P','r','o','g','r','e','s','s',0};
static const WCHAR szActionText[] = {'A','c','t','i','o','n','T','e','x','t',0};
MSIRECORD *uirow;
LPWSTR deformated, message;
DWORD i, len, total_len, log_type = 0;
static const WCHAR szSetProgress[] = {'S','e','t','P','r','o','g','r','e','s','s',0};
static const WCHAR szWindows_Installer[] =
{'W','i','n','d','o','w','s',' ','I','n','s','t','a','l','l','e','r',0};
if (!package || (package->ui_level & INSTALLUILEVEL_MASK) == INSTALLUILEVEL_NONE)
return 0;
/* todo: check if message needs additional styles (topmost/foreground/modality?) */
switch (eMessageType & 0xff000000)
{
case INSTALLMESSAGE_FATALEXIT:
case INSTALLMESSAGE_ERROR:
case INSTALLMESSAGE_OUTOFDISKSPACE:
if (package->ui_level & INSTALLUILEVEL_PROGRESSONLY) return 0;
if (!(eMessageType & MB_ICONMASK))
eMessageType |= MB_ICONEXCLAMATION;
return MessageBoxW(gUIhwnd, message, szWindows_Installer, eMessageType & 0x00ffffff);
case INSTALLMESSAGE_WARNING:
if (package->ui_level & INSTALLUILEVEL_PROGRESSONLY) return 0;
if (!(eMessageType & MB_ICONMASK))
eMessageType |= MB_ICONASTERISK;
return MessageBoxW(gUIhwnd, message, szWindows_Installer, eMessageType & 0x00ffffff);
case INSTALLMESSAGE_USER:
if (package->ui_level & INSTALLUILEVEL_PROGRESSONLY) return 0;
if (!(eMessageType & MB_ICONMASK))
eMessageType |= MB_USERICON;
return MessageBoxW(gUIhwnd, message, szWindows_Installer, eMessageType & 0x00ffffff);
case INSTALLMESSAGE_INFO:
case INSTALLMESSAGE_INITIALIZE:
case INSTALLMESSAGE_TERMINATE:
return 0;
case INSTALLMESSAGE_SHOWDIALOG:
{
LPWSTR dialog = msi_dup_record_field(record, 0);
INT rc = ACTION_DialogBox(package, dialog);
msi_free(dialog);
return rc;
}
case INSTALLMESSAGE_ACTIONSTART:
{
LPWSTR deformatted;
MSIRECORD *uirow = MSI_CreateRecord(1);
if (!uirow) return -1;
deformat_string(package, MSI_RecordGetString(record, 2), &deformatted);
MSI_RecordSetStringW(uirow, 1, deformatted);
msi_event_fire(package, szActionText, uirow);
msi_free(deformatted);
msiobj_release(&uirow->hdr);
return 1;
}
case INSTALLMESSAGE_ACTIONDATA:
{
MSIRECORD *uirow = MSI_CreateRecord(1);
if (!uirow) return -1;
MSI_RecordSetStringW(uirow, 1, message);
msi_event_fire(package, szActionData, uirow);
msiobj_release(&uirow->hdr);
if (package->action_progress_increment)
{
uirow = MSI_CreateRecord(2);
if (!uirow) return -1;
MSI_RecordSetInteger(uirow, 1, 2);
MSI_RecordSetInteger(uirow, 2, package->action_progress_increment);
msi_event_fire(package, szSetProgress, uirow);
msiobj_release(&uirow->hdr);
}
return 1;
}
case INSTALLMESSAGE_PROGRESS:
msi_event_fire(package, szSetProgress, record);
return 1;
case INSTALLMESSAGE_COMMONDATA:
switch (MSI_RecordGetInteger(record, 1))
{
case 0:
case 1:
/* do nothing */
return 0;
default:
/* fall through */
;
}
default:
FIXME("internal UI not implemented for message 0x%08x (UI level = %x)\n", eMessageType, package->ui_level);
return 0;
}
}
static const WCHAR szActionNotFound[] = {'D','E','B','U','G',':',' ','E','r','r','o','r',' ','[','1',']',':',' ',' ','A','c','t','i','o','n',' ','n','o','t',' ','f','o','u','n','d',':',' ','[','2',']',0};
static const struct
{
int id;
const WCHAR *text;
}
internal_errors[] =
{
{2726, szActionNotFound},
{0}
};
static LPCWSTR get_internal_error_message(int error)
{
int i = 0;
while (internal_errors[i].id != 0)
{
if (internal_errors[i].id == error)
return internal_errors[i].text;
i++;
}
FIXME("missing error message %d\n", error);
return NULL;
}
/* Returned string must be freed */
LPWSTR msi_get_error_message(MSIDATABASE *db, int error)
{
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 *record;
LPWSTR ret = NULL;
if ((record = MSI_QueryGetRecord(db, query, error)))
{
ret = msi_dup_record_field(record, 1);
msiobj_release(&record->hdr);
}
else if (error < 2000)
{
int len = LoadStringW(msi_hInstance, IDS_ERROR_BASE + error, (LPWSTR) &ret, 0);
if (len)
{
ret = msi_alloc((len + 1) * sizeof(WCHAR));
LoadStringW(msi_hInstance, IDS_ERROR_BASE + error, ret, len + 1);
}
else
ret = NULL;
}
return ret;
}
INT MSI_ProcessMessageVerbatim(MSIPACKAGE *package, INSTALLMESSAGE eMessageType, MSIRECORD *record)
{
LPWSTR message = {0};
DWORD len, log_type = 0;
UINT res;
INT rc = 0;
char *msg;
TRACE("%x\n", eMessageType);
if (TRACE_ON(msi)) dump_record(record);
if ((eMessageType & 0xff000000) == INSTALLMESSAGE_FATALEXIT)
log_type |= INSTALLLOGMODE_FATALEXIT;
@ -1720,97 +1895,48 @@ INT MSI_ProcessMessage( MSIPACKAGE *package, INSTALLMESSAGE eMessageType, MSIREC
if ((eMessageType & 0xff000000) == INSTALLMESSAGE_SHOWDIALOG)
log_type |= INSTALLLOGMODE_SHOWDIALOG;
if ((eMessageType & 0xff000000) == INSTALLMESSAGE_ACTIONSTART)
{
static const WCHAR template_s[]=
{'A','c','t','i','o','n',' ','%','s',':',' ','%','s','.',' ',0};
static const WCHAR format[] =
{'H','H','\'',':','\'','m','m','\'',':','\'','s','s',0};
WCHAR timet[0x100];
LPCWSTR action_text, action;
LPWSTR deformatted = NULL;
GetTimeFormatW(LOCALE_USER_DEFAULT, 0, NULL, format, timet, 0x100);
action = MSI_RecordGetString(record, 1);
action_text = MSI_RecordGetString(record, 2);
if (!action || !action_text)
return IDOK;
deformat_string(package, action_text, &deformatted);
len = strlenW(timet) + strlenW(action) + strlenW(template_s);
if (deformatted)
len += strlenW(deformatted);
message = msi_alloc(len*sizeof(WCHAR));
sprintfW(message, template_s, timet, action);
if (deformatted)
strcatW(message, deformatted);
msi_free(deformatted);
if (!package || !record)
message = NULL;
else {
res = MSI_FormatRecordW(package, record, message, &len);
if (res != ERROR_SUCCESS && res != ERROR_MORE_DATA)
return res;
len++;
message = msi_alloc(len * sizeof(WCHAR));
if (!message) return ERROR_OUTOFMEMORY;
MSI_FormatRecordW(package, record, message, &len);
}
else
{
static const WCHAR format[] = {'%','u',':',' ',0};
UINT count = MSI_RecordGetFieldCount( record );
WCHAR *p;
total_len = 1;
for (i = 1; i <= count; i++)
{
len = 0;
MSI_RecordGetStringW( record, i, NULL, &len );
total_len += len + 13;
}
p = message = msi_alloc( total_len * sizeof(WCHAR) );
if (!p) return ERROR_OUTOFMEMORY;
for (i = 1; i <= count; i++)
{
if (count > 1)
{
len = sprintfW( p, format, i );
total_len -= len;
p += len;
}
len = total_len;
MSI_RecordGetStringW( record, i, p, &len );
total_len -= len;
p += len;
if (count > 1 && total_len)
{
*p++ = ' ';
total_len--;
}
}
p[0] = 0;
}
TRACE("%p %p %p %x %x %s\n", gUIHandlerA, gUIHandlerW, gUIHandlerRecord,
gUIFilter, log_type, debugstr_w(message));
/* convert it to ASCII */
len = WideCharToMultiByte( CP_ACP, 0, message, -1, NULL, 0, NULL, NULL );
msg = msi_alloc( len );
WideCharToMultiByte( CP_ACP, 0, message, -1, msg, len, NULL, NULL );
if (gUIHandlerW && (gUIFilter & log_type))
if (gUIHandlerRecord && (gUIFilterRecord & log_type))
{
rc = gUIHandlerW( gUIContext, eMessageType, message );
}
else if (gUIHandlerA && (gUIFilter & log_type))
{
rc = gUIHandlerA( gUIContext, eMessageType, msg );
}
else if (gUIHandlerRecord && (gUIFilter & log_type))
{
MSIHANDLE rec = MsiCreateRecord( 1 );
MsiRecordSetStringW( rec, 0, message );
rc = gUIHandlerRecord( gUIContext, eMessageType, rec );
MSIHANDLE rec = alloc_msihandle(&record->hdr);
TRACE("Calling UI handler %p(pvContext=%p, iMessageType=%08x, hRecord=%u)\n",
gUIHandlerRecord, gUIContextRecord, eMessageType, rec);
rc = gUIHandlerRecord( gUIContextRecord, eMessageType, rec );
MsiCloseHandle( rec );
}
if (!rc && gUIHandlerW && (gUIFilter & log_type))
{
TRACE("Calling UI handler %p(pvContext=%p, iMessageType=%08x, szMessage=%s)\n",
gUIHandlerW, gUIContext, eMessageType, debugstr_w(message));
rc = gUIHandlerW( gUIContext, eMessageType, message );
}
else if (!rc && gUIHandlerA && (gUIFilter & log_type))
{
TRACE("Calling UI handler %p(pvContext=%p, iMessageType=%08x, szMessage=%s)\n",
gUIHandlerA, gUIContext, eMessageType, debugstr_a(msg));
rc = gUIHandlerA( gUIContext, eMessageType, msg );
}
if (!rc && package->log_file != INVALID_HANDLE_VALUE &&
if (!rc)
rc = internal_ui_handler(package, eMessageType, record, message);
if (!rc && package && package->log_file != INVALID_HANDLE_VALUE &&
(eMessageType & 0xff000000) != INSTALLMESSAGE_PROGRESS)
{
DWORD written;
@ -1820,44 +1946,113 @@ INT MSI_ProcessMessage( MSIPACKAGE *package, INSTALLMESSAGE eMessageType, MSIREC
msi_free( msg );
msi_free( message );
return rc;
}
INT MSI_ProcessMessage( MSIPACKAGE *package, INSTALLMESSAGE eMessageType, MSIRECORD *record )
{
switch (eMessageType & 0xff000000)
{
case INSTALLMESSAGE_ACTIONDATA:
deformat_string(package, MSI_RecordGetString(record, 2), &deformated);
uirow = MSI_CreateRecord(1);
MSI_RecordSetStringW(uirow, 1, deformated);
msi_free(deformated);
msi_event_fire( package, szActionData, uirow );
msiobj_release(&uirow->hdr);
if (package->action_progress_increment)
case INSTALLMESSAGE_FATALEXIT:
case INSTALLMESSAGE_ERROR:
case INSTALLMESSAGE_WARNING:
case INSTALLMESSAGE_USER:
case INSTALLMESSAGE_INFO:
case INSTALLMESSAGE_OUTOFDISKSPACE:
if (MSI_RecordGetInteger(record, 1) != MSI_NULL_INTEGER)
{
uirow = MSI_CreateRecord(2);
MSI_RecordSetInteger(uirow, 1, 2);
MSI_RecordSetInteger(uirow, 2, package->action_progress_increment);
msi_event_fire( package, szSetProgress, uirow );
msiobj_release(&uirow->hdr);
/* error message */
LPWSTR template;
LPWSTR template_rec = NULL, template_prefix = NULL;
int error = MSI_RecordGetInteger(record, 1);
if (MSI_RecordIsNull(record, 0))
{
if (error >= 32)
{
template_rec = msi_get_error_message(package->db, error);
if (!template_rec && error >= 2000)
{
/* internal error, not localized */
if ((template_rec = (LPWSTR) get_internal_error_message(error)))
{
MSI_RecordSetStringW(record, 0, template_rec);
MSI_ProcessMessageVerbatim(package, INSTALLMESSAGE_INFO, record);
}
template_rec = msi_get_error_message(package->db, MSIERR_INSTALLERROR);
MSI_RecordSetStringW(record, 0, template_rec);
MSI_ProcessMessageVerbatim(package, eMessageType, record);
msi_free(template_rec);
return 0;
}
}
}
else
template_rec = msi_dup_record_field(record, 0);
template_prefix = msi_get_error_message(package->db, eMessageType >> 24);
if (!template_prefix) template_prefix = strdupW(szEmpty);
if (!template_rec)
{
/* always returns 0 */
MSI_RecordSetStringW(record, 0, template_prefix);
MSI_ProcessMessageVerbatim(package, eMessageType, record);
msi_free(template_prefix);
return 0;
}
template = msi_alloc((strlenW(template_rec) + strlenW(template_prefix) + 1) * sizeof(WCHAR));
if (!template) return ERROR_OUTOFMEMORY;
strcpyW(template, template_prefix);
strcatW(template, template_rec);
MSI_RecordSetStringW(record, 0, template);
msi_free(template_prefix);
msi_free(template_rec);
msi_free(template);
}
break;
case INSTALLMESSAGE_ACTIONSTART:
deformat_string(package, MSI_RecordGetString(record, 2), &deformated);
uirow = MSI_CreateRecord(1);
MSI_RecordSetStringW(uirow, 1, deformated);
msi_free(deformated);
{
WCHAR *template = msi_get_error_message(package->db, MSIERR_ACTIONSTART);
MSI_RecordSetStringW(record, 0, template);
msi_free(template);
msi_event_fire( package, szActionText, uirow );
msiobj_release(&uirow->hdr);
break;
case INSTALLMESSAGE_PROGRESS:
msi_event_fire( package, szSetProgress, record );
msi_free(package->LastAction);
msi_free(package->LastActionTemplate);
package->LastAction = msi_dup_record_field(record, 1);
if (!package->LastAction) package->LastAction = strdupW(szEmpty);
package->LastActionTemplate = msi_dup_record_field(record, 3);
break;
}
case INSTALLMESSAGE_ACTIONDATA:
if (package->LastAction && package->LastActionTemplate)
{
static const WCHAR template_s[] =
{'{','{','%','s',':',' ','}','}','%','s',0};
WCHAR *template;
return ERROR_SUCCESS;
template = msi_alloc((strlenW(package->LastAction) + strlenW(package->LastActionTemplate) + 7) * sizeof(WCHAR));
if (!template) return ERROR_OUTOFMEMORY;
sprintfW(template, template_s, package->LastAction, package->LastActionTemplate);
MSI_RecordSetStringW(record, 0, template);
msi_free(template);
}
break;
case INSTALLMESSAGE_COMMONDATA:
{
WCHAR *template = msi_get_error_message(package->db, MSIERR_COMMONDATA);
MSI_RecordSetStringW(record, 0, template);
msi_free(template);
}
break;
}
return MSI_ProcessMessageVerbatim(package, eMessageType, record);
}
INT WINAPI MsiProcessMessage( MSIHANDLE hInstall, INSTALLMESSAGE eMessageType,
@ -1867,6 +2062,14 @@ INT WINAPI MsiProcessMessage( MSIHANDLE hInstall, INSTALLMESSAGE eMessageType,
MSIPACKAGE *package = NULL;
MSIRECORD *record = NULL;
if ((eMessageType & 0xff000000) == INSTALLMESSAGE_INITIALIZE ||
(eMessageType & 0xff000000) == INSTALLMESSAGE_TERMINATE)
return -1;
if ((eMessageType & 0xff000000) == INSTALLMESSAGE_COMMONDATA &&
MsiRecordGetInteger(hRecord, 1) != 2)
return -1;
package = msihandle2msiinfo( hInstall, MSIHANDLETYPE_PACKAGE );
if( !package )
{
@ -2072,9 +2275,45 @@ static MSIRECORD *msi_get_property_row( MSIDATABASE *db, LPCWSTR name )
MSIQUERY *view;
UINT r;
static const WCHAR szDate[] = {'D','a','t','e',0};
static const WCHAR szTime[] = {'T','i','m','e',0};
WCHAR *buffer;
int length;
if (!name || !*name)
return NULL;
if (!strcmpW(name, szDate))
{
length = GetDateFormatW(LOCALE_USER_DEFAULT, DATE_SHORTDATE, NULL, NULL, NULL, 0);
if (!length)
return NULL;
buffer = msi_alloc(length * sizeof(WCHAR));
GetDateFormatW(LOCALE_USER_DEFAULT, DATE_SHORTDATE, NULL, NULL, buffer, sizeof(WCHAR));
row = MSI_CreateRecord(1);
if (!row)
return NULL;
MSI_RecordSetStringW(row, 1, buffer);
msi_free(buffer);
return row;
}
else if (!strcmpW(name, szTime))
{
length = GetTimeFormatW(LOCALE_USER_DEFAULT, TIME_NOTIMEMARKER, NULL, NULL, NULL, 0);
if (!length)
return NULL;
buffer = msi_alloc(length * sizeof(WCHAR));
GetTimeFormatW(LOCALE_USER_DEFAULT, TIME_NOTIMEMARKER, NULL, NULL, buffer, sizeof(WCHAR));
row = MSI_CreateRecord(1);
if (!row)
return NULL;
MSI_RecordSetStringW(row, 1, buffer);
msi_free(buffer);
return row;
}
rec = MSI_CreateRecord(1);
if (!rec)
return NULL;

View file

@ -313,8 +313,17 @@ UINT MSI_RecordSetInteger( MSIRECORD *rec, UINT iField, int iVal )
return ERROR_INVALID_PARAMETER;
MSI_FreeField( &rec->fields[iField] );
rec->fields[iField].type = MSIFIELD_INT;
rec->fields[iField].u.iVal = iVal;
if (iVal == MSI_NULL_INTEGER)
{
rec->fields[iField].type = MSIFIELD_NULL;
rec->fields[iField].u.szwVal = NULL;
}
else
{
rec->fields[iField].type = MSIFIELD_INT;
rec->fields[iField].u.iVal = iVal;
}
return ERROR_SUCCESS;
}
@ -1048,3 +1057,28 @@ WCHAR *msi_dup_record_field( MSIRECORD *rec, INT field )
}
return str;
}
void dump_record(MSIRECORD *rec)
{
int i;
if (!rec)
{
TRACE("(null)\n");
return;
}
TRACE("[");
for (i = 0; i <= rec->count; i++)
{
switch(rec->fields[i].type)
{
case MSIFIELD_NULL: TRACE("(null)"); break;
case MSIFIELD_INT: TRACE("%d", rec->fields[i].u.iVal); break;
case MSIFIELD_WSTR: TRACE("%s", debugstr_w(rec->fields[i].u.szwVal)); break;
case MSIFIELD_INTPTR: TRACE("%ld", rec->fields[i].u.pVal); break;
case MSIFIELD_STREAM: TRACE("%p", rec->fields[i].u.stream); break;
}
if (i < rec->count) TRACE(", ");
}
TRACE("]\n");
}

161
dll/win32/msi/resource.h Normal file
View file

@ -0,0 +1,161 @@
/*
* Copyright 2017 Zebediah Figura
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#define MSIERR_INSTALLERROR 5
#define MSIERR_ACTIONSTART 8
#define MSIERR_COMMONDATA 11
#define MSIERR_INFO_LOGGINGSTART 12
#define MSIERR_INFO_ACTIONSTART 14
#define MSIERR_INFO_ACTIONENDED 15
#define MSIERR_INSERTDISK 1302
#define MSIERR_CABNOTFOUND 1311
#define IDS_ERROR_BASE 10000
#define IDS_FATALEXIT (IDS_ERROR_BASE)
#define IDS_ERROR (IDS_ERROR_BASE + 1)
#define IDS_WARNING (IDS_ERROR_BASE + 2)
#define IDS_INFO (IDS_ERROR_BASE + 4)
#define IDS_INSTALLERROR (IDS_ERROR_BASE + MSIERR_INSTALLERROR)
#define IDS_OUTOFDISKSPACE (IDS_ERROR_BASE + 7)
#define IDS_ACTIONSTART (IDS_ERROR_BASE + MSIERR_ACTIONSTART)
#define IDS_COMMONDATA (IDS_ERROR_BASE + MSIERR_COMMONDATA)
#define IDS_INFO_LOGGINGSTART (IDS_ERROR_BASE + MSIERR_INFO_LOGGINGSTART)
#define IDS_INFO_ACTIONSTART (IDS_ERROR_BASE + MSIERR_INFO_ACTIONSTART)
#define IDS_INFO_ACTIONENDED (IDS_ERROR_BASE + MSIERR_INFO_ACTIONENDED)
#define IDS_ERR_INSERTDISK (IDS_ERROR_BASE + MSIERR_INSERTDISK)
#define IDS_ERR_CABNOTFOUND (IDS_ERROR_BASE + MSIERR_CABNOTFOUND)
#define IDS_DESC_ALLOCATEREGISTRYSPACE 1100
#define IDS_DESC_APPSEARCH 1101
#define IDS_DESC_BINDIMAGE 1102
#define IDS_DESC_CCPSEARCH 1103
#define IDS_DESC_COSTFINALIZE 1104
#define IDS_DESC_COSTINITIALIZE 1105
#define IDS_DESC_CREATEFOLDERS 1106
#define IDS_DESC_CREATESHORTCUTS 1107
#define IDS_DESC_DELETESERVICES 1108
#define IDS_DESC_DUPLICATEFILES 1109
#define IDS_DESC_FILECOST 1110
#define IDS_DESC_FINDRELATEDPRODUCTS 1111
#define IDS_DESC_INSTALLADMINPACKAGE 1112
#define IDS_DESC_INSTALLFILES 1113
#define IDS_DESC_INSTALLODBC 1114
#define IDS_DESC_INSTALLSERVICES 1115
#define IDS_DESC_INSTALLSFPCATALOGFILE 1116
#define IDS_DESC_INSTALLVALIDATE 1117
#define IDS_DESC_LAUNCHCONDITIONS 1118
#define IDS_DESC_MIGRATEFEATURESTATES 1119
#define IDS_DESC_MOVEFILES 1120
#define IDS_DESC_MSIPUBLISHASSEMBLIES 1121
#define IDS_DESC_MSIUNPUBLISHASSEMBLIES 1122
#define IDS_DESC_PATCHFILES 1123
#define IDS_DESC_PROCESSCOMPONENTS 1124
#define IDS_DESC_PUBLISHCOMPONENTS 1125
#define IDS_DESC_PUBLISHFEATURES 1126
#define IDS_DESC_PUBLISHPRODUCT 1127
#define IDS_DESC_REGISTERCLASSINFO 1128
#define IDS_DESC_REGISTERCOMPLUS 1129
#define IDS_DESC_REGISTEREXTENSIONINFO 1130
#define IDS_DESC_REGISTERFONTS 1131
#define IDS_DESC_REGISTERMIMEINFO 1132
#define IDS_DESC_REGISTERPRODUCT 1133
#define IDS_DESC_REGISTERPROGIDINFO 1134
#define IDS_DESC_REGISTERTYPELIBRARIES 1135
#define IDS_DESC_REGISTERUSER 1136
#define IDS_DESC_REMOVEDUPLICATEFILES 1137
#define IDS_DESC_REMOVEENVIRONMENTSTRINGS 1138
#define IDS_DESC_REMOVEEXISTINGPRODUCTS 1139
#define IDS_DESC_REMOVEFILES 1140
#define IDS_DESC_REMOVEFOLDERS 1141
#define IDS_DESC_REMOVEINIVALUES 1142
#define IDS_DESC_REMOVEODBC 1143
#define IDS_DESC_REMOVEREGISTRYVALUES 1144
#define IDS_DESC_REMOVESHORTCUTS 1145
#define IDS_DESC_RMCCPSEARCH 1146
#define IDS_DESC_SELFREGMODULES 1147
#define IDS_DESC_SELFUNREGMODULES 1148
#define IDS_DESC_SETODBCFOLDERS 1149
#define IDS_DESC_STARTSERVICES 1150
#define IDS_DESC_STOPSERVICES 1151
#define IDS_DESC_UNPUBLISHCOMPONENTS 1152
#define IDS_DESC_UNPUBLISHFEATURES 1153
#define IDS_DESC_UNPUBLISHPRODUCT 1154
#define IDS_DESC_UNREGISTERCLASSINFO 1155
#define IDS_DESC_UNREGISTERCOMPLUS 1156
#define IDS_DESC_UNREGISTEREXTENSIONINFO 1157
#define IDS_DESC_UNREGISTERFONTS 1158
#define IDS_DESC_UNREGISTERMIMEINFO 1159
#define IDS_DESC_UNREGISTERPROGIDINFO 1160
#define IDS_DESC_UNREGISTERTYPELIBRARIES 1161
#define IDS_DESC_WRITEENVIRONMENTSTRINGS 1162
#define IDS_DESC_WRITEINIVALUES 1163
#define IDS_DESC_WRITEREGISTRYVALUES 1164
#define IDS_TEMP_ALLOCATEREGISTRYSPACE 1200
#define IDS_TEMP_APPSEARCH 1201
#define IDS_TEMP_BINDIMAGE 1202
#define IDS_TEMP_CREATEFOLDERS 1203
#define IDS_TEMP_CREATESHORTCUTS 1204
#define IDS_TEMP_DELETESERVICES 1205
#define IDS_TEMP_DUPLICATEFILES 1206
#define IDS_TEMP_FINDRELATEDPRODUCTS 1207
#define IDS_TEMP_INSTALLADMINPACKAGE 1208
#define IDS_TEMP_INSTALLFILES 1209
#define IDS_TEMP_INSTALLSERVICES 1210
#define IDS_TEMP_INSTALLSFPCATALOGFILE 1211
#define IDS_TEMP_MIGRATEFEATURESTATES 1212
#define IDS_TEMP_MOVEFILES 1213
#define IDS_TEMP_MSIPUBLISHASSEMBLIES 1214
#define IDS_TEMP_MSIUNPUBLISHASSEMBLIES 1215
#define IDS_TEMP_PATCHFILES 1216
#define IDS_TEMP_PUBLISHCOMPONENTS 1217
#define IDS_TEMP_PUBLISHFEATURES 1218
#define IDS_TEMP_REGISTERCLASSINFO 1219
#define IDS_TEMP_REGISTERCOMPLUS 1220
#define IDS_TEMP_REGISTEREXTENSIONINFO 1221
#define IDS_TEMP_REGISTERFONTS 1222
#define IDS_TEMP_REGISTERMIMEINFO 1223
#define IDS_TEMP_REGISTERPROGIDINFO 1224
#define IDS_TEMP_REGISTERTYPELIBRARIES 1225
#define IDS_TEMP_REMOVEDUPLICATEFILES 1226
#define IDS_TEMP_REMOVEENVIRONMENTSTRINGS 1227
#define IDS_TEMP_REMOVEEXISTINGPRODUCTS 1228
#define IDS_TEMP_REMOVEFILES 1229
#define IDS_TEMP_REMOVEFOLDERS 1230
#define IDS_TEMP_REMOVEINIVALUES 1231
#define IDS_TEMP_REMOVEREGISTRYVALUES 1232
#define IDS_TEMP_REMOVESHORTCUTS 1233
#define IDS_TEMP_SELFREGMODULES 1234
#define IDS_TEMP_SELFUNREGMODULES 1235
#define IDS_TEMP_STARTSERVICES 1236
#define IDS_TEMP_STOPSERVICES 1237
#define IDS_TEMP_UNPUBLISHCOMPONENTS 1238
#define IDS_TEMP_UNPUBLISHFEATURES 1239
#define IDS_TEMP_UNREGISTERCLASSINFO 1240
#define IDS_TEMP_UNREGISTERCOMPLUS 1241
#define IDS_TEMP_UNREGISTEREXTENSIONINFO 1242
#define IDS_TEMP_UNREGISTERFONTS 1243
#define IDS_TEMP_UNREGISTERMIMEINFO 1244
#define IDS_TEMP_UNREGISTERPROGIDINFO 1245
#define IDS_TEMP_UNREGISTERTYPELIBRARIES 1246
#define IDS_TEMP_WRITEENVIRONMENTSTRINGS 1247
#define IDS_TEMP_WRITEINIVALUES 1248
#define IDS_TEMP_WRITEREGISTRYVALUES 1249

81
dll/win32/msi/rsrc.rc Normal file
View file

@ -0,0 +1,81 @@
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_BG_BG
#include "lang/msi_Bg.rc"
#endif
#ifdef LANGUAGE_DA_DK
#include "lang/msi_Da.rc"
#endif
#ifdef LANGUAGE_DE_DE
#include "lang/msi_De.rc"
#endif
#ifdef LANGUAGE_EN_US
#include "lang/msi_En.rc"
#endif
#ifdef LANGUAGE_ES_ES
#include "lang/msi_Es.rc"
#endif
#ifdef LANGUAGE_FI_FI
#include "lang/msi_Fi.rc"
#endif
#ifdef LANGUAGE_FR_FR
#include "lang/msi_Fr.rc"
#endif
#ifdef LANGUAGE_HE_IL
#include "lang/msi_He.rc"
#endif
#ifdef LANGUAGE_HU_HU
#include "lang/msi_Hu.rc"
#endif
#ifdef LANGUAGE_IT_IT
#include "lang/msi_It.rc"
#endif
#ifdef LANGUAGE_JA_JP
#include "lang/msi_Ja.rc"
#endif
#ifdef LANGUAGE_KO_KR
#include "lang/msi_Ko.rc"
#endif
#ifdef LANGUAGE_LT_LT
#include "lang/msi_Lt.rc"
#endif
#ifdef LANGUAGE_NL_NL
#include "lang/msi_Nl.rc"
#endif
#ifdef LANGUAGE_NO_NO
#include "lang/msi_No.rc"
#endif
#ifdef LANGUAGE_PL_PL
#include "lang/msi_Pl.rc"
#endif
#ifdef LANGUAGE_PT_PT
#include "lang/msi_Pt.rc"
#endif
#ifdef LANGUAGE_RO_RO
#include "lang/msi_Ro.rc"
#endif
#ifdef LANGUAGE_RU_RU
#include "lang/msi_Ru.rc"
#endif
#ifdef LANGUAGE_SL_SI
#include "lang/msi_Si.rc"
#endif
#ifdef LANGUAGE_SQ_AL
#include "lang/msi_Sq.rc"
#endif
#ifdef LANGUAGE_SR_SP
#include "lang/msi_Sr.rc"
#endif
#ifdef LANGUAGE_SV_SE
#include "lang/msi_Sv.rc"
#endif
#ifdef LANGUAGE_TR_TR
#include "lang/msi_Tr.rc"
#endif
#ifdef LANGUAGE_UK_UA
#include "lang/msi_Uk.rc"
#endif
#ifdef LANGUAGE_ZH_CN
#include "lang/msi_Zh.rc"
#endif

View file

@ -2393,25 +2393,6 @@ static MSIRECORD *msi_get_transform_record( const MSITABLEVIEW *tv, const string
return rec;
}
static void dump_record( MSIRECORD *rec )
{
UINT i, n;
n = MSI_RecordGetFieldCount( rec );
for( i=1; i<=n; i++ )
{
int len;
const WCHAR *sval;
if( MSI_RecordIsNull( rec, i ) )
TRACE("row -> []\n");
else if( (sval = msi_record_get_string( rec, i, &len )) )
TRACE("row -> [%s]\n", debugstr_wn(sval, len));
else
TRACE("row -> [0x%08x]\n", MSI_RecordGetInteger( rec, i ) );
}
}
static void dump_table( const string_table *st, const USHORT *rawdata, UINT rawsize )
{
UINT i;

View file

@ -181,7 +181,7 @@ static UINT ITERATE_FindRelatedProducts(MSIRECORD *rec, LPVOID param)
action_property = MSI_RecordGetString(rec, 7);
append_productcode(package, action_property, productid);
MSI_RecordSetStringW(uirow, 1, productid);
msi_ui_actiondata(package, szFindRelatedProducts, uirow);
MSI_ProcessMessage(package, INSTALLMESSAGE_ACTIONDATA, uirow);
}
index ++;
}

View file

@ -112,7 +112,7 @@ reactos/dll/win32/msg711.acm # Synced to WineStaging-2.9
reactos/dll/win32/msgsm32.acm # Synced to WineStaging-2.9
reactos/dll/win32/mshtml # Synced to WineStaging-1.7.55
reactos/dll/win32/mshtml.tlb # Synced to WineStaging-1.7.55
reactos/dll/win32/msi # Synced to WineStaging-2.9
reactos/dll/win32/msi # Synced to WineStaging-2.16
reactos/dll/win32/msimg32 # Synced to WineStaging-2.16
reactos/dll/win32/msimtf # Synced to WineStaging-2.9
reactos/dll/win32/msisip # Synced to WineStaging-2.9