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
 Custom system includes not working with VS2017
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

shippy
Senior Member

USA
30 Posts

Posted - Apr 12 2018 :  7:39:46 PM  Show Profile  Reply with Quote
I recently installed VS 2017 Enterprise and loaded up my old VS 2015 project. I went into the VA settings and set a custom Platform include path for system headers in the C/C++ Directories section. I told it to rebuild the database and closed/re-opened VS. I'm noticing that it doesn't appear to be picking up all headers, from what I can tell. If I glance at the status bar while VA is doing stuff, it looks to me like it's still grabbing from the old custom path I had before I changed it.

Here's the version info:
VA_X.dll file version 10.9.2258.5 built 2018.03.06
DevEnv.exe version 15.6.27428.2037 Enterprise
msenv.dll version 15.0.27428.2027
Comctl32.dll version 6.10.17643.1043

Platform: Custom
Stable Includes:
E:\os\public\amd64chk.nocil;

Other Includes:

Stable Source Directories:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.13.26128\atlmfc\src\mfc;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.13.26128\atlmfc\src\mfcm;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.13.26128\atlmfc\src\atl;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.13.26128\crt\src;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\VS\src;
C:\Program Files (x86)\Windows Kits\10\Source\10.0.10240.0\ucrt;

Previously, my custom include was E:\os\public\amd64chk and it still seems to be going there rather than the .nocil directory.

Thanks.

-Shippy

Edited by - shippy on Apr 12 2018 7:51:42 PM

feline
Whole Tomato Software

United Kingdom
18983 Posts

Posted - Apr 13 2018 :  05:52:40 AM  Show Profile  Reply with Quote
Can you please place the caret into a #include line that should point to one of these stable include directories, and see if VA is showing a full path for the file in its Context and Definition fields, which are normally at the top of the editor?

If you press Alt-G, are you taken to the file?

In both cases, what is the path that VA is using? This will tell us which directories VA is looking in, and hopefully shed some light on this.

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

shippy
Senior Member

USA
30 Posts

Posted - Apr 13 2018 :  12:56:31 PM  Show Profile  Reply with Quote
When I put the caret on the #include line, it's going to E:\os\public\amd64chk\...\blah.h which is what I had previously set instead of E:\os\public\amd64chk.nocil\...\blah.h. Alt+G does take me to the file, but in the old location and not the new one.

-Shippy
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18983 Posts

Posted - Apr 14 2018 :  06:10:17 AM  Show Profile  Reply with Quote
A silly question, but does this code compile? Assuming it does, when it compiles, is the compiler using these library header files on E drive?

I am assuming both are true, in which case there needs to be a setting inside the solution its self telling the compiler where on E drive to look for these library header files. I suspect what is happening is that VA is aware of the new E drive stable include directories, but VA is also aware of the additional include directories the solution is listing, so is also searching here. So, is the solution listing the old or the new E drive library path?

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

shippy
Senior Member

USA
30 Posts

Posted - Apr 16 2018 :  2:05:19 PM  Show Profile  Reply with Quote
Yes, the code compiles. :) The compiler is using the headers in the .nocil directory. I do not compile inside Visual Studio, however. I only use it as a code editor. I use a tool that generates the solution and projects for me since the solutions are quite large. It does look like there was a config in there causing it to point to the old location. I changed that, regenerated the solution and rebuilt the VA symbols and things appear to be pointing to the right place now. I was under the impression that the custom stable includes purpose was to completely override anything in the solution settings. Is this not the case? Anyway, I appear to have a workaround now so thank you!

-Shippy
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18983 Posts

Posted - Apr 16 2018 :  2:53:37 PM  Show Profile  Reply with Quote
By default VA parses standard windows include directories, to pick up the standard header files that most of our users are going to use, and want VA to be aware of. The custom include directory setting lets you remove all of these from the scan list, and point VA at a different set of standard library headers instead.

We still check the include directories set in the solution its self, since you normally need to scan these to make sense of the solution, and resolve the #include statements that are being used.

I hope this makes sense, and thank you for the update, I am glad this is now fixed and working correctly for you.

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