-
January 29th, 2014, 03:41 PM
#1
Access Violation to ntdll.dll
Code:
if(FAILED(hr=D3DXLoadSkinMeshFromXof( (LPD3DXFILEDATA) pDataObj, TempLoadFlags,
pDevice, &AdjacencyBuffer,
&MaterialBuffer, NULL,
&NumMaterials, &pSkin,
&pLoadMesh)))
In here, pDataObj and AdjacencyBuffer have an valid address.
MaterialBuffer, pSkin and pLoadMesh contains 0x00000000
and NumMaterials is on the stack, having initialized to 0
Any ideas why I have access violation to ntdll.dll?
Thanks
Jack
-
January 29th, 2014, 05:30 PM
#2
Re: Access Violation to ntdll.dll
Originally Posted by lucky6969b
Code:
if(FAILED(hr=D3DXLoadSkinMeshFromXof( (LPD3DXFILEDATA) pDataObj, TempLoadFlags,
pDevice, &AdjacencyBuffer,
&MaterialBuffer, NULL,
&NumMaterials, &pSkin,
&pLoadMesh)))
In here, pDataObj and AdjacencyBuffer have an valid address.
Why did you need to cast the first argument?
How do you know that the address of pDataObj is valid? And in any case, the documentation for that function implies that what is needed is the address of an existing item and you then pass this address, not just a pointer.
Why is argument #6 a NULL? Looking at the documentation for the function here:
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
I don't see it documented that NULL values are accepted.
Regards,
Paul McKenzie
-
January 29th, 2014, 06:17 PM
#3
Re: Access Violation to ntdll.dll
I think the interface has changed, it accepted a IDirectXFileData * as a parameter before.
But it is now changed to LPD3DXFileData, not sure the later inherits from the former.
D3DX is an extension to plain vanilla DirectX
Thanks
Jack
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|