Debugging Symbols with .NET - Intergraph Smart 3D - Troubleshooting

Intergraph Smart 3D Troubleshooting Reference

Language
English
Product
Intergraph Smart 3D
Subproduct
Troubleshooting
Search by Category
Troubleshooting
Smart 3D Version
12.1 (2019)

Use Microsoft Visual Studio debugging tools to debug symbols. You must have the latest Programming Resources software and Microsoft Visual Studio installed on the computer. For information on how to install the Programming Resources, please refer to Intergraph Smart® Support.

Setup

Add the following folders to your PATH environment variable:

  • C:\Program Files\Smart3D\Core\Runtime

  • C:\Program Files\Smart3D\GeometryTopology\Runtime

Preparing to Debug a Symbol

Before you can debug a symbol, you must ensure that there is entry for that symbol in the CustomSymbolConfig.xml or SystemSymbolConfig.xml file.

The Update Custom Symbol Configuration (UCSC) command looks at the symbols in the SharedContent folder and makes entries in the SymbolConfig.xml files. Entries for symbols that you have created in the SharedContent\Custom Symbols folder are added to the SharedContent\Xml\CustomSymbolConfig.xml file. Entries for symbols supplied by Intergraph are added to the SharedContent\Xml\SystemSymbolConfig.xml file.

Debugging a Symbol .NET Project

  1. In .NET, open the project to debug.

  2. Click Project and select the project you want to debug. For example, in the following image select HSSmartPart Properties (Alt+7).

    Project Debug - New H&S Guide

  3. Click Debug and select Start external program.

  4. Click Browse and navigate to S3DHost.exe.

  5. Open the code page for the symbol and add break points.

    Code Page - New H&S Guide

  6. Press F5 to run the project.

Smart 3D opens. Create a new session file or open an existing session file and place the symbol. The control is passed to .NET at the break point and the normal .NET debug commands such as Step Into and Step Over can be used.

When symbols are placed for the first time in the model, a cache is created in the Model database and the actual symbol code will not run a second time or beyond. Please refer to Edit Symbol Occurrence for information on how to force the execution of symbol code for debugging purposes.

See Also

Testing Symbols