On 7 August 2016 at 21:22, Stefan Dösinger stefandoesinger@gmx.at wrote:
D3D10_DRIVER_TYPE is defined in d3d10misc.h, so MIDL complains that it doesn't know about it.
Would introducing d3d10misc.idl help?
On 2016-08-08 11:53, Henri Verbeet wrote:
On 7 August 2016 at 21:22, Stefan Dösinger stefandoesinger@gmx.at wrote:
D3D10_DRIVER_TYPE is defined in d3d10misc.h, so MIDL complains that it doesn't know about it.
Would introducing d3d10misc.idl help?
I guess yes, but it doesn't exist in my Windows SDK copy. There's just a plain d3d10misc.h file that doesn't appear to be generated from an IDL file. Do we care about this?
On 8 August 2016 at 19:36, Stefan Dösinger stefandoesinger@gmail.com wrote:
On 2016-08-08 11:53, Henri Verbeet wrote:
On 7 August 2016 at 21:22, Stefan Dösinger stefandoesinger@gmx.at wrote:
D3D10_DRIVER_TYPE is defined in d3d10misc.h, so MIDL complains that it doesn't know about it.
Would introducing d3d10misc.idl help?
I guess yes, but it doesn't exist in my Windows SDK copy. There's just a plain d3d10misc.h file that doesn't appear to be generated from an IDL file. Do we care about this?
I think the tendency has been to generate COM headers from IDL, even for things that aren't necessarily generated from IDL in the PSDK. E.g. it has been suggested to generate the d3d8 and d3d9 headers from IDL as well at some point.
On 2016-08-08 18:42, Henri Verbeet wrote:
I think the tendency has been to generate COM headers from IDL, even for things that aren't necessarily generated from IDL in the PSDK. E.g. it has been suggested to generate the d3d8 and d3d9 headers from IDL as well at some point.
I ran into two potential problems when migrating this to a .idl file:
The first one is an #include cycle between d3d10.h and d3d10misc.h. I didn't change the cpp_quote("#include "d3d10misc.h"") line in d3d10.idl to an import statement. I don't know what the correct approach here is.
The second concern is that the widl-generated d3d10misc.h directly includes rpc.h, rpcndr.h, windows.h and ole2.h, while the manually written one does not. I believe this is a non-issue because the first thing the old d3d10misc.h did was include d3d10.h, which includes the 4 mentioned files even before the __d3d10_h__ include guard.