When VSdocman is set properly, you can compile a new documentation for a whole solution.

The most likely you will Compile Solution to Single Documentation. This will generate single documentation where all members are linked and namespaces are merged. In this case you don't handle this documentation in any special way.

If you however need to keep help separated for each project you need to handle multiple documents.

Pressing Compile Projects in Solution Separately button in VSdocman dialog causes that every VB, C# or ASP project in the solution is compiled with its own settings. It acts exactly as thought you compiled them separately step-by-step.

In addition to project documentation, VSdocman generates one master documentation in every project's output folder. Master documentation includes all project documentation in the group and its name is Solution+. It doesn't physically contain all project's documentation. It only references them depending on output format. So you can freely make changes to sub-documents without the need of change master document. This is extremely useful in distributed team work. All sub documents are exactly the same as if generated for single project.

It is necessary that all projects are set to produce documentation of the same format (CHM, HTML or other).

So you have several projects and each of them has its master document. You only need one of them because they are all the same, others can be deleted.

What to do next depends on output format. Let's assume we have solution with two projects P1 and P2.

Help 2

There are two possibilities how to view and deploy a set of Help 2 documents. In each case you will see all projects in table of contents, unified index and unified full-text search.

1.After you compile your solution in Help 2 format, each of the project documentation is registered and after restart of Visual Studio you can see them all. In each project's output folder there are all necessary files needed to deploy, see Deploying Help 2 Documentation. So to deploy every project's documentation just call register*.bat file for each of them during installation.

2.Previous method has one drawback. There is one help filter and one table of contents created for each project. This is not what you mostly need. Usually you only want one filter and one contents for your component. Therefore VSdocman creates also files to register one solution in FINAL_DOC folder. Their names all start with "Solution" string.

Viewing

To view only one solution after you compile Help 2 documentation you must first manually unregister each project that was automatically registered during compilation. Use unregister*Bat file generated in each project's output folder.

Then copy all Hx? files from all FINAL_DOC folders to one folder. Some of them are the same for all projects so you can overwrite them during copying. Copy also all Solution*.* ,register_solution.bat and unregister_solution.bat files to that folder. Run register_solution.bat and restart Visual Studio. Then you should see only one filter and one table of contents for whole solution.

Deploying

Copy all Hx? files from all FINAL_DOC folders to one folder on target machine during installation. Some of them are the same for all projects so you can overwrite them during copying. Copy also all Solution*.* ,register_solution.bat and unregister_solution.bat files to that folder. Run register_solution.bat to register documentation during installation. Run unregister_solution.bat to unregister documentation during uninstallation. See Deploying Help 2 Documentation for more information.

HTML Help 1.x (CHM)

Master document contains all projects in its table of contents, unified index and unified full-text search. All you need to do is copy all project documentation to the same folder. Copy one master document from any of the projects to that folder. So you have P1.chm, P2.chm and Solution+.chm. To see master documentation open Solution+.chm.

HTML

Master document contains links to all projects. Every project documentation must be placed in folder named exactly as the project. So create the proper folders in some folder e.g. doc. Then copy all project documentation to these folders. Copy one master document from any of the projects to doc folder. So you have P1 folder with documentation for P1, P2 folder with documentation for P1 and Solution+.html. To see master documentation open Solution+.html.

XML

Master document Solution+.xml contains a list of <project> tags with names of projects and corresponding XML file names.

See Also