Я вам говорил же, да, изначально так и было, я вставил кнопку на окно, контекст которого принадлежит opengl оно же и являлось главным, то есть занято было все окно, и когда я кнопку спозиционировал в том месте окна, куда не рисуется сцена, то это не сработало, тогда я попробовал кнопку максимизировать, мало ли, вдруг неправильные координаты указал, то при нажатии она резко появлялась и тут же ее затирал opengl.
Потом пришел к выводу, что нужно создать иерархию, которую указали вы, но произошла проблема, что до главное окна не доходили сообщения.
ссылка на коммит где начинается моя беда - https://github.com/fromasmtodisasm/DevilEngine/com... DevilApp/OpenGLWindow.cpp - в этом файле создание окна
Спасибо конечно, но проблема не в иерархии, я как раз в описании указал, то что вы мне и предложили, а в ее реализации средствами winapi. Если у вы знаете, какие нужно выполнить требования, чтобы это все заработало, и не было описанных выше проблем, то я был бы вам благодарен. Я могу конечно прикрепить код, связанный с окном, но в ряд ли кто то будет выяснять причины неполадки.
Станислав Макаров, здесь речь даже не о кнопке, а об органах управления в целом(controls - так их зовут в винде). Нужно в приложение добавить например ползунки для изменения некоторых значений в программе. В контексте opengl все органы управления затираются, для этого нужно окно для вывода opengl и другое, на котором будут те самые контролы. Но возникает проблема, о которой я писал в пояснении к вопросу.
SmInc, слишком удобный IDA дизассемблер, можно растеряться, первые впечатления приятные, но интерфейс нужно изучать, да еще скорее всего python понадобиться, чтоб плагин накидать, если до этого дойдет вообще)
SmInc, эх, ну к сожалению не то что привычка использовать ollydbg, а так сложилось, что я только им и пользовался, поэтому переход на ida - это будет некоторая боль, по крайней мере на начальном этапе. Так же при беглом просмотре первых ссылок, вроде как в ida подобного нет.
awesomer, что значит гит хуки - это не свойство гит? верно, это не свойства, а методы самого гит, для возможности запуска нечто для собственных нужд, отличных от контроля версий.
вот этим я и хотел воспользоваться для автоматической сборки проекта, но здесь начинается затык, именно здесь, потому что я не представляю, как нужно организовать репозиторий(где то встречал метод, использования голого репозитория и отдельного каталога в который вываливаются изменения из голого при его изменении), хотел услышать тех, кто использует С в своем проекте и представляет, как при коммите с моей машины на сервер осуществить автоматическую сборку проекта или хотя бы наоборот, встроить вытягивание свежих изменений из репозитория при запуске make.
Евгений Шатунов, если рассматривать гит, как систему контроля версиями, то да, вряд ли такая система должна уметь что то там собирать, но у гита есть возможность выполнять сценарии по некоторым событиям, которыми удобно воспользоваться для автоматизации некоторых действий, например как оповещения команды, что некто сделал изменения, в моем случае нужно автоматически распаковать пришедшие изменения в каталог, в котором происходит сборка и начать собственно ее. Хочу заметить, что проект закрытый и ни на каком гит хабе он хоститься не будет, так что как минимум Travis уже отвалился. Мне нужно что то простенькое, используя события гита.
Я читал о hooks, если вы понимаете о чем я, я представлял себе, что вовремя push на сервер, срабатывает hook и начинается компиляция. С другой стороны можно использовать голый репозиторий, в качестве хранилища и каталог, в который после push будет заливаться свежие файлы. а потом запускаться make. Так же можно попробовать в make файле организовать подкачку свежих изменений. Но дело в том, что это некоторые представления, а как это правильно на деле организовать, не совсем понятно и какой из вариантов выбрать.
Станислав Макаров, вы вырвали из контекста фразу, на худой случай читайте это как использование инструкции "Git на сервере", хотя даже без кавычек и так вроде понятно, так то что вы делаете с инструкцией - используете. А вообще есть такая глава(Гит на сервере). Может официальная страница это сильно сказано, но по крайней мере, на большинство запросов гугл в топ выводит этот учебник по гиту, но не в этом суть. А в том, что там не освещено то, что я задал в вопросе.
Спасибо конечно за развернутый ответ, нашел я давно этот sdk, дизассемблировал необходимые либы, к сожалению один в один листинг из либ и из под отладчика друг на друга не накладываются, версии слишком разные, игра 2000 года, а sdk 2003 вроде. Но тем не меннее удалось уже около 300 функций сопоставить и отметить в ollydbg. Я так понимаю, если захочется вносить в дизасемблированный листинг игры изменения и попробовать скомпилировать, то придется не сладко? Читал, что это якобы очень очень трудно все собрать, ну я так понимаю, если написать например плагин для ollydbg, который бы смотрел на ссылки в секцию данных, и если например нужно увеличить секцию кода, то все эти ссылки мы просто увеличиваем на константу, на котороую мы сместим секцию данных, разве так не прокатит? Сам код ведь имеет переходы по относительным адресам.
tukal-off: не вдавался в подробности, но этим по идее должен заниматься драйвер видео карты, наверное не зря у nvidia он весит чуть ли не 100 мегабайт, так что что б ручками там навести порядок, я думаю не вариант, как минимум из за не хватки знаний и времени, а во вторых, видео карты ее конвеер должен заботиться, что бы твои вершины параллельно считались.
Владимир Мартьянов: ну IDA то если знает - хорошо, а мне нужно хоть как то соориентироваться, что бы не запутаться, я вообще нужно ли в принципе COM понимать, что бы разобраться с игрой на DirectDraw?
Ну а что насчет DirectX? Он ведь завязан на COM или нет? У меня задача попытаться отреверсить старую игру, но я в принципе в этом деле новичок, как реверсе, так и с DirectX знаком отдаленно, поэтому мне нужно разобраться как можно более тщательно, как же это работает, и вообще, я не думаю, что разобрав такой мощной технологии идеи(вроде как) от этого мне станет хуже. В дополнение к этому мне интересно разобраться что это за фрукт такой. И что же вы имеете виду под актуальными технологиями?