I am currently trying to automatically load a directory full of compiled shader objects (*.cso) built at compile time by MVS2013. The problem I have is that I seem to be unable to determine if a CSO is a vertex shader or pixel shader by any means other than calling CreateVertexShader and seeing if it fails or not. While this works it is certainly not a desirable solution and it clogs up the output with debug messages and first chance exceptions.
I've been searching around, found out about shader reflection but the documentation on that is far from complete. Does anyone have a nice solution to this? I'd like to avoid particular file naming conventions or directory structures if possible. This seems like a trivial problem and I've probably just overlooked something really simple.