ОК, мне удалось в конечном итоге создать то, что я хотел, самостоятельно, это грубо, но это работает, мне просто нужно было избегать использования IniReadSection и Arrays, вместо этого я использовал IniRead и много If ... Then...Else заявления, вот код:
For $D = 1 To 99 Step +1
if FileExists (@ScriptDir & "\Common\Settings\Data" & $D & ".ini") Then
$ARi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeAR", "")
$CZi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeCZ", "")
$DEi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeDE", "")
$ENi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeEN", "")
$ESi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeES", "")
$ESMXi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeESMX", "")
$FRi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeFR", "")
$HUi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeHU", "")
$ITi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeIT", "")
$JPi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeJP", "")
$KRi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeKR", "")
$PLi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludePL", "")
$PRi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludePR", "")
$PRBRi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludePRBR", "")
$RUi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeRU", "")
$ZHi = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangInclude", "IncludeZH", "")
$ARe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeAR", "")
$CZe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeCZ", "")
$DEe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeDE", "")
$ENe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeEN", "")
$ESe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeES", "")
$ESMXe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeESMX", "")
$FRe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeFR", "")
$HUe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeHU", "")
$ITe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeIT", "")
$JPe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeJP", "")
$KRe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeKR", "")
$PLe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludePL", "")
$PRe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludePR", "")
$PRBRe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludePRBR", "")
$RUe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeRU", "")
$ZHe = IniRead (@ScriptDir & "\Common\Settings\Data" & $D & ".ini", "LangExclude", "ExcludeZH", "")
Global $OptNum
Global $LangOptions
If Not IsDeclared ("AR") Then
If Not $ARe = "" Or Not $ARi = "" Then $AR = "Arabic"
EndIf
If Not IsDeclared ("CZ") Then
If Not $CZe = "" Or Not $CZi = "" Then $CZ = "Czech"
EndIf
If Not IsDeclared ("DE") Then
If Not $DEe = "" Or Not $DEi = "" Then $DE = "German"
EndIf
If Not IsDeclared ("EN") Then
If Not $ENe = "" Or Not $ENi = "" Then $EN = "English"
EndIf
If Not IsDeclared ("ES") Then
If Not $ESe = "" Or Not $ESi = "" Then $ES = "Spanish"
EndIf
If Not IsDeclared ("ESMX") Then
If Not $ESMXe = "" Or Not $ESMXi = "" Then $ESMX = "Spanish(Mexico)"
EndIf
If Not IsDeclared ("FR") Then
If Not $FRe = "" Or Not $FRi = "" Then $FR = "French"
EndIf
If Not IsDeclared ("HU") Then
If Not $HUe = "" Or Not $HUi = "" Then $HU = "Hungarian"
EndIf
If Not IsDeclared ("IT") Then
If Not $ITe = "" Or Not $ITi = "" Then $IT = "Italian"
EndIf
If Not IsDeclared ("JP") Then
If Not $JPe = "" Or Not $JPi = "" Then $JP = "Japanese"
EndIf
If Not IsDeclared ("KR") Then
If Not $KRe = "" Or Not $KRi = "" Then $KR = "Korean"
EndIf
If Not IsDeclared ("PL") Then
If Not $PLe = "" Or Not $PLi = "" Then $PL = "Polish"
EndIf
If Not IsDeclared ("PR") Then
If Not $PRe = "" Or Not $PRi = "" Then $PR = "Portuguese"
EndIf
If Not IsDeclared ("PRBR") Then
If Not $PRBRe = "" Or Not $PRBRi = "" Then $PRBR = "Portuguese(Brazil)"
EndIf
If Not IsDeclared ("RU") Then
If Not $RUe = "" Or Not $RUi = "" Then $RU = "Russian"
EndIf
If Not IsDeclared ("ZH") Then
If Not $ZHe = "" Or Not $ZHi = "" Then $ZH = "Chinese"
EndIf
EndIf
Next
if IsDeclared ("AR") then
$OptNum+=1
If $OptNum = 1 Then
$LangOptions = "Arabic"
EndIf
EndIf
if IsDeclared ("CZ") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Czech"
Else
$LangOptions = "Czech"
EndIf
EndIf
if IsDeclared ("DE") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|German"
Else
$LangOptions = "German"
EndIf
EndIf
if IsDeclared ("EN") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|English"
Else
$LangOptions = "English"
EndIf
EndIf
if IsDeclared ("ES") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Spanish"
Else
$LangOptions = "Spanish"
EndIf
EndIf
if IsDeclared ("ESMX") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Spanish(Mexico)"
Else
$LangOptions = "Spanish(Mexico)"
EndIf
EndIf
if IsDeclared ("FR") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|French"
Else
$LangOptions = "French"
EndIf
EndIf
if IsDeclared ("HU") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Hungarian"
Else
$LangOptions = "Hungarian"
EndIf
EndIf
if IsDeclared ("IT") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Italian"
Else
$LangOptions = "Italian"
EndIf
EndIf
if IsDeclared ("JP") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Japanese"
Else
$LangOptions = "Japanese"
EndIf
EndIf
if IsDeclared ("KR") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Korean"
Else
$LangOptions = "Korean"
EndIf
EndIf
if IsDeclared ("PL") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Polish"
Else
$LangOptions = "Polish"
EndIf
EndIf
if IsDeclared ("PR") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Portuguese"
Else
$LangOptions = "Portuguese"
EndIf
EndIf
if IsDeclared ("PRBR") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Portuguese(Brazil)"
Else
$LangOptions = "Portuguese(Brazil)"
EndIf
EndIf
if IsDeclared ("RU") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Russian"
Else
$LangOptions = "Russian"
EndIf
EndIf
if IsDeclared ("ZH") then
$OptNum+=1
If $OptNum > 1 Then
$LangOptions = $LangOptions & "|Chinese"
Else
$LangOptions = "Chinese"
EndIf
EndIf
После этого есть проверка для $ OptNum и, если он больше 1, он отображает графический интерфейс с полем DropDown, который создается с помощью $ LangOptions.
Вкл. При нажатии OK выбранные языки переносятся в переменную по моему выбору, и затем я могу манипулировать ею, когда вижу необходимость в будущем.