Войти

Показать полную графическую версию : [решено] Скомпилированый скрипт ведет себя не так как исходник


eus_deus
18-10-2013, 22:29
Ситуация такая - исходник нормально записывает и секции и параметры в файл ini , а скомпилированый - пишет только имя секции, без параметров. Что приложить сюда, даже не знаю...

Creat0R
19-10-2013, 00:14
Что приложить сюда, даже не знаю »
Пример.

Или предлагаешь нам достать кристальный шар и погадать на нём? :)

eus_deus
19-10-2013, 19:28
если не применять обфускаию, то все нормально работает. чудеса

eus_deus
19-10-2013, 22:11
функция, с которой и есть эта беда

Func _TMPTheme()
$FileINI = @ScriptDir&'Setting.ini')
$utime = FileGetTime($FileINI, 0, 1)
If GUICtrlRead($vTab1) = "0" Then
$vkey1 = GUICtrlRead($vInput1)
$vkey2 = GUICtrlRead($vInput2)
$vkey3 = GUICtrlRead($vInput3)
$vkey4 = GUICtrlRead($vInput4)
$vkey5 = GUICtrlRead($vInput5)
$vkey6 = GUICtrlRead($vInput6)
$vkey7 = GUICtrlRead($vInput7)
$vData = ''
For $i = 1 To $vKeys[0]
$vVal = Eval('vkey' & $i)
If $vVal <> '' Then
$vData &= $vKeys[$i] & '=' & $vVal & @CRLF
EndIf
Next
IniWriteSection($FileINI, 'TEST', $vData)
Else
$akey1 = GUICtrlRead($aInput2)
$akey2 = GUICtrlRead($aInput3)
$akey3 = GUICtrlRead($aInput4)
$aData = ''
For $i = 1 To $aKeys[0]
$aVal = Eval('akey' & $i)
If $aVal <> '' Then
$aData &= $aKeys[$i] & '=' & $aVal & @CRLF
EndIf
Next
IniWriteSection($FileINI, "v_TEST", $aData)
EndIf
FileSetTime($FileINI, $utime, 0)
EndFunc

Предполагаю, что трабл в eval. в правке упоминали о проблеме обфускации этой фукнции. хотя игнорировании функции ничего не дало

eus_deus
21-10-2013, 20:55
решил заменой функций с eval. правильно трабл в нем

Creat0R
25-10-2013, 00:34
если не применять обфускаию, то все нормально работает »
У обфускатора есть директивы #Obfuscator_Off и #Obfuscator_On, которые можно использовать для исключения блока кода при обфускации.




© OSzone.net 2001-2012