Mixaill 1,737 #431146 Posted May 19, 2018 вот, нехватает PyFunction_Type :) 1 Quote Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #431147 Posted May 19, 2018 (edited) Жаль плюсомёт еще вчера закончился :) Чую, я нашел для Вас новую работёнку... Edited May 19, 2018 by Pavel3333 Quote Share this post Link to post Short link Share on other sites
Mixaill 1,737 #431153 Posted May 19, 2018 @Pavel3333 Проверяем com.modxvm.xfw.native_1.2.0.00050.wotmod com.modxvm.xfw.native_1.2.0.00050-devel.zip 2 Quote Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #431154 Posted May 19, 2018 (edited) @Mixaill СКОМПИЛИЛОСЬ!!! Спасибо!!!@Mixaill, При отчаянной попытке выполнить i += 2 или же i = 0 i.__add__(2) ловлю подобное исключение: test_.obj : error LNK2019: <...> __imp__PyNumber_Add <...> ___Pyx_PyInt_AddObjC [C:\WoTPython\test_.vcxproj] test_.obj : error LNK2019: <...> __imp__PyNumber_InPlaceAdd <...> ___Pyx_PyInt_AddObjC [C:\WoTPython\test_.vcxproj] C:\WoTPython\Release\test_.pyd : fatal error LNK1120: <...>: 2 [C:\WoTPython\test_.vcxproj] __imp__PyNumber_Add не нашелся И вопрос. Можете вкратце написать, как найти смещение сигнатуры в танковом питоне? Вот еще, получил при компиляции скрипта, который сильно нагружен в игре: 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyUnicodeUCS2_Compare в функции ___Pyx_ParseOptionalKeywords 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Add в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_58__syncWithServerTurretYaw 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Subtract в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_18setShotPosition 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Multiply в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_42__calcAngleBetweenShotPointAndMarker 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Divide в функции ___Pyx_PyFloat_DivideObjC 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Remainder в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_58__syncWithServerTurretYaw 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Negative в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_22getShotParams 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Absolute в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_42__calcAngleBetweenShotPointAndMarker 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_InPlaceAdd в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_20predictLockedTargetShotPoint 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_InPlaceSubtract в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_6stop 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_InPlaceMultiply в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_68getNextGunPitch 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_InPlaceDivide в функции ___Pyx_PyFloat_DivideObjC 2>VehicleGunRotator.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_InPlaceOr в функции ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_82__getGunPitchLimits По сути в XFW нет большой части по работе с числами и нет 1 функции по работе со строкой. Далее уже идут менее нагруженные скрипты. Повторяющиеся символы удалены. 1>Account.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PySet_New в функции ___pyx_pf_7Account_13PlayerAccount_293__synchronizeEventNotifications 1>Account.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Index в функции ___Pyx_PyObject_GetIndex 1>Account.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Int в функции ___pyx_pf_7Account_13PlayerAccount_112requestPrebattles 1>__init__.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Lshift в функции ___pyx_pw_7sources_8__init___13BitmaskHelper_13isBitSet 1>__init__.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Rshift в функции ___Pyx_PyInt_RshiftObjC 1>__init__.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_And в функции ___pyx_pw_7sources_8__init___13BitmaskHelper_9hasAllBitsSet 1>__init__.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_Xor в функции ___pyx_gb_7sources_8__init___13BitmaskHelper_23generator2 1>__init__.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_InPlaceRshift в функции ___Pyx_PyInt_RshiftObjC 1>__init__.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_InPlaceAnd в функции ___Pyx_PyInt_AndObjC 1>__init__.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_InPlaceXor в функции ___pyx_pf_7sources_8__init___13BitmaskHelper_4remove 1>__init__.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__PyNumber_InPlaceOr в функции ___pyx_pw_7sources_8__init___13BitmaskHelper_1add Ну и чисто мой скрипт конфига. Config.obj : error LNK2019: <...> __imp__PyUnicodeUCS2_Compare <...> ___Pyx_ParseOptionalKeywords [C:\WoTPython\Config.vcxproj] 5 часов назад, Pavel3333 сказал: И вопрос. Можете вкратце написать, как найти смещение сигнатуры в танковом питоне? Еще более конкретно - с какой версии питона Вы черпаете сигнатуры функций и как настроить IDA под тулзу на репозитории? Edited May 19, 2018 by Pavel3333 Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #431176 Posted May 19, 2018 3 hours ago, Pavel3333 said: Еще более конкретно - с какой версии питона Вы черпаете сигнатуры функций и как настроить IDA под тулзу на репозитории? 2.7.7 же а в IDA смотришь где встречается та или иная функция и ищешь ее в теле уже найденных внутри exe или же по отличительным особенностям(в основном строковые константы) Quote Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #431177 Posted May 19, 2018 (edited) @SkepticalFox а смещения откуда берутся? с начала exe'шника или с точки входа танковой python27.lib? Edited May 19, 2018 by Pavel3333 Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #431179 Posted May 19, 2018 Just now, Pavel3333 said: а смещения откуда берутся? с начала exe'шника или с точки входа танковой python27.lib? просто берешь название функции в IDA что то вроде sub_1234567 вот 1234567 - это смещение 1 Quote Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #431180 Posted May 19, 2018 @SkepticalFox огромное спасибо, очень полезно! Quote Share this post Link to post Short link Share on other sites
Mixaill 1,737 #431186 Posted May 20, 2018 @Pavel3333 com.modxvm.xfw.native_1.2.0.00054-devel.zip com.modxvm.xfw.native_1.2.0.00054.wotmod 1 Quote Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #431192 Posted May 20, 2018 (edited) @Mixaill спасибо, файл конфига скомпилился, уже отлично. Компилятор голосит лишь про две функции: VehicleGunRotator.obj : error LNK2019: ёё√ыър эр эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы __imp__PyNumber_Subtract т ЇєэъЎшш ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_18setShotPosition [C:\WoTPython\VehicleGunRotator.vcxproj] VehicleGunRotator.obj : error LNK2019: ёё√ыър эр эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы __imp__PyNumber_InPlaceSubtract т ЇєэъЎшш ___pyx_pf_17VehicleGunRotator_17VehicleGunRotator_6stop [C:\WoTPython\VehicleGunRotator.vcxproj] Account.obj : error LNK2019: ёё√ыър эр эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы __imp__PyNumber_Subtract т ЇєэъЎшш ___pyx_pf_7Account_13PlayerAccount_293__synchronizeEventNotifications [C:\WoTPython\Account.vcxproj] Account.obj : error LNK2019: ёё√ыър эр эхЁрчЁх°хээ√щ тэх°эшщ ёшьтюы __imp__PyNumber_InPlaceSubtract т ЇєэъЎшш ___pyx_pf_7Account_13PlayerAccount___init__ [C:\WoTPython\Account.vcxproj] Сейчас буду копаться в Иде, самому интересно получать сигны. Edited May 20, 2018 by Pavel3333 Quote Share this post Link to post Short link Share on other sites
Mixaill 1,737 #431202 Posted May 20, 2018 (edited) @Pavel3333 com.modxvm.xfw.native_1.2.0.00055.wotmod com.modxvm.xfw.native_1.2.0.00055-devel.zip Edited May 20, 2018 by Mixaill Quote Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #431208 Posted May 20, 2018 @Mixaill спасибо, теперь всё собралось. Quote Share this post Link to post Short link Share on other sites