Quote:
Originally Posted by HunterEmrah
how can i apply custommessage for Main files component ?
Script.iss
Code:
function TranslateComponentName(StrName: String): String;
begin
case Trim(Uppercase(Copy(StrName, Pos('cm:', LowerCase(StrName)) + Length('cm:'), Length(StrName)))) of
'EN', 'ENGLISH' : Result := CustomMessage('CompEnglish');
'FR', 'FRENCH' : Result := CustomMessage('CompFrench');
'DE', 'GERMAN' : Result := CustomMessage('CompGerman');
'IT', 'ITALIAN' : Result := CustomMessage('CompItalian');
'ES', 'SPANISH' : Result := CustomMessage('CompSpanish');
'PL', 'POLISH' : Result := CustomMessage('CompPolish');
'RU', 'RUSSIAN' : Result := CustomMessage('CompRussian');
'BR', 'BRAZILIAN' : Result := CustomMessage('CompPortugueseBrazil');
'MX', 'MEXICAN' : Result := CustomMessage('CompMexican');
'CZ', 'CZECH' : Result := CustomMessage('CompCzech');
'CL', 'COMPLAN' : Result := CustomMessage('CompLan');
'CB', 'COMPBONUS' : Result := CustomMessage('CompBonus');
'GC', 'COMPMAIN' : Result := CustomMessage('CompMain');
else
Result := StrName;
end;
end;
Code:
ComponentsSize := 0;
SetArrayLength(CompIndexList, 0);
IniFile := ExpandConstant('{tmp}\Settings.ini');
ComponentsPageAvai := GetIniBool('ComponentsSettings', 'Enable', False, IniFile);
if ComponentsPageAvai then
begin
if IniKeyExists('ComponentsSettings', 'Component' + IntToStr(I) + '.Name', IniFile) then
begin
CompName := 'cm:COMPMAIN';
ComponentsList.AddCheckBox(CompName, '', 0, True, False, True, True, nil);
end;
CustomMessages.iss
Code:
English.CompMain=Main files
also tried to type {cm:CompMain} for CompName, doesn't working
|
You have to add to function TranslateComponentName this line
Code:
'CM', 'COMPMAIN' : Result := CustomMessage('CompMain');
Or like you did:
Code:
'GC', 'COMPMAIN' : Result := CustomMessage('CompMain');
Then to settings.ini cm:CM or cm:GC OR cm:COMPMAIN as the name for the component, just remember to use capital letters after "cm:"
And of course like as You added to CustomMessages.iss
Code:
English.CompMain=Main files
As an advice, try to translate the components names to other languages if the installer is multilang, it will be helpful for others who will use it to unpack the game