Skocz do zawartości


[Delphi, Directx] Injection


Brak odpowiedzi do tego tematu

#1 Matisek

    Nowy na forum

  • Użytkownicy
  • 1 Postów:

Napisano śro, 26 sty 2011 - 21:23

Witam

mam problem z "uwalnianiem" tekstur podczas zakończenia działania programu pod który podpielem swoja ddlke

wyrzuca mi błąd Obrazek

Wiem ,że chodzi o to, że zmienna "Texture1: Direct3D9.IDirect3DTexture9" do której ładuje teksture nie czysci sie przy wyjsciu.
trzeba chyba zrobic hook na procedure uwalniania.

Tylko za Chiny nie wiem jak to zrobic :/

W zalaczniku caly projekt:
SimpleSample.exe - przyklad pustego projektu w directx
D3D9.dll - skompilowana dllka która SimpleSample.exe uruchamia automatycznie

samo SimpleSample.exe pokazuje pusty obraz natomiast gdy w folderze jest D3D9.dll powinien sie rysowac obrazek

jak bedziecie probowali wyjsc z programu to wyskoczy ten blad ktory wczesniej wkleilem


Probowalem tworzyc i wczytywac tekstury w samej procedurze PresentCallback i zadzialalo , nie wywala blad ale jest to totalnie bez sensu bo przy kazdej klatce program na nowo tworzy teksture i laduje do niej plik co powoduje strasznie duzy spadek fps :/

Ma ktos pomysl jak hooknac czyszczenie tekstur przy wylaczaniu programu SimpleSample.exe zeby nie wyskakiwal ten blad? (SimpleSample.exe jest nie do ruszenia taki warunek wink.gif )

Źródło+demo
http://www.speedyshare.com/files/26499232/overlay.zip