Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
User name:
Password:
Save Password
Forgot your password?

 All Forums
 Visual Assist
 Technical Support
 Excluding standard directories from VA X
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

.oisyn
Tomato Guru

162 Posts

Posted - Dec 12 2006 :  4:40:58 PM  Show Profile  Reply with Quote
I'm really bothered by the MFC symbols cluttering the suggestion listboxes as most MFC functions have the same names as their win32 counterparts. However, I don't want to disable MFC in visual studio altogether by removing the MFC include directory from the list of standard directories, I just want to avoid VA X from parsing these files. Is this possible?

bugfix
Tomato Guru

Germany
324 Posts

Posted - Dec 12 2006 :  5:32:43 PM  Show Profile  Reply with Quote
i removed every '#include <afx*.h|inl>' statement from StdAfxVa.h, helped me a lot:)

http://www.mf-sd.de

Edited by - bugfix on Dec 12 2006 5:33:05 PM
Go to Top of Page

.oisyn
Tomato Guru

162 Posts

Posted - Dec 13 2006 :  05:29:23 AM  Show Profile  Reply with Quote
Thansk for the tip, but should that really help? From the comments in StdAfx.h:

//Stdafxva.h directs Visual Assist to parse a core set of MS headers prior to
//parsing of headers on the Directories tab.

So whether the files are included or not in the StdAfxVa.h file, they will still be parsed when VA X scans the standard directories. Or did you remove it from the standard directories tab as well?
Go to Top of Page

bugfix
Tomato Guru

Germany
324 Posts

Posted - Dec 13 2006 :  10:39:43 AM  Show Profile  Reply with Quote
nope that was all i did, works pretty well for me.
another thing you might consider is changing vax options->projects->c++ dirs to custom and adjust to your needs
in either case you need to rebuild sym db.

http://www.mf-sd.de
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - Dec 13 2006 :  12:24:03 PM  Show Profile  Reply with Quote
I suspect that you will need to edit StdAfxVa.h as well as changing VA's directory list to custom, since the two header files in Misc should be parsed regardless.

Remember that when you install a new build of VA the installer ships the current default versions of these two header files, so it is a good idea to back up your modified files.

zen is the art of being at one with the two'ness
Go to Top of Page

.oisyn
Tomato Guru

162 Posts

Posted - Dec 14 2006 :  05:34:30 AM  Show Profile  Reply with Quote
quote:
changing VA's directory list to custom

Is that a setting? Wow, I thought it was a selection dropdown just like the dropdown next to it, and just like in visual studio's own options dialog. Maybe it should be more clear that VA X's behaviour is different from that of VS.

Edited by - .oisyn on Dec 14 2006 05:39:24 AM
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - Dec 14 2006 :  10:36:57 AM  Show Profile  Reply with Quote
See here for information on VA's directories options:

http://www.wholetomato.com/products/features/directories.asp

The custom list in VA is there for people who need something "odd", and normally we recommend people just setup the IDE correctly. This is a good example of when you will want something "odd"

zen is the art of being at one with the two'ness
Go to Top of Page

bugfix
Tomato Guru

Germany
324 Posts

Posted - Jan 31 2007 :  2:30:42 PM  Show Profile  Reply with Quote
my vax is finally mfc free:) wrote a dll that hooks createfile, checks if call is coming from vax then checks path if its a mfc file using regexp and returns INVALID_HANDLE_VALUE.
beat that:P

http://www.mf-sd.de
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - Jan 31 2007 :  2:56:26 PM  Show Profile  Reply with Quote
I am impressed!

I would have thought it would be "easier" to just sort out the configuration, but I do like this solution, it is very complete and very technically appealing

zen is the art of being at one with the two'ness
Go to Top of Page

bugfix
Tomato Guru

Germany
324 Posts

Posted - Jan 31 2007 :  3:13:08 PM  Show Profile  Reply with Quote
the problem is that ms has put atl and mfc headers in same directory and i didnt want to touch them. another thing i can control now is creation of file history that vax keeps.
source is for sale:)
if youre interested i can mail src to you.

http://www.mf-sd.de
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - Jan 31 2007 :  4:12:19 PM  Show Profile  Reply with Quote
If you are willing to share this I suspect a few forum users would be very interested in using it themselves.

The file history, I was looking into that a few days ago, only one history file per code file should be kept, and they should be deleted when the IDE is closed. Are you still getting a large number of files building up?

If so are you using source control that is integrated with the IDE?

zen is the art of being at one with the two'ness
Go to Top of Page

bugfix
Tomato Guru

Germany
324 Posts

Posted - Jan 31 2007 :  4:28:34 PM  Show Profile  Reply with Quote
mail sent.

honestly i have no idea. i ve deleted the directory long ago and replaced it w/ an empty file:)

http://www.mf-sd.de

Edited by - bugfix on Jan 31 2007 4:29:02 PM
Go to Top of Page

sean
Whole Tomato Software

USA
2817 Posts

Posted - Jan 31 2007 :  5:24:06 PM  Show Profile  Reply with Quote
You previously wrote that you modified the stdafxva.h. Was that no longer sufficient or did you do this to prevent the installer undoing your change?
Go to Top of Page

bugfix
Tomato Guru

Germany
324 Posts

Posted - Jan 31 2007 :  5:46:02 PM  Show Profile  Reply with Quote
from time to time i get some mfc samples from codeproject. now when i switch back to my real (wtl) projects, mfc types always take precedence over wtl or atl types when doing alt-g.
i simply got fed up of vax->options->rebuilding database, close ide, start ide, reload project. another thing i never use are managed types. didnt try to filter those dlls yet but i guess it will work too w/ my method.
all in all i wanted full control over what is put into va db and what not w/o fiddling w/ options and stuff each time:)
i can even easily extend this to get regexps e.g. from registry, this is a pretty universal method. it wasn't even that hard to do if you know how to:)
you tweak the ide and i tweak va:P

static LPCSTR g_filterList[] = 
{
    ".*\\\\\\\\afx.*\\\\.((h)|(inl))$",       // all mfc headers and inlines
    ".*\\\\\\\\mfc\\\\\\\\.*",                  // all other mfc stuff
    0
};
<snip>
    LPCSTR *filter = g_filterList;
    while(*filter)
    {
        CAtlRegExp<CAtlRECharTraitsA> reFilter;
        if(reFilter.Parse(*filter, FALSE) == REPARSE_ERROR_OK)
        {
            CAtlREMatchContext<CAtlRECharTraitsA> mcFilter;
            if(reFilter.Match(lpFileName, &mcFilter))
                return INVALID_HANDLE_VALUE;
        }
        filter++;
    }
<snip>

http://www.mf-sd.de
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - Jan 31 2007 :  5:51:40 PM  Show Profile  Reply with Quote
Now I just need to flag all of your bug reports with "he is running a custom build of VA he created himself", the perfect excuse when we cannot reproduce the problem!

zen is the art of being at one with the two'ness
Go to Top of Page

bugfix
Tomato Guru

Germany
324 Posts

Posted - Feb 01 2007 :  02:04:27 AM  Show Profile  Reply with Quote
heh, lame excuse:P

for those interested: http://www.quickfileupload.com/959607
use at your own risk!

if something goes wrong you can always blame feline though:))))

http://www.mf-sd.de
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - Feb 01 2007 :  11:58:57 AM  Show Profile  Reply with Quote
gee thanks! *throws a cushion at bugfix*

zen is the art of being at one with the two'ness
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000