views:

57

answers:

0

Are Visual Studio 2008's default MIDL Output properties wrong when I add a new Midl file to my project?

I have a basic ATL project, suppose it's named SomeProject. By default Visual studio creates a file called SomeProject.idl. Then I add a new Midl file named SomeMidl.idl (via Add Item and selecting Midl file).

When I open the Properties dialog for the new SomeMidl.idl file, and go to the MIDL > Output section, I see the following properties:

  • Header File: SomeProject_i.h
  • IID File: SomeProject_i.c
  • Proxy File: SomeProject_p.c
  • Type Library: $(IntDir)/SomeProject.tlb

It looks like it just inherited the values from my SomeProject.idl file. Aren't these bad defaults? Shouldn't they be something like:

  • Header File: SomeMidl.h
  • IID File: SomeMidl_i.c
  • Proxy File: SomeMidl_p.c
  • Type Library: $(IntDir)/SomeMidl.tlb

(Note that I removed the trailing _i from the Header file... I thought the normal Header file naming convention left that out).

I am trying to have my IDL definitions split among multiple files, and then imported into a master one. I have way too many interfaces to have them all in a single file.