Project Analyzer features
This is a list of all Project Analyzer features. The features are supported by all of the available editions unless otherwise marked. Features marked Pro, Ent require either the Pro or the Enterprise Edition. Features marked Ent require the Enterprise Edition.
Code analysis
- Single-project analysis
- Analyze all source files of a single Visual Basic project.
- Multi-project analysis
- Analyze several projects together, including .vbg and .sln support. Ent
- Office VBA analysis
- Analyze Office VBA projects. Requires VBA Plug.
- Directory analysis
- Analyze all source files found in a directory path.
Automated code review
- Coding standards
- Enforce coding standards by detecting programming style issues. Configurable.
- Dead code detection
- Find unused procedures, properties, variables, parameters, constants, enums, user-defined types, classes, interfaces, modules and controls.
- Dead code removal
- Delete or comment out dead code automatically. Ent
- Detection of functionality problems
- Monitor known user interface issues and problems with program logic.
- Flaw finder
- Locate logical mistakes and omissions and prevent future errors.
- Memory leak prevention
- Ensure proper clearing of object variables, deallocation of dynamic arrays and releasing of Win API handles.
- Optimization suggestions
- Detect unoptimal statements and syntax, configurable.
- Project NameCheck
- Define and enforce a naming standard on procedures, variables, constants, classes, enums, types etc. Pro, Ent
- Auto-fix
- Remove dead code and update live code according to selected standards. Ent
Call trees, cross-references and diagrams
- Call trees
- View procedure call trees and file dependency trees in treeview or report format. See how procedures call each other and how files depend on each other.
- Cross-references
- View references to any programming object to see where it is being used. View all references between two files. View references into/out of a file. View references by type, such as instantiation of objects or allocation of arrays.
- Diagramming: Project Graph
- Interactive procedure call trees, file dependency trees, class hierarchy trees, control flow trees, data flow trees, instantiation trees, data declaration trees and form show trees. Print or save as image for project documentation. Pro, Ent
- Diagramming: Enterprise Diagrams
- Complex procedure call diagrams, file dependency diagrams, class hierarchy diagrams, control flow diagrams, data flow diagrams, variable access diagrams, form show diagrams, "file belongs to project" diagrams, project dependency diagrams, class cohesion diagrams and recursion diagrams. Print diagrams or save as image files. Export diagrams to edit in Microsoft Visio. Ent
Reports
- Reports: Cross-reference based
- Cross-reference report, Procedure references report, Variable references report, Constant references report, Need report, Executed by report, File dependency analysis, File dependency levels, Subsystem report, Non-cohesive classes report, Variable use report.
- Reports: Lists
- File list, File sizes and dates, Files and projects, Module list, Namespace list, Procedure list, Variable list, Constant list, Types, Enums and Aliases list, Dictionary.
- Reports: Module structure
- Module interface report, Module members report, Interface report.
- Reports: String literals
- String literal analysis, String literal report. Detect repeated string definitions.
- Reports: User interface
- Form report, Menu report, Control report, Hotkey conflicts report.
- These reports are mainly for VB 3-6 projects.
- Compiler directives report
- How conditional compilation affects your project. Number of active and excluded lines.
- Design quality report
- Assess the quality of your project. Amount of dead code. Number of comments, comment density, percentage of meaningful comments. Length of names. Cyclomatic complexity and reuse. Use of whitespace and indentation.
- Library report
- List used library files and API Declare statements.
- Summary report
- Summarize the size and status of your project. Line counts, number of comments, procedures, types of statements, decision counts, work effort estimate etc.
- Project Printer
- Source code documentation: Print the code of a program or put it in a syntax-highlighted, surfable document file.
Pro, Ent
- Comment manual: Generate source documentation out of comments in code. Pro, Ent
- Project web site: Generate HTML hyperlinked source code and reports for thorough documentation. Pro, Ent
- Comment manual: Generate source documentation out of comments in code. Pro, Ent
Interactive features
- Constants and Enums window
- Analyze the declaration and use of constants and enumerated constants. Detect duplicated and differing definitions.
- Find
- Enhanced search for procedures, variables, constants, types, enums, code, comments or any text in a project.
- FRX file view
- View contents of binary property files (.frx).
- Hex viewer
- View binary files with hex viewer.
- Hypertext code view
- Surf source code as hypertext. Click items to view their definition. View all references to a given item such as procedure or variable.
- Listings windows
- List and navigate variables, constants, parameters, procedures, data types and modules. View how each of them is being referenced in the project.
- Print and export syntax-highlighted code
- Print code with syntax-aware highlighting in either color or monochrome.
- Export source code as syntax-highlighted documents. Formats: PDF, RTF, HTML.
Advanced analyses
- COM analysis
- Look into COM libraries and analyze their use in VB code. Ent
- DLL analysis
- Look into DLL libraries and analyze their use in VB code. Ent
- .NET assembly analysis
- Look into .NET Framework assemblies and other .NET libraries and analyze their use in VB code. Ent
- Duplicate code analysis
- Detect repeated code blocks. Ent
- Macros
- Automate repetitive analysis tasks. Ent
- Metrics
- Calculate 184 metrics including lines of code, comment density, cyclomatic complexity, relative complexity, fan-in and fan-out, depth of nesting and object-oriented metrics. Compare projects and monitor historical development with charts. Ent
- Super Project Analyzer
- Detect dead code in shared files. Combine several analyses to detect dead code in source code files that are being shared between several projects. Pro, Ent
- VB.NET compatibility check
- Review VB6 code for .NET issues. Ent
Miscellaneous features
- Archive project files
- Backup code to a .zip file.
- Flow charts
- Send selected code to Visustin for flowcharting. Requires Visustin, which is another product.