Merhaba Arkadaşlar,
Her Hafta UnrealIRCD Modül Api Yapısını Kullanarak Elimden Geldigince Sıfırdan Modul Yapmasini ve Derlemesini Göstermek İstiyorum...
Konu: Modul Oluşturma
Ders: 1. Seviye
Gerekli Programlar: Dev-C++ veya Notepad++
Ben Şahsen Dev-C++ Kullaniyorum
Gerekli Kütüphaneler
Modülümüzü yazmadan önce yukarda belirtilen kütüphaneleri en üst satira eklememiz gerekmektedir ve daha sonra modülün olmazsa olmazlari
Modül Başlıgı (Module Header)
Örnek Bir Başlık Yapalım..
Yukarda görüldügü gibi modülümüzün ismini verip ve gerekli açıklayamı yaptık daha sonra ikinci kısma geçiyoruz
Modül Başlangıcı (MOD_INIT)
Ve Diger Gerekli Kısım Olan Sunucu %100 hazır olduğunda ilk çalıştırılacak Apimiz
Modül Yükü (MOD_LOAD)
Modül boşken çağrılacak Apimiz
Modül Boşaltma (MOD_UNLOAD)
Ve İlk Modülümüzü Oluşturduk
Unreal3x src/modules/ klasoru içine atip
Unreal3x ana dizininde make custommodule MODULEFILE=m_ilkmodulum
ve unrealircd.conf içine loadmodule "src/modules/m_ilkmodulum.so";
ekliyip ./unreal rehash veya sunucuda /rehash komutunu kullandiginizda modulun hatasiz bir sekilde entregre oldugunu göreceksiniz /module komutunu kullanarak calistigini göreceksiniz
İlk Dersimizde TASLAK Modul Oluşturduk İkinci Dersimizde İşlemlere Geçecez Takip Etmeye Devam Edin
Her Hafta UnrealIRCD Modül Api Yapısını Kullanarak Elimden Geldigince Sıfırdan Modul Yapmasini ve Derlemesini Göstermek İstiyorum...
Konu: Modul Oluşturma
Ders: 1. Seviye
Gerekli Programlar: Dev-C++ veya Notepad++
Ben Şahsen Dev-C++ Kullaniyorum
Gerekli Kütüphaneler
Kod:
#include "config.h"
#include "struct.h"
#include "common.h"
#include "sys.h"
#include "numeric.h"
#include "msg.h"
#include "channel.h"
#include <time.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef _WIN32
#include <io.h>
#endif
#include <fcntl.h>
#include "h.h"
#include "proto.h"
#ifdef STRIPBADWORDS
#include "badwords.h"
#endif
#ifdef _WIN32
#include "version.h"
#endif
Modülümüzü yazmadan önce yukarda belirtilen kütüphaneleri en üst satira eklememiz gerekmektedir ve daha sonra modülün olmazsa olmazlari
Modül Başlıgı (Module Header)
Örnek Bir Başlık Yapalım..
Kod:
ModuleHeader MOD_HEADER(m_ilkmodulum)
= {
"m_ilkmodulum", /* [COLOR="red"]Modülün adı[/COLOR] */
"v1", /* [COLOR="red"]Versiyon[/COLOR] */
"Bu Benim İlk Modül Denemem", /* [COLOR="red"]Modülün kısa açıklaması[/COLOR] */
"3.2-b8-1",
NULL
};
Yukarda görüldügü gibi modülümüzün ismini verip ve gerekli açıklayamı yaptık daha sonra ikinci kısma geçiyoruz
Modül Başlangıcı (MOD_INIT)
Kod:
DLLFUNC int MOD_INIT(m_ilkmodulum)(ModuleInfo *modinfo)
{
MARK_AS_OFFICIAL_MODULE(modinfo); //[COLOR="red"] Modülü UnrealIRCD işle[/COLOR]
return MOD_SUCCESS; // [COLOR="red"]Modül Yüklenmesi Başarılı Oldumu Çalıştır[/COLOR]
}
Ve Diger Gerekli Kısım Olan Sunucu %100 hazır olduğunda ilk çalıştırılacak Apimiz
Modül Yükü (MOD_LOAD)
Kod:
DLLFUNC int MOD_LOAD(m_ilkmodulum)(int module_load)
{
return MOD_SUCCESS;
}
Modül boşken çağrılacak Apimiz
Modül Boşaltma (MOD_UNLOAD)
Kod:
DLLFUNC int MOD_UNLOAD(m_ilkmodulum)(int module_unload)
{
return MOD_SUCCESS;
}
Ve İlk Modülümüzü Oluşturduk
Unreal3x src/modules/ klasoru içine atip
Unreal3x ana dizininde make custommodule MODULEFILE=m_ilkmodulum
ve unrealircd.conf içine loadmodule "src/modules/m_ilkmodulum.so";
ekliyip ./unreal rehash veya sunucuda /rehash komutunu kullandiginizda modulun hatasiz bir sekilde entregre oldugunu göreceksiniz /module komutunu kullanarak calistigini göreceksiniz
İlk Dersimizde TASLAK Modul Oluşturduk İkinci Dersimizde İşlemlere Geçecez Takip Etmeye Devam Edin
