# DirectX Version Hook

DirectX Version Hook: Sets the basic intervention strategy. DxWnd should use a different hooking technique depending on the game technology. Automatic mode tries to find the correct technique by itself, but it doesn't always succeed. OpenGL handling requires a dedicated setting (see Libs).

Available options:

- Automatic
- DirectX1~6
- DirectX7
- DirectX8
- DirectX9
- DirectX10
- DirectX11
- None

In "Automatic" (the default mode), DxWnd automatically detects DirectX calls and hooks them to track and modify the calls and their corresponding COM methods. In some cases, though, DxWnd is unable to properly detect these calls and the windowing effect can be recovered by explicitly telling DxWnd what version of DirectX it should hook. Each option corresponds to a different DLL file that is involved in the DirectX implementation. This is directed by the following options:

- DirectX1~6 (for ddraw.dll)
- DirecX7 (for ddrawex.dll)
- DirectX8 (for d3d8.dll)
- DirectX9 (for d3d9.dll)
- DirectX10 (for ...)
- DirectX11 (for ...)

The last two options are generally useless, since the current Direct3D10/11 implementation seems to be based on Direct3D9, so hooking DirectX9 works for them as well (however, the implementation may change in the future).

It is also possible to specify the option "none" to avoid hooking DirectX at all. This could be helpful whenever you are interested in DxWnd features that are not related to the graphics (e.g. time stretching, compatibility options) and you want to leave the graphics alone.