我在c#中使用vtk。 我正在执行一行代码,例如“this.SetMinimumU(0.0);”时发生访问冲突异常
错误详细信息和代码段如下所述。如果,请建议我 有人遇到这个问题。
Kitware.VTK.dll中发生未处理的“System.AccessViolationException”类型异常
附加信息:尝试读取或写入受保护的内存。 这通常表明其他内存已损坏。
代码段位于
之下public class AcessViolation : vtkParametricFunction
{
static IntPtr ptr=new IntPtr();
public AcessViolation():base(ptr,true,true)
{
try
{
this.SetMinimumU(0.0);
}
catch (Exception ex)
{
}
}
}
答案 0 :(得分:0)
请参阅How to handle AccessViolationException
您可能需要使用
HandleProcessCorruptedStateExceptions
装饰
但当然最好避免触发异常...
答案 1 :(得分:0)
从文档中,vtkParametricFunction是一个抽象类,因此您可以尝试实例化其中一个派生类http://www.vtk.org/Wiki/VTK/Examples/CSharp/GeometricObjects/ParametricObjects或从中创建一个新的派生类(我不知道它是否可能与虽然包装)。
还记得使用New实例化vtk类,就像在链接示例中一样(我不认识你的代码片段中的构造函数,但我也不熟悉c#,所以请原谅我,如果它已经是正确的)