Сейчас мы сделаем, самый простой плагин, который лишь выведет системное сообщение в виде привет, после запуска игры. Из кода на данный момент мы будем использовать switch(переключатель) case DLL_PROCESS_ATTACH: , т.е если ul_reason_for_call равняться DLL_PROCESS_ATTACH, то ниже будет исполнен наш код. Это подмена #define просто сделано для удобства с названием, а так это обычное значение, которое равно к 1 и говорит, что библиотека присоединилась к процессу (т.е загружена). Напишем следующий код:
// dllmain.cpp : Defines the entry point for the DLL application.
#include "stdafx.h"
BOOL APIENTRY DllMain( HMODULE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
MessageBoxA(0, "Привет", "Сообщение", 0);
break;
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
т.е после DLL_PROCESS_ATTACH: мы можем писать все что нам нужно и естественно, после нашего кода, надо сделать break; Что-бы прервать switch (переключатель). Когда игра загрузит наш плагин выскочит маленькое окошко, что мы написали, как только мы нажмем на него “ОК” мы тогда продолжим дальше игру. Это уведите при сворачивании игры. Как только вы написали код, нажмите CTRL+SHIFT+B – это вы начнете компилировать свой проект в dll. После успешной компиляции проекта, появится папка Release где находиться ваш исходный код и в этой папке вы найдете gtavc_plugin.dll, вот его скопируете в корень игры, положите возле gta-vc.exe и переименуете на gtavc_plugin.asi вот собственно и все, самый простой урок.
Скачать исходник ASI [7,27 Kb] (cкачиваний: 157)Имейте введу, что еще плагины вы можете размешать в папке mss, с другими расширениями как *.m3d, *.flt они также будут загружаться при запуски игры.