d3d8 hook ?

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üye
Katılım
21 Haz 2018
Mesajlar
29
Tepki puanı
5
Ödüller
4
Yaş
31
7 HİZMET YILI
Arkadaşlar Herkese Merhaba,
forumda epey bir araştırma yaptım fakat d3d8.hook için detayli birşey bulamadım, genel bir araştırma sonucu şurada takıldım
benden daha bilgili değerli arkadaşlarımız,kardeşlerimiz, hatta yaşca büyük olan abilerimiz mevcut forumumuzda umarım yardımcı olursunuz öncelikle,

kullandıgım derleyici RadStudio XE10 ve bu yüzden bazı özellikleri dll den direk manuel alıyorum d3d8 d3d9 liblerini desteklemiyor RadStudio
misal ;
typedef IDirect3D8*(__stdcall *_qDirect3DCreate8)(
UINT SDKVersion
) ;
_qDirect3DCreate8 qDirect3DCreate8 = (_qDirect3DCreate8)(GetProcAddress(LoadLibraryA("d3d8.dll"),"Direct3DCreate8"));

bunda herhangi bir sorun yok dll den fonksiyonu çekiyorum

fakat aynı işlemi D3DXCreateFontIndirect de yapamadım dll de böyle bir fonksiyon yok ? bu fonksiyon d3d8 de nerede ? veya createfont fonksiyonu hatalımı ?
alinan yöntem şu şekilde ;
typedef HRESULT WINAPI(__stdcall *_qD3DXCreateFontIndirect)(
LPDIRECT3DDEVICE8 pDevice,
CONST LOGFONT* pLogFont,
LPD3DXFONT* ppFont
) ;
_qD3DXCreateFontIndirect qD3DXCreateFontIndirect = (_qD3DXCreateFontIndirect)(GetProcAddress(LoadLibraryA("d3d8.dll"),"D3DXCreateFontIndirect"));
qD3DXCreateFontIndirect incelediğimde 0 dönmekte değer yani ulaşamıyor fonksiyona
hatta d3dx8core.h nin içerisinde bu şu şekilde görünmekte
HRESULT WINAPI
D3DXCreateFontIndirect(
LPDIRECT3DDEVICE8 pDevice,
CONST LOGFONT* pLogFont,
LPD3DXFONT* ppFont);

createfont fonksıyon uda bu şekilde

C++:
void createFont(IDirect3DDevice8* pDevice)
{
        LOGFONT log_font = {
            50, //height
            0,  //width;
            0,  // lfEscapement;
            0,  //lfOrientation;
            FW_BOLD, // lfWeight;
            FALSE, // lfItalic;
            FALSE, // lfUnderline;
            FALSE, // lfStrikeOut;
            DEFAULT_CHARSET, // lfCharSet;
            OUT_DEFAULT_PRECIS, //lfOutPrecision;
            CLIP_DEFAULT_PRECIS, // lfClipPrecision;
            ANTIALIASED_QUALITY,// lfQuality;
            DEFAULT_PITCH,// lfPitchAndFamily;
            "Tahoma"// lfFaceName[LF_FACESIZE];
        };

              // buraya aldanmayın, takip etmek amaçlı yaptım qD3DXCreateFontIndirect 0 donuyor değer burada
        AnsiString ps=(DWORD)qD3DXCreateFontIndirect;
        AnsiString psx =(DWORD)qDirect3DCreate8 ;
        [COLOR=rgb(226, 80, 65)][B]    MessageBox(0,psx.c_str() ,0,0); // buraya değer geliyor[/B]
[B]        MessageBox(0,ps.c_str() ,0,0);      // bu deger 0 dönmekte[/B][/COLOR]


    if (qD3DXCreateFontIndirect(pDevice, &log_font, &pFont) != D3D_OK)
        {
            //console("D3DXCreateFontIndirect error!");
        }
}

veya sizin elinizde, d3d8 hook için bir örnek varsa ilerleyebileceğim gerçekten süper olur girmediğim çin , rus sitesi kalmadı düzgün hiç birşey yok :)
herkese teşekkür eder ve iyi günler dilerim.
 
