Вызвано исключение: нарушение доступа для чтения. d3dDevice было nullptr. В чём заключается проблема?

#include <iostream>
#include <d3dx9.h>
#include <d3d9.h>
#pragma comment(lib, "d3d9")
#pragma comment (lib, "d3dx9")
using namespace std;

int main()
{
    DWORD dip9 = 0;
    DWORD endScene9 = 0;
    LPDIRECT3DDEVICE9 d3dDevice;
    DWORD* vtablePtr;
    D3DPRESENT_PARAMETERS d3dpp;
    RECT rc;
    HWND window = FindWindow(NULL, "Counter-Strike: Global Offensive");
    HMODULE hD3D9 = GetModuleHandleA("d3d9.dll");
    if (hD3D9 != 0) {
        LPDIRECT3D9 d3d = Direct3DCreate9(D3D_SDK_VERSION);
        d3d->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, window, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dpp, &d3dDevice);
        if(d3dDevice) {
            
            cout << "Device has found!\n Pointer [d3d]: " << d3d << " " << " [m_device]: " << d3dDevice;
            cout << endl;
        }
        else {
            cout << "Device not found!";
        }
        d3dpp.Windowed = 1;
        d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
        vtablePtr = *(DWORD**)d3dDevice;
        
    }
}

Ответы (0 шт):