Jeśli otrzymasz jakiś kod błędu, zrób zrzut ekranu za pomocą DirectX, nasze aktualne instrukcje powinny pomóc.
Zatwierdzono: Fortect
Nie produkt, którego szukasz? Odpowiedz na inne pytania, zwane zrzutem pełnoekranowym DirectX lub zadaj sobie pytanie.
Dzięki Objazdom możesz instrumentować połączenia podobne do połączeń telefonicznych do Direct3DCreate9
, IDirect3D9 :: CreateDevice
i IDirect3D9 :: Present noszenie którego aktywujesz Poniżej przedstawiono zdarzenia wymagane do skonfigurowania i przechwycenia migawki.
Zatwierdzono: Fortect
Fortect to najpopularniejsze i najskuteczniejsze narzędzie do naprawy komputerów na świecie. Miliony ludzi ufają, że ich systemy działają szybko, płynnie i bez błędów. Dzięki prostemu interfejsowi użytkownika i potężnemu silnikowi skanowania, Fortect szybko znajduje i naprawia szeroki zakres problemów z systemem Windows - od niestabilności systemu i problemów z bezpieczeństwem po zarządzanie pamięcią i wąskie gardła wydajności.
odpowiedział 28 grudnia 2009 o 0:03
65 700 złota odznaka z 1818 r. Srebrna odznaka 135 135 GBP 162162 brązowa odznaka
Jest to wyraźnie C# przykład łączenia części związanych z IDirect3DDevice9 za pomocą wstrzykiwania DLL i łączenia funkcji wykorzystujących EasyHook (na przykład Microsoft Detours). Czy ma to związek z funkcjonowaniem FRAPS?
Jest to wykonalne, aby nagrywać ekran w trybie okna, a nie na pełnym ekranie, i korzysta z tylnej bariery, która powinna być znacznie szybsza niż próba uzyskania danych z przedniego bufora.
Przydatna biblioteka pomocnicza C++ używana tylko do definiowania metod celu IDirect3DDevice9 do dodania w czasie wykonywania.
Aktualizacja: W przypadku DirectX 10/11 zobacz zrzuty ekranu i nakładki dla D3D niektóre, 10 i 11
odpowiedział 15 maja '10 tutaj o 2:02
1252
To jest fragment kodu, którego użyłem jako test, oczywiście wykonuje.
Szerokość i wysokość są zdecydowanie rozmiarem EKRANU w trybie okienkowym, naprawdę rozmiarem okien. Ja też, bo są ustawione na 1280 i 1440, a nie na rozmiar okna, do którego doradzam.
Będziesz musiał zamienić mEngine-> getDevice() z wieloma opcjami, aby otrzymać również swój nowy IDirect3DDevice9. Właśnie wkleiłem ten pin do dowolnej aplikacji d3d, której potrzebowałem, gdy chcesz łatwiej testować. Mogę jednak zapewnić, że przechwyci dane wyjściowe konkretnej aplikacji, jak również każdej innej działającej w tym samym czasie aplikacji d3d.
Och, przypuśćmy, że cierpię z powodu tego konkretnego D3D9, jak nie powiedziałeś, nie jestem pewien co do d3d10 lub 11
IDirect3DSurface9 * powierzchnia;mEngine-> getDevice () -> CreateOffscreenPlainSurface (szerokość, wysokość, D3DFMT_A8R8G8B8, D3DPOOL_SCRATCH i powierzchnia, NULL);mEngine-> getDevice () -> GetFrontBufferData (0, powierzchnia);D3DXSaveSurfaceToFile ("c: tmp output.jpg", D3DXIFF_JPG, powierzchnia, NULL, NULL);Powierzchnia-> Udostępnij ();
Odpowiedział 26 '09 o 14:54
28.3k
Oczywiście w tej chwili istnieje oprogramowanie typu open source, takie jak fraps: taksi, kiedy wydaje się przestarzałe
odpowiedział 26 grudnia 2008 o 11:20 09 o 13:23
251 11 srebrnych odznak kolekcjonerskich 55 brązowych odznak
Oto dyskusja dotycząca działania Fraps. To nie jest takie proste.
Każda sztuczka, która przeszkadza w odczytywaniu bufora pomiarów innego urządzenia, directx, może, jak sądzę, czasami działać najlepiej z niezainicjowaną pamięcią na szczęście.
29 grudnia 2009 odpowiedziało tylko o 7:05
4779
Po odpowiedzi J99 skończyłem pracę nad kodem rabatowym dla trybów okienkowych i pełnoekranowych. Jest to dalej zrobione dla D3D9.
IDirect3DSurface9 6 . powierzchnia; TRYB WYŚWIETLACZA D3D; pDev-> GetDisplayMode (0, & tryb); // pDev to mój mąż i moje * IDirect3DDevice // możemy uchwycić szeroki ekran, // Stąd wzrost rozmiaru i wysokości, aby nie pasowały do bieżącego trybu zaznaczania pDev-> CreateOffscreenPlainSurface (tryb.Szerokość, tryb.D3DFMT_A8R8G8B8, wysokość, D3DPOOL_SCRATCH i wyjdź, NULL); if (pDev-> GetFrontBufferData (0, powierzchnia) == D3D_OK) w przypadku tego (bWindowed) // globalna zmienna konfiguracyjna // Wyświetlaj typowo obszar klienta we współrzędnych biura // Może wymagać przekształcenia, aby umożliwić wiele ekranów ODKR r; GetClientRect (hWnd, & r); // hWnd jest również odpowiedzialny za nasze okno PUNKT p = 0, 0; ClientToScreen (hWnd i p); SetRect (& r, p.x, p.y, p.x + r. Prawo, p.y + r. Poniżej); D3DXSaveSurfaceToFile (nazwa_pliku sz, D3DXIFF_JPG, powierzchnia, NULL i r); inne D3DXSaveSurfaceToFile (nazwa_pliku sz, D3DXIFF_JPG, podłoga, NULL, NULL); Powierzchnia-> Udostępnij ();
Wygląd, który zawiera format i ustawienia obszaru CreateOffscreenPlainSurface, powinien być dokładnie taki sam.
odpowiedział 2 października 2012 o godzinie 11:33
495
Przyspiesz teraz wydajność swojego komputera dzięki temu prostemu pobieraniu.
Kliknij aplikację, z której chcesz zrobić zrzut ekranu.Naciśnij duże t + Drukuj ekran.Otwórz MS-Paint.Naciśnij Ctrl + V.Spowoduje to prawdopodobnie wstawienie zrzutu ekranu okna programu Paint.
Naciśnij mój przycisk, aby szybko zwolnić przyciski boczne i numeryczne.
Ta ścieżka jest często bardzo przydatna, gdy robisz wiele zrzutów ekranu. Trzymając wciśnięty nowy przycisk techniki Windows, naciśnij klawisz PrtSc w kierunku klawiatury. Zrzut ekranu na pełnym ekranie będzie nieco bardziej przycięty w folderze Obrazy> Zrzuty ekranu. Jednym ze sposobów uzyskania dostępu do tego folderu jest szybkie zapoznanie się z folderami: Zrzut ekranu.