Bizarre D3D9 hResult error: "The drive cannot find the sector requested."

Started by
3 comments, last by danromeo 9 years, 11 months ago

Anyone ever get this error:

"hr = 0x0000001b The drive cannot find the sector requested." when calling something as simple as the DrawPrimitive function? I'm getting this error in my engine's worldbuilder being written in C#. The engine is written in C++ and so I used SWIG to create the wrapper interface to bridge betwen native C++ and C#. I kept noticing the call stack errored in nvd3dum.dll (nVidia card for anyone that couldn't tell) -- was getting an unhandled exception to be more specific. But when I went poking around in the various threads, I noticed my engine's thread was sitting at a DrawPrimitive call, so I bp'ed on it and spammed the f5 key a bunch; low and behold I eventually found it to be yielding that error upon checking the result of call. My first instinct was to run scandisk which I did and it gave me a clean bill of health with no errors discovered. Not that I think it matters but I'm running Windows 8.1 just incase anyone was wondering. The weird thing is, all myviewports for the various view windows render at least once just fine but then all of a sudden the app just hits a brick wall on this draw call... Any thoughts on how to dig deeper on this? Thanks!

-- StakFallT

Advertisement

You would post this question here:

http://xboxforums.create.msdn.com/forums/default.aspx?GroupID=7

That forum is supported by Microsoft's experts.

Even though it's not for the XBox and isn't written using XNA?

Yes.

Hi. Did you run scandisk with both checkboxes checked, or with both the ./F and /R switches (chkdsk /f /r)? The /R switch, or the bottom checkbox, repairs bad sectors by copying the data to another location and marking the sector so it won't be accessed anymore. Check your logs after running, if it found any bad sectors run it again and see if it finds anymore.....or if it finds a lot of bad sectors.....replace the drive. The /R switch may run for a long time depending on how many bad sectors it finds....maybe hours. BACK UP YOUR HARD DRIVE BEFORE SCANNING WITH /R.....if your boot sector is bad the /R switch can cook your operating system and cause much sorrow.

Also scandisk isn't 100% reliable, for example it won't find problems with the drive motor, which would still cause errors if it's failing. If you can't get past your error message you should clone the drive and replace it. IMO you should replace the drive now.....I'm not a DX expert but I don't think hardware errors are a result of bad code because code never directly accesses hardware, so you can't write any code that would access the hard drive in the wrong way, etc...all of this is negotiated by DX and the bios. Also if you suddenly have bad sectors then more will probably follow, and keep in mind that you're only seeing bad sectors that your program is trying to access.....there may be many more. .

If you're dealing with a drive failure you'll never find the source of the problem until you repair or replace the drive. If the drive crashes before you replace it recovering will be a lot more difficult, or impossible, or very expensive, so make sure you're backed up.

This topic is closed to new replies.

Advertisement