Create Checks from Document Example (C#)
This example shows how to build Design Checker
checks
from existing SolidWorks documents, templates, and drafting standards.
//---------------------------------------------------------------------------
// Preconditions:
// 1. Load the SolidWorks Design Checker add-in
// (click Tools > Add-ins > SolidWorks Design Checker).
// 2. Ensure that the specified document exists.
// 3.
Reference the SolidWorks Design Checker primary interop
assembly
// (in Project Explorer, right-click the project name, select
// Add Reference, click the Browse tab, navigate to the
// <SolidWorks_install_dir>\api\redist\CLR2 folder and
// select SolidWorks.Interop.dsgnchk.dll).
// 4. Rename the namespace of this macro to
match the name of your C# project.
// 5. Open an Immediate window.
//
// Postconditions: SolidWorks Design Checker launches and displays 27 checks
// that were added from the specified document.
//
// NOTE: Because this drawing document is used by a SolidWorks
// tutorial, do not save any changes when closing the document.
//---------------------------------------------------------------------------
using
SolidWorks.Interop.sldworks;
using
SolidWorks.Interop.swconst;
using
SolidWorks.Interop.dsgnchk;
using
System;
using
System.Diagnostics;
namespace
CreateChecksFromFile_CSharp.csproj
{
partial
class
SolidWorksMacro
{
public
void Main()
{
SWDesignCheck
swDCAddIn = default(SWDesignCheck);
int
retValue = 0;
// Get the SolidWorks Design
Checker add-in
swDCAddIn = (SWDesignCheck)swApp.GetAddInObject("SWDesignChecker.SWDesignCheck");
if
(swDCAddIn == null)
{
Debug.Print("No
SolidWorks Design Checker add-in.");
return;
}
// Build Design Checker checks
from a SolidWorks drawing document
retValue = swDCAddIn.CreateChecksFromSWFile("C:\\Program
Files\\SolidWorks Corp\\SolidWorks (2)\\samples\\tutorial\\advdrawings\\FoodProcessor.slddrw");
switch
(retValue)
{
case
0:
Debug.Print("No
errors running this report.");
break;
case
1:
Debug.Print("Report
already exists.");
break;
case
2:
Debug.Print("Could
not create report directory.");
break;
case
3:
Debug.Print("No
active document.");
break;
case
4:
Debug.Print("Standards
file does not exist.");
break;
}
}
public
SldWorks
swApp;
}
}