Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 1 addition & 9 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,8 @@
*.userprefs

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/
/Civil3DSnoopDB.bundle/Contents/net*/

# Visual Studio 2015 cache/options directory
.vs/
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
26 changes: 0 additions & 26 deletions Civil3DSnoopDB.bundle/Contents/R21/SnoopCivil3DObjects.xml

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.13.35931.197
MinimumVisualStudioVersion = 10.0.40219.1
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "SnoopCivil3D", "SnoopCivil3D.vbproj", "{CFEE93F5-0F41-4701-AF13-943E80405E59}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8EC462FD-D22E-90A8-E5CE-7E832BA40C5D}"
ProjectSection(SolutionItems) = preProject
..\..\..\..\.gitignore = ..\..\..\..\.gitignore
..\..\..\PackageContents.xml = ..\..\..\PackageContents.xml
..\..\..\..\README.md = ..\..\..\..\README.md
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand All @@ -17,4 +26,7 @@ Global
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {3DA1B3EF-F9D7-4B3E-AE4E-2C0CC51FF107}
EndGlobalSection
EndGlobal
175 changes: 31 additions & 144 deletions Civil3DSnoopDB.bundle/Contents/Source/SnoopCivil3D/SnoopCivil3D.vbproj
Original file line number Diff line number Diff line change
@@ -1,149 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>
</ProductVersion>
<SchemaVersion>
</SchemaVersion>
<ProjectGuid>{CFEE93F5-0F41-4701-AF13-943E80405E59}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>SnoopCivil3DObjects</RootNamespace>
<AssemblyName>SnoopCivil3DObjects</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>SnoopCivil3DObjects.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
<Prefer32Bit>false</Prefer32Bit>
<PlatformTarget>x64</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>..\..\R21\</OutputPath>
<DocumentationFile>SnoopCivil3DObjects.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup>
<OptionExplicit>On</OptionExplicit>
</PropertyGroup>
<PropertyGroup>
<OptionCompare>Binary</OptionCompare>
</PropertyGroup>
<PropertyGroup>
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>On</OptionInfer>
<Company>Autodesk Inc.</Company>
<Copyright>Copyright © Autodesk</Copyright>
<OutputPath>../../</OutputPath>
<PackageProjectUrl>https://github.com/ADN-DevTech/Civil3DSnoop</PackageProjectUrl>
<Product>Snoop Civil3D Objects</Product>
<RootNamespace>SnoopCivil3DObjects</RootNamespace>
<TargetFrameworks>net48;net8.0-windows</TargetFrameworks>
<Title>Snoop Civil3D Objects</Title>
<UseWindowsForms>true</UseWindowsForms>
<UseWPF>true</UseWPF>
<Version>1.8.0</Version>
</PropertyGroup>
<ItemGroup>
<Reference Include="accoremgd">
<HintPath>..\..\..\..\..\Program Files\Autodesk\Autodesk AutoCAD Civil 3D 2014\accoremgd.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="acdbmgd">
<HintPath>..\..\..\..\..\Program Files\Autodesk\Autodesk AutoCAD Civil 3D 2014\acdbmgd.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="acmgd">
<HintPath>..\..\..\..\..\Program Files\Autodesk\Autodesk AutoCAD Civil 3D 2014\acmgd.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="AecBaseMgd">
<HintPath>..\..\..\..\..\Program Files\Autodesk\Autodesk AutoCAD Civil 3D 2014\AecBaseMgd.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="AeccDbMgd">
<HintPath>..\..\..\..\..\Program Files\Autodesk\Autodesk AutoCAD Civil 3D 2014\AeccDbMgd.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Diagnostics" />
<Import Include="System.Linq" />
<Import Include="System.Xml.Linq" />
</ItemGroup>
<ItemGroup>
<Compile Include="Commands.vb" />
<Compile Include="frmSnoopObjects.Designer.vb">
<DependentUpon>frmSnoopObjects.vb</DependentUpon>
</Compile>
<Compile Include="frmSnoopObjects.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="frmSnoopObjects.resx">
<DependentUpon>frmSnoopObjects.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>

<ItemGroup Condition="'$(TargetFramework)' == 'net48'">
<PackageReference Include="AutoCAD.NET" Version="24.*">
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
<PackageReference Include="Civil3D.NET" Version="13.6.*">
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>

<ItemGroup Condition="'$(TargetFramework)' == 'net8.0-windows'">
<PackageReference Include="AutoCAD.NET" Version="25.*">
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
<PackageReference Include="Civil3D.NET" Version="13.7.*">
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
<StartAction>Program</StartAction>
<StartProgram>C:\Program Files\Autodesk\AutoCAD 2017\acad.exe</StartProgram>
<StartProgram>C:\Program Files\Autodesk\AutoCAD 2022\acad.exe</StartProgram>
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
<StartArguments>/ld "C:\Program Files\Autodesk\AutoCAD 2017\\AecBase.dbx" /p "&lt;&lt;C3D_Metric&gt;&gt;" /product "C3D" /language "en-US"</StartArguments>
<StartArguments>/ld "C:\Program Files\Autodesk\AutoCAD 2022\\AecBase.dbx" /p "&lt;&lt;C3D_Metric&gt;&gt;" /product "C3D" /language "en-US"</StartArguments>
</PropertyGroup>
<PropertyGroup>
<ReferencePath>C:\Program Files\Autodesk\AutoCAD 2017\;C:\Program Files\Autodesk\AutoCAD 2017\C3D\</ReferencePath>
<ReferencePath>C:\Program Files\Autodesk\AutoCAD 2020\;C:\Program Files\Autodesk\AutoCAD 2022\C3D\</ReferencePath>
</PropertyGroup>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -408,7 +408,7 @@ Public Class frmSnoopObjects