aka panic.rs
Kurucu
Katılım
18 Haz 2015
Mesajlar
3,379
Çözümler
50
Tepki puanı
13,156
Ödüller
22
Sosyal
10 HİZMET YILI
C++:
struct DIRECT3DFONT
{
  PCHAR    String;
  INT      Count;
  RECT     Rect;
  DWORD    Format;
  D3DCOLOR Colour;
};
VOID D3DX_Font(LPDIRECT3DDEVICE8 Device_Interface, DIRECT3DFONT Font_Structure)
{
  if(Device_Interface != NULL && Font_Interface == NULL)
  {
    HFONT Logical_Font_Characteristics = CreateFont(15, 0, 0, 0, 400, 0, 0, 0, 0, 0, 0, 2, 0, "Arial Black");
    if(Logical_Font_Characteristics != NULL)
    {
      D3DXCreateFont(Device_Interface, Logical_Font_Characteristics, &Font_Interface);
      DeleteObject(Logical_Font_Characteristics);
    }
  }
  if(Font_Interface != NULL)
  {
    Font_Interface->Begin();
    Font_Interface->DrawText(Font_Structure.String, Font_Structure.Count, &Font_Structure.Rect,
                             Font_Structure.Format, Font_Structure.Colour);
    Font_Interface->End();
  }
}


//===================== kullanım ====================================
LPD3DXFONT   Font_Interface = NULL;
DIRECT3DFONT Font_Structure;
Font_Structure.String      = "SOME_TEXT_HERE";
Font_Structure.Count       = -1; 
Font_Structure.Format      = 0x00000100 | 0x00000020; 
Font_Structure.Rect.left   = 75;
Font_Structure.Rect.top    = 15;
Font_Structure.Rect.right  = 175;
Font_Structure.Rect.bottom = 30;
Font_Structure.Colour      = D3DCOLOR_ARGB(255, RED_VALUE, GREEN_VALUE, BLUE_VALUE);
D3DX_Font(Device_Interface, Font_Structure);


kaynak :
Bağlantıları görmek için lütfen Giriş Yap
 
Uzman Üye
Katılım
19 Mar 2016
Mesajlar
257
Tepki puanı
34
Yaş
16
10 HİZMET YILI
C++:
struct DIRECT3DFONT
{
  PCHAR    String;
  INT      Count;
  RECT     Rect;
  DWORD    Format;
  D3DCOLOR Colour;
};
VOID D3DX_Font(LPDIRECT3DDEVICE8 Device_Interface, DIRECT3DFONT Font_Structure)
{
  if(Device_Interface != NULL && Font_Interface == NULL)
  {
    HFONT Logical_Font_Characteristics = CreateFont(15, 0, 0, 0, 400, 0, 0, 0, 0, 0, 0, 2, 0, "Arial Black");
    if(Logical_Font_Characteristics != NULL)
    {
      D3DXCreateFont(Device_Interface, Logical_Font_Characteristics, &Font_Interface);
      DeleteObject(Logical_Font_Characteristics);
    }
  }
  if(Font_Interface != NULL)
  {
    Font_Interface->Begin();
    Font_Interface->DrawText(Font_Structure.String, Font_Structure.Count, &Font_Structure.Rect,
                             Font_Structure.Format, Font_Structure.Colour);
    Font_Interface->End();
  }
}


//===================== kullanım ====================================
LPD3DXFONT   Font_Interface = NULL;
DIRECT3DFONT Font_Structure;
Font_Structure.String      = "SOME_TEXT_HERE";
Font_Structure.Count       = -1;
Font_Structure.Format      = 0x00000100 | 0x00000020;
Font_Structure.Rect.left   = 75;
Font_Structure.Rect.top    = 15;
Font_Structure.Rect.right  = 175;
Font_Structure.Rect.bottom = 30;
Font_Structure.Colour      = D3DCOLOR_ARGB(255, RED_VALUE, GREEN_VALUE, BLUE_VALUE);
D3DX_Font(Device_Interface, Font_Structure);


kaynak :
Bağlantıları görmek için lütfen Giriş Yap

Link Paylaşımı Yasak Sanıyordum
 
Seçkin Üye
Katılım
1 May 2018
Mesajlar
444
Tepki puanı
121
Ödüller
7
8 HİZMET YILI
Haklısın Hayat Böyle Zaten Paran Veya Bir Ünün vb. Birşeyin Varsa Kral Odur O Nederse O Olur :)
Şimdi öyle düşünme site paylaşımı yasak olma sebebi bu site üzerinden para kazanmak için herşeyi yapiyolar tabi paran varsa herşeyi yaparsın ama bu site çok emek verdiler bize düşen saygı duymak
 
aka panic.rs
Kurucu
Katılım
18 Haz 2015
Mesajlar
3,379
Çözümler
50
Tepki puanı
13,156
Ödüller
22
Sosyal
10 HİZMET YILI
Ağlamak ? Şimdi Hile Paylaşssam Başka Siteden Kaynak Olarak Versem Sıkıntımı Çıkcak Anlamadım
Hile paylaşımı yapıp başka siteden link verirsen evet sıkıntı çıkar , ben burada kod paylaşımı yapmışım kod bana ait değil diye.
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst