Imports System.IO
Imports System.Runtime.InteropServices
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim objSEApplication As SolidEdgeFramework.Application = Nothing
Dim SEInstallDir As DirectoryInfo
Dim objDoc As SolidEdgeFramework.SolidEdgeDocument = Nothing
Dim objAsmDoc As SolidEdgeAssembly.AssemblyDocument = Nothing
Dim FilesToUpdate(0 To 10) As Object
Dim FilesToSave(0 To 10) As Object
Dim FilesNotSaved(0 To 10) As Object
Dim IDU As SolidEdgeFramework.InterDocumentUpdate = Nothing
Try
objSEApplication = Marshal.GetActiveObject("SolidEdge.Application")
SEInstallDir = GetTrainingFolder()
objDoc = objSEApplication.Documents.Open(SEInstallDir.FullName + "\carrier.asm")
If objDoc.Type = SolidEdgeFramework.DocumentTypeConstants.igAssemblyDocument Then
objAsmDoc = objDoc
IDU = objAsmDoc.InterDocumentUpdate
IDU.GetFilesToUpdate(filesToUpdate)
IDU.LoadFilesToUpdate()
IDU.Update(SolidEdgeFramework.InterDocumentUpdateMode.seActiveLevel)
IDU.GetFilesToSave(FilesToSave)
IDU.SaveChangedFiles(FilesNotSaved)
End If
Catch ex As Exception
MsgBox(ex.ToString)
Clipboard.SetText(ex.ToString)
End Try
End Sub
Function GetTrainingFolder() As DirectoryInfo
Dim objInstallData As SEInstallDataLib.SEInstallData = Nothing
Dim objInstallFolder As DirectoryInfo = Nothing
Dim objTrainingFolder As DirectoryInfo = Nothing
Try
objInstallData = New SEInstallDataLib.SEInstallData
objInstallFolder = New DirectoryInfo(objInstallData.GetInstalledPath())
objTrainingFolder = New DirectoryInfo(Path.Combine(objInstallFolder.Parent.FullName, "Training"))
Catch
Finally
If Not (objInstallData Is Nothing) Then
Marshal.FinalReleaseComObject(objInstallData)
objInstallData = Nothing
End If
End Try
Return objTrainingFolder
End Function
End Class