Private Sub btnSelectAnotherFile_Click(sender As Object, e As EventArgs) Handles btnSelectAnotherFile.Click
Dim selFile As New Autodesk.AutoCAD.Windows.OpenFileDialog("Select file to inspect", Nothing, "dwg;", "Snoop Civil 3D Database", Autodesk.AutoCAD.Windows.OpenFileDialog.OpenFileDialogFlags.NoUrls And Autodesk.AutoCAD.Windows.OpenFileDialog.OpenFileDialogFlags.DoNotTransferRemoteFiles)
If (selFile.ShowDialog() = Windows.Forms.DialogResult.OK) Then
If (selFile.ShowDialog() = DialogResult.OK) Then
Using db As New Database(False, True)
db.ReadDwgFile(selFile.Filename, FileOpenMode.OpenForReadAndAllShare, True, String.Empty)
Dim frm As New frmSnoopObjects(db)
Expand Down
13 changes: 10 additions & 3 deletions Civil3DSnoopDB.bundle/PackageContents.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,15 @@
<ApplicationPackage SchemaVersion="1.0" AutodeskProduct="AutoCAD" Name="Civil 3D Snoop DB" Description="Inspect Civil 3D database" AppVersion="1.0.0" FriendlyVersion="1.0.0" ProductType="Application" SupportedLocales="Enu" AppNameSpace="appstore.exchange.autodesk.com" Author="Autodesk">
<CompanyDetails Name="Autodesk" Email="augusto.goncalves@autodesk.com" />
<RuntimeRequirements OS="Win64" Platform="Civil3D" />
<Components Description="R21 part">
<RuntimeRequirements OS="Win64" Platform="Civil3D" SeriesMin="R21.0" SeriesMax="R22.0" />
<ComponentEntry AppName="Civil3DSnoopDB" Version="1.1" ModuleName="./Contents/R21/SnoopCivil3DObjects.dll" AppDescription="R21 module" LoadOnAppearance="True" LoadOnAutoCADStartup="True" />

<Components Description="R24 part">
<RuntimeRequirements OS="Win64" Platform="Civil3D" SeriesMin="R24.0" SeriesMax="R24.3" />
<ComponentEntry AppName="Civil3DSnoopDB" Version="1.8" ModuleName="./Contents/net48/SnoopCivil3DObjects.dll" AppDescription="R24 module" LoadOnAppearance="True" LoadOnAutoCADStartup="True" />
</Components>

<Components Description="R25 part">
<RuntimeRequirements OS="Win64" Platform="Civil3D" SeriesMin="R25.0" SeriesMax="R25.1" />
<ComponentEntry AppName="Civil3DSnoopDB" Version="1.8" ModuleName="./Contents/net8.0-windows/SnoopCivil3DObjects.dll" AppDescription="R25 module" LoadOnAppearance="True" LoadOnAutoCADStartup="True" />
</Components>

</ApplicationPackage>
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Database Snoop for AutoCAD Civil 3D 2017
# Database Snoop for Autodesk Civil 3D

This tool uses .NET Reflection to list all properties of AutoCAD Civil 3D major objects, such as Alignments, Corridors, Surfaces, Networks, etc. It also lists collections items and allows selection of objects on-screen.

# Setup

Open the [SnoopCivil3D.sln](Civil3DSnoopDB.bundle\Contents\Source\SnoopCivil3D\SnoopCivil3D.sln) on Visual Studio 2015. All references should be ready for AutoCAD Civil 3D 2017 default install path, otherwise go to project properties >> References, then click on Reference Paths and adjust. Build the project in Release, the DLL should be placed at /Contents/R21 folder. Copy the entire .bundle folder to <b>c:\Program Files\Autodesk\Autodesk\ApplicationPlugins</b> folder and launch Civil 3D.
Open the [SnoopCivil3D.sln](Civil3DSnoopDB.bundle\Contents\Source\SnoopCivil3D\SnoopCivil3D.sln) on Visual Studio. Build the project in Release, the DLL should be placed at /Contents/net** folder. Copy the entire .bundle folder to <b>%AppData%\Autodesk\ApplicationPlugins</b> folder and launch Civil 3D.

# Usage

Expand Down Expand Up @@ -32,3 +32,6 @@ The tool may stop working on some properties that cannot be reflected (using .NE
- 1.3 Support for additional drawing
- 1.4 2017 support
- 1.5 2018 support
- 1.6 2020 support
- 1.7 2022 support
- 1.8 .NET 8.0 support