## .NET symbols

1.  Create the symbol as described in the tutorials above.

2.  In **Compiler Settings**, select **Visual Basic .NET** instead of **Visual Basic**.

    Only Smart 3D 2014 R1 or later supports .NET output.

    Please note: the combination of .NET valves and .NET operators is not supported before Smart 3D 2016, due to Intergraph `TR-CP-282293`.

3.  Open the resulting .vbproj file in **Visual Studio**.

4.  If **Visual Studio** shows a message that it cannot find the referenced Intergraph DLLs:

    Double-click **My Project** in the tree view, then open the **References** tab, click **Reference Paths**, and add the path to the Intergraph DLLs there. This is usually something similar to:

    `C:\Program Files (x86)\Smart3D\Core\Container\Bin\Assemblies\Release\`

5.  If you still get error messages, it might be that the Intergraph DLLs are bound to a different version of the .NET framework. Change the target framework of your symbol project in Visual Studio, e.g. with Smart 3D 2016 Hotfix 25 you need to select .NET Framework 4.5. If you can't select the necessary framework version, you might also need a newer version of Visual Studio.

6.  Run **Build** → **Rebuild**.

7.  Copy the DLL from `.\obj\Debug` to the `SymbolShare`, for example:

    `\\sp3d10\sharedcontent\Custom_Symbols`

8.  Go to Intergraph **Project Management** and start **Update Custom Symbol Configuration** for the relevant catalogue.

9.  Bulkload and place the symbol as usual.
