GTA Vice City > Программирование

Написание плагина. Настройка проекта

<< < (2/65) > >>

Shagg_E:
Окно Windows

xanser:
А я бы хотел полноценное окно для самой игры. Мне кажется widescreen вайсу не подходит и приходится использовать олдскульный квадратный экран, да и удобно было бы следить за происходящим в системном трее.

DK можно уточнить? Раньше плагин подключался в виде функции в такой конструкции:

--- Код: C++ ---BOOL APIENTRY DllMain(HMODULE hModule, DWORD  ul_reason_for_call, LPVOID lpReserved){        switch (ul_reason_for_call)        {        case DLL_PROCESS_ATTACH:                LoadViceCityPlugin();                break;        case DLL_PROCESS_DETACH:                break;        }        return TRUE;}
В твоем варианте это все уже не нужно и достаточно создать экземпляр класса, что автоматически вызовет конструктор и по пути все пропатчит?

DK:
Shaggy, конкретно по этому не планировал делать туториал. Но можно глянуть, как это сделано в примерах RenderWare. Наверняка там MFC используется.
xanser, да. Так тоже можно. А если надо что-то сделать при детаче - нужно писать это в деструктор.

--- Код: C++ ---class MyPlugin{public:    MyPlugin(){        // on attach    }     ~MyPlugin(){        // on detach    }}; MyPlugin myPlugin; // создали экземпляр класса в глобальном пространстве (глобальный обьект)
--- Цитировать ---Объявление функции в глобальной области видимости вводит глобальную функцию, а объявление переменной – глобальный объект. Глобальный объект существует на протяжении всего времени выполнения программы. Время жизни глобального объекта начинается с момента запуска программы и заканчивается с ее завершением.
--- Конец цитаты ---
Т.е. обьект будет создан при аттаче dll (будет вызван конструктор), а разрушен - при детаче (будет вызван деструктор).

Sektor:
xanser, да потому-что объект будет создан, так сказать компилятором и уничтожен тоже, иначе говоря компилятор позаботиться обо всем сам, в данном случае.

DK:
Вынесено в шапку.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

Перейти к полной версии