Jump to content
Korean Random

Создание PYD для embedded python


fecell

Recommended Posts

Я только 4.0.7 в исходниках нашел

4.0.14 http://rutracker.org/forum/viewtopic.php?t=4502731

хотя...

#define GFX_VERSION_STRING       "4.0.7"
Может есть какой-то смысл скомпилить это в VS 2015?..

 

Самая очевидная функция, которая есть и там и там:

WoT 09.16.11080:
Scaleform::GFx::AS3::ASVM::ASVM 0xCB1240
Ну и еще десяток...
Edited by SkepticalFox
Link to comment
Short link
Share on other sites

Я только 4.0.7 в исходниках нашел, в идеале нужно 4.5.31.

 

похакал, если так можно сказать, официальную страницу загрузок - поправил ява код сняв с кнопки загрузки недоступность клика.

"в итоге получил прямую ссылку:"

но обойти дальнейшую авторизацию задача куда сложнее, я не справлюсь. может кто-то другой в этих делах более опытный. вообщем это все чем могу пособить.
Link to comment
Short link
Share on other sites

  • 4 weeks later...

Кто-нибудь может поделиться хорошими ссылками на адекватное объяснение для не совсем чайника вещей, которые вы тут обсуждаете? Просто сам С я знаю, немного работали с ним в универе, но вот с либами практически не работал, и не совсем понимаю принцип работы некоторых вещей.

В частности интересуют pyd'ы в питоне как таковые, да и вообще по части работы с библиотеками на С.

Link to comment
Short link
Share on other sites

  • 1 month later...
  • 3 weeks later...

@Mixaill, а ScaleformBW::PyGFxValue и ScaleformBW::PyGFxDisplayObject можно как-то в Си получить?

Хотя без функций они бесполезны...

Просто стало интересно, почему нельзя передать PyGFxDisplayObject из питона обратно во флеш.

Является ли это ограничение специальным, или нет?..

from gui.app_loader import g_appLoader
app = g_appLoader.getApp()
shapeObj = app.flashObject.utils.classFactory.getObject('flash.display.Shape')
shapeCls = app.flashObject.utils.classFactory.getClass('flash.display.Shape')
print shapeObj.__class__ # <type 'ScaleformBW::PyGFxDisplayObject'>
print shapeCls.__class__ # <type 'ScaleformBW::PyGFxValue'>
send_to_flash({'obj':shapeObj, 'cls':shapeCls})
public function send_to_flash(object: Object):void
{
    DebugUtils.LOG_OBJECT(object);
    // ('obj', ('undefined',))
    // ('cls', ('[class Sprite]',))
}
Edited by SkepticalFox
Link to comment
Short link
Share on other sites

  • 8 months later...

@fecell, @SkepticalFox, после компиляции и запуска что-то происходит с DX'ом. экран чернеет. игра зависает. не связано ли это с изменением смещений функций в нынешнем клиенте?

и еще кое-что. мне надо найти смещение функции BigWorld.Model() и попробовать вызвать ее непосредственно в pyd.

Link to comment
Short link
Share on other sites

1 час назад, Pavel3333 сказал:

 

@fecell, @SkepticalFox, после компиляции и запуска что-то происходит с DX'ом. экран чернеет. игра зависает. не связано ли это с изменением смещений функций в нынешнем клиенте?

 

Надо юзать XFW, там всегда актуальные смещения

1 час назад, Pavel3333 сказал:

BigWorld.Model() и попробовать вызвать ее непосредственно в pyd.

PyRun_SimpleString("import BigWorld\n"
                   "model = BigWorld.Model(...)\n");

Хотя что-то не вижу здесь PyRun_SimpleString

Ну можно тогда так(просто код с нета, хз работает ли):

PyObject* myModel, pBigWorld, pArgs, pValue, pModel;
pBigWorld = PyImport_ImportModule("BigWorld");
pModel = PyObject_GetAttrString(pBigWorld, "Model");
pArgs = PyTuple_New(1);
pValue = PyString_FromString("path/to.model");
PyTuple_SetItem(pArgs, 0, pValue);
myModel = PyObject_CallObject(pModel, pArgs);
Py_DECREF(pArgs);
Py_DECREF(pValue);
Py_DECREF(pModel);
Py_DECREF(pBigWorld);

 

Edited by SkepticalFox
  • Upvote 1
Link to comment
Short link
Share on other sites

  • 2 months later...
  • 2 weeks later...

- У Radare плохо с GUI, cutter(ранее назывался iaito) ещё не готов.

- Раньше не было поддержки декомпиляции. Но тут к счастью пришел Avast, который буквально на днях выложил исходный код своего RetDec, так что тут скоро всё будет ок.

- Нет разбора RTTI

 

В целом, Radare насколько мощный, настолько же и неудобный :)

 

Edited by Mixaill
  • Upvote 1
Link to comment
Short link
Share on other sites

  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...