![]() |
#2
不说也罢2016-05-24 11:07
|
程序集“mscorlib,Version=4.0.0.0,Culture=neutral, PublicKeyToken=b77a5c561934e089”中的类型System._ComObject未标记为可序列化
模型结构声明

Module ModuleTV3DModel
<Serializable()> Public Structure TV3D_Model
Public ModelName As String
'TV3D构件对象(数组)
Public MB_L() As Member_L
Public MB_C() As Member_C
Public MB_H() As Member_H
Public MB_T() As Member_T
Public MB_Tube() As Member_Tube
Public MB_Shell() As ShellMember 'TV3D板壳对象(数组)
Public MB_Joints() As Member_Joint 'TV3D节点对象(数组)
End Structure
End Module
子结构声明,都类似所以就给了一个

Module ModuleTube
<Serializable()> Public Structure Member_Tube
Dim M_Name As String '构件名称
Dim SectName As String '构件截面名称
……
'下面还有这个结构的一些函数
<Serializable()> Public Structure Member_Tube
Dim M_Name As String '构件名称
Dim SectName As String '构件截面名称
……
'下面还有这个结构的一些函数
主窗口代码,打开模型按钮还做(目前是从数据库打开,没有序列化),保存按钮出问题

Shared myModel(0) As TV3D_Model
……
Private Sub ToolStripButtonSaveModel_Click(sender As Object, e As EventArgs) Handles ToolStripButtonSaveModel.Click
Dim fStream As New FileStream(Application.StartupPath & "\1.smd", FileMode.Create)
Dim bf As New BinaryFormatter
bf.Serialize(fStream, myModel)
fStream.Close()
End Sub