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
 Switch Header <--> Source does not work
 New Topic  Topic Locked
 Printer Friendly
Author Previous Topic Topic Next Topic  

schweikl
New Member

8 Posts

Posted - Jun 22 2005 :  06:08:48 AM  Show Profile
Hello,

in the current version of VA-X-1416 the switch between Header and Source file does not work properly anymore, if the header is in an different directory as the source file (in version 1301, it did work)!
There is always opened a file selection box, where you have to choose the right directory.

Language: C++
IDE: Visual C++ 6.0
OS: WinXP Pro

Regards
schweikl

feline
Whole Tomato Software

United Kingdom
19014 Posts

Posted - Jun 22 2005 :  4:05:45 PM  Show Profile
can you post the file name and location of a cpp and .h file that have this problem? this still works for me in 1416 when the source and header files are in different directories.

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

schweikl
New Member

8 Posts

Posted - Jun 23 2005 :  04:56:35 AM  Show Profile
It seems to be the parsing mechanism. Many Defines and Constants from the base classes are not known anymore either. I tried to reparse everything, but it didn't help.
This morning, I installed 1301 again and everything worked fine. After that I installed 1416 again and it didn't work, just like yesterday. I did not change any settings.

Here is the directory structure of the project:

Test/test.dsp
Test/test.dsw
Test/include/test.hpp
Test/source/test.cpp

There is nothing unusual with this.


Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19014 Posts

Posted - Jun 23 2005 :  6:18:13 PM  Show Profile
it is possible you are experiencing

case=675

where VA does not correctly locate all files in a VC6 workspace. if so then a fix is being worked on.

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

schweikl
New Member

8 Posts

Posted - Jun 24 2005 :  04:23:48 AM  Show Profile
I have never seen something like

case=675

Is it a messagebox, or content of a log file?

I don't get any error messages. It just doesn't work!
Go to Top of Page

Stephen
Tomato Guru

United Kingdom
781 Posts

Posted - Jun 24 2005 :  04:50:05 AM  Show Profile
No, you misunderstood. case=675 is the reference number in WT's bug database. The original bug report describing it is in thread 3759.

Stephen Turner
ClickTracks http://www.clicktracks.com/
Winner: ClickZ's Best Web Analytics Tool 2003 & 2004
Go to Top of Page

hwatson
Junior Member

23 Posts

Posted - Jun 24 2005 :  2:06:10 PM  Show Profile
I am also experiencing this in 1416, and I am using VC++ 7.1. Like schweikl, it was working for me in build 1301. When the header and source files are in different folders, I cannot switch from the header to the source, but I can switch from the source to the header. The relation of the two files are as such:

Test/Test.h
Test/src/Test.cpp


VA_X.dll file version 10.1.1416.0 built 2005.06.17
Licensed to:
VA X: (1-user license) Support ends 2006.05.10
VA.NET 7.1:
VAOpsWin.dll version 1.2.0.4
DevEnv.exe version 7.10.3077.0
msenv.dll version 2.0.1640.0
Font: Courier New 13(Pixels)
Comctl32.dll version 6.0.2900.2180
WindowsNT 5.1 Build 2600 Service Pack 2
Single processor
Go to Top of Page

support
Whole Tomato Software

5566 Posts

Posted - Jun 24 2005 :  2:27:18 PM  Show Profile
We believe the fix for workspaces in VC++ 6.0 with more than on project is in build 1418.

VA X should find more of your source files and hence, know more of your symbol definitions.

http://www.wholetomato.com/downloads/VA_X_Setup1418.exe
Go to Top of Page

schweikl
New Member

8 Posts

Posted - Jun 27 2005 :  04:47:15 AM  Show Profile
Unfortunately, there is no change in terms of the reported bug with version 1418! Neither a switch to the header is possible, nor the defined symbols and base classes are found.
Sorry!
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19014 Posts

Posted - Jun 27 2005 :  3:30:45 PM  Show Profile
something strange is going on here. i am seeing some odd effects with alt_o, but only if i have a very specific directory structure and set of file names. make a small change and the problem goes away.

i am currently trying to reproduce something useful on demand, but all i seem to have done is stumbled on a special case that confuses alt_o.

schweikl in my initial tests VA knows about the class i have defined in the header file, and is correctly suggesting member functions in VC6 with VA 1418.

are you getting these problems on all projects? the file names you posted earlier on, if directly accurate, suggest you are seeing this in very simple projects. is this the case?

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

schweikl
New Member

8 Posts

Posted - Jun 28 2005 :  03:54:07 AM  Show Profile
In a "normal" project (all files in the same directorys) i have no problems. The header <--> source switch is ok and the symbols and classes were found (including mfc, c-runtime libs etc.).

The specific characteristic of my other projects is, that the base class libraries are in a different directories. I will try to explain it:

dir
|----dir
|--------basedir
|------------basedir1
|----------------source
|----------------include
|------------basedir2
|----------------source
|----------------include
|--------basedir
|------------source
|------------include
|--------allprojects
|------------projectdir1
|------------something.dsw
|------------include
|----------------something.hpp
|------------source
|----------------something.cpp
|------------projectdir2
|------------include
|------------source
|----dir
|--------basedir
|--------basedir
|--------basedir


The basedir directories are the baseclass directories. They can be real simple or in a nested structure. The indentation is arbitrative for the directory structure not the hyphens.

The parsing mechanism of VA1301 must be different from VA1408 because VA1301 had no problems to parse this directory structure. I did not specify something different in VA1301 and VA1408.

Furthermore i don't know, how the source <--> header switch is linked up with class and symbols parsing, but it seems that it sticks together, somehow.

I hope this helps you more than confusing you.


Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19014 Posts

Posted - Jun 28 2005 :  3:21:23 PM  Show Profile
if you don't mind i will ignore alt_o for the moment and focus on the class and symbol parsing problem.

if you look in the OFIW dialog are all of the cpp and .h files listed? if you type part of the name of a file containing a class you are not getting help on, is it in this list?

if you turn on:
VA Options -> text editor -> listboxes -> get content from default intellisense

does this make any difference to these unknown classes?

assuming you have a problem class called CUnknownClass, what happens if you type the code:


    CUnknownClass *pUnknown;
    pUnknown.|

depending on your settings VA should turn the '.' into '->', does it do this?

what happens if put "->" after pUnknown and press ctrl_space? what effect does the default intellisense setting have?

is CUnknownClass coloured as a class type? do you get any information on this class type in either the VA wizard bar or in the HCB?

its a lot of questions, but something odd is going on here and i am trying to pin it down.

do you have the option of zipping up and emailing me a copy of a problem project? if so i can try and reproduce the problem here.

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

schweikl
New Member

8 Posts

Posted - Jun 29 2005 :  04:15:00 AM  Show Profile
<if you look in the OFIW dialog are all of the cpp and .h files listed?>

YES (BUT ONLY ALL FILES OF THE PROJECT, NOT THE FILES OF THE BASECLASSES)!

<if you type part of the name of a file containing a class you are not getting help on, is it in this list?>

NO!

<if you turn on:
VA Options -> text editor -> listboxes -> get content from default intellisense
does this make any difference to these unknown classes?>

NO!


<assuming you have a problem class called CUnknownClass, what happens if you type the code:


CUnknownClass *pUnknown;
pUnknown.|


depending on your settings VA should turn the '.' into '->', does it do this?>

YES!

<what happens if put "->" after pUnknown and press ctrl_space? what effect does the default intellisense setting have?>

THE DEFAULT INTELLISENSE AND/OR THE VA INTELLISENSE DO NOTHING!

<is CUnknownClass coloured as a class type?>

NO!

<do you get any information on this class type in either the VA wizard bar or in the HCB?>

NO!

its a lot of questions, but something odd is going on here and i am trying to pin it down.

<do you have the option of zipping up and emailing me a copy of a problem project? if so i can try and reproduce the problem here.>

Unfortunately not! It's code for my company and it's secret!

Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19014 Posts

Posted - Jun 29 2005 :  3:00:31 PM  Show Profile
OK, this makes sense. it looks like VAX does not know anything about the files for the base classes, which seems to explain the problems you are having.

now the problem is why does VAX not know about these files. i know this is frustrating, but unless i can understand, and ideally reproduce the problem it is hard to do much.

are you using more than one project in this work space?
if so are the base class files in a different project to the derived classes?

are the cpp and .h files for the base classes listed in the file view in the IDE?

it sounds like default intellisense does not understand these base classes either. it is almost as if the base class is contained in a library that you are linking against at compile time.

is the workspace setup to use environment variables to locate the base class source code or library files?

i appreciate that the code is secret. it was a long shot that it was not secret, but it was worth asking on the off chance.

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

schweikl
New Member

8 Posts

Posted - Jun 30 2005 :  10:56:24 AM  Show Profile

quote:
are you using more than one project in this work space?
if so are the base class files in a different project to the derived classes?

I use only one project in the workspace.

quote:
are the cpp and .h files for the base classes listed in the file view in the IDE?

The header of the base classes are in the section "external dependencies"

quote:
it sounds like default intellisense does not understand these base classes either. it is almost as if the base class is contained in a library that you are linking against at compile time.

The base classes are in several static libraries. The nessesary headers are included into the project.

quote:
is the workspace setup to use environment variables to locate the base class source code or library files?

The header directories are included in the c++ settings (preprocessor)as relative paths and the libraries are included in the link settings (input), additional the library path is included there as a relative path.



But don't forget, that everything worked fine in 1301. So, there must be a significant change between 1301 and 1408.
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19014 Posts

Posted - Jun 30 2005 :  4:54:40 PM  Show Profile
between 1301 and 1408 support was added for the VS 2005 IDE, which seems to have entailed a lot of work. the more work that is done, the greater the risk of something breaking *sigh*

if we can pin down what is going on here, so that i can reproduce it i will put in a case.

i don't use VC6 so i am not an expert on setting it up, so i want to double check something here.

in VC6, tools menu -> options -> Directories tab

have you added the directory holding the base class header files to the "include files" list?

when i add a directory to this list in VC6, using VAX 1418 and then restart VC6 this directory is listed in:

VAX options -> Projects -> C/C++ Directories -> Stable include files

if you have done this in the IDE, is this directory listed in VA's stable include files list?


quote:
Originally posted by schweikl


The header of the base classes are in the section "external dependencies"


where are you finding this section? i am not finding anything that sounds like this in the file view, or in tools -> options.

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

jpizzi
Tomato Guru

USA
642 Posts

Posted - Jul 01 2005 :  12:30:56 AM  Show Profile
From MSDN for VC6:
quote:
FileView
Home Page (Projects) | Overviews | How Do I... Topics | NMAKE Reference

The FileView pane shows relationships among the projects and files included in the project workspace. The relationships in FileView are logical relationships, not physical relationships, and do not reflect the organization of files on your hard disk.

FileView shows the relationships of the source files and the dependent files used to build all project configurations. The active project in the workspace is indicated in FileView by bold type. The active configuration determines which set of build options is used when you build the active project. The active project is the project that will be built when you use the commands Build or Rebuild All. You can select a different active configuration by using the Set Active Configuration command on the Build menu. You can select a different active project by using the Set Active Project command on the Project menu.

Note The External Dependencies folder lists files that are not part of the project but that are needed to build the project. You can add a file to the project by simply dragging it from the External Dependencies folder to any of the project folders, or to any top-level project node.

Hope that helps.

Joe Pizzi
Go to Top of Page

schweikl
New Member

8 Posts

Posted - Jul 01 2005 :  04:08:50 AM  Show Profile
quote:
in VC6, tools menu -> options -> Directories tab
have you added the directory holding the base class header files to the "include files" list?

when i add a directory to this list in VC6, using VAX 1418 and then restart VC6 this directory is listed in:

VAX options -> Projects -> C/C++ Directories -> Stable include files


I have done this and this works now for the symbols, parameter infos, intellisense and so on. But there are many, many include directories i have to put there. I did not test all of the base class directories.

It does not work so easy for header <--> source switch. I have to add the source directory and the header directory that this works. And this i have to do for every project.
quote:
if you have done this in the IDE, is this directory listed in VA's stable include files list?

Yes.
quote:

The header of the base classes are in the section "external dependencies"
where are you finding this section? i am not finding anything that sounds like this in the file view, or in tools -> options.


Thank you Joe for finding this topic of the msdn!
You can see the "external dependencies" only when you did at least one build of your project.
Go to Top of Page

sean
Whole Tomato Software

USA
2817 Posts

Posted - Jul 01 2005 :  8:08:33 PM  Show Profile
Looks like project specific AdditionalIncludeDirectories in vc6 is hosed.

case=689
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Topic Locked
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000