Archived

This topic is now archived and is closed to further replies.

MtSMox

MS VC++ member list

Recommended Posts

Hi, I''m working with MS VC++ 6 and I have a problem with it (so what else is new . The member list is not working the way it should be. I don''t know if you know what I mean with the member list, but I''ll try to explain. When you declare a var and you type LPDIRECTDR... and use the member list to complete the type you''re looking for, a dropdown box pops up with all the types. That''s one example of the member list. If you have a struct of type x and you type x. (x-dot) a dropdown box pops up with all the members of the struct x. That''s another example of the member list (or at least what I call it . And when you you type in a function and the "(" the parameter info pops up. To keep it simple I''ll call that member list too Now that member list isn''t working correctly for me. The thing is, it works most of the time, but when I use DirectX it doesn''t. Only the old DX classes are visible in the list and the new ones LPDIRECTDRAW7 and others aren''t visible. This is rather unpleasent, because now I can''t get any info on the class, how to call certain functions and list all the members of the class. This makes programming a whole lot more difficult. So I was wondering how to fix this. On what type of data does VC++ build its member list? I thought it was on header files. But I included all the correct header files for DirectX. I''ve also set the DirectX SDK include dir before the standard VC++ inlude dir. Or is it build on library files? First I thought it was just reading the wrong header files, because the member list did show old DX classes (Directdraw, -2, -3) but not the new ones. But this isn''t the case. Do I need some defines for DX, because I looked in ddraw.h and found many #if defined statements. (like _cplusplus which I don''t use) Can anybody help me! This is driving me nuts! Thanks, Mox

Share this post


Link to post
Share on other sites
well I don''t know if I can "help" persay... I don''t have MSVC++ 6 (5 Pro)... and I''m guessing this is new to 6 so... well I doubt it bases the info on headerfiles....(it would take to long to prase)... and I know that theres no way in hell it would use the lib files for that... so my guess is eather its using some sort of private database or its pulling the info out of the help files that come with MSVC++(most likely)... so its eather find out what database it is and fix that or if its comming out of the help files... you need to replace the DX ?(what ever version it comes with) help files with newer help files... but thats only a guess.. maybe someone else might be able to tell you exactly how...

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
the member list is figured out from the code, but directx uses COM interfaces or something which means the member functions aren''t listed in the header files. I suppose you could write a false set of directx include files to use when coding, which contain classes with the interface names, but you''d have to switch them to compile.

Share this post


Link to post
Share on other sites
the member list is figured out from the code, but directx uses COM interfaces or something which means the member functions aren''t listed in the header files. I suppose you could write a false set of directx include files to use when coding, which contain classes with the interface names, but you''d have to switch them to compile.

Share this post


Link to post
Share on other sites
I don''t know how COM works, but I also thought DX used COM interfaces.
The strange thing is there are some declared classes in ddraw.h, but they don''t seem to be included in the member list. (LPDIRECTDRAW7 is a far pointer to struct IDirectDraw7, etc.)
But does the member list just doesn''t work with DX? Is there anybody who has the member list working? Is there some other header file I could include or a library or something else?

Thanks,
Mox

Share this post


Link to post
Share on other sites
I think this what you''re looking for, just scroll down the page, it''s under the question "How do I get the autocomplete feature in VC++ 6.0 to work with my DirectX SDK?".

Hope that was what you wanted .

Share this post


Link to post
Share on other sites
Thank you very much DarkAvenger!!!
That indeed did the trick
Now I can see wich parameters are required for the functions and so on.
But there is still one function that isn''t fixed with this trick, but I thought it would be: DirectDrawCreateEx. This function is also declared in ddraw.h and when I included ddraw.h to my project all the DirectDraw classes were included but not this function. I wouldn''t even work if I made a declaration of it in my main file. Is this because this is a COM function to create an object?
This isn''t really that big a deal, but it just came to my attention. I''m really happy that finally the member list works

Thanks,
Mox

Share this post


Link to post
Share on other sites