わかった!

result = lpD3D->CreateDevice(
    D3DADAPTER_DEFAULT,
    D3DDEVTYPE_HAL,
    hWnd,
    D3DCREATE_HARDWARE_VERTEXPROCESSING,
    &d3dparam,
    &lpD3DDevice
);

 こやつが原因と見た!
 HALとか使ってハードウェアレンダリングをするようにDirectXに指示を出していたのがエラーになる原因だと思われ。
 デバイスの作成に失敗してるにも関わらず、戻り値を検査していないもんだから、そのままレンダリングステージを作ろうとしてアクセス違反であぼーんです。本当にありがとうございました。