【问题标题】:3ds Max C# plugin Class_ID possibly not instantiated [duplicate]3ds Max C#插件Class_ID可能未实例化[重复]
【发布时间】:2018-11-19 17:37:33
【问题描述】:

启动 3ds Max 以测试我正在编写的插件时出现以下错误: “软件问题导致 3ds Max 意外关闭。” 提示和查看报告详细信息窗口不显示有关错误确切发生位置的其他信息。

我阅读了 C++ 教程并遵循 Autodesk 教程 3ds Max SDK 程序员指南和参考,即编写 .NET 插件部分。

我如何才能获得有关错误确切发生位置的更多信息?

在添加构造函数之前,描述符类发生了实例化错误:

public class Descriptor : Autodesk.Max.Plugins.ClassDesc2
{
    IGlobal global;

    public IGlobal Global
    {
        get { return this.global; }
    }

    public Descriptor(IGlobal global)
    {
        this.global = global;
    }

    public override IClass_ID ClassID
    {
        get { return this.Global.Class_ID.Create((uint)0x28ca31e0, (uint)0x622d62c8); }
    }
    public override bool IsPublic
    {
        get { return true; }
    }
    public override string Category
    {
        get { return InternalName; }
    }
    public override string ClassName
    {
        get { return "Utilities"; }
    }
    public override SClass_ID SuperClassID
    {
        get { return SClass_ID.Utility; }
    }

    public override object Create(bool loading)
    {
        return new Utilities(this);
    }
}

【问题讨论】:

  • 这里没有人会下载您的项目,没有人会为此付费,我们是志愿者并提供帮助,因为我们喜欢增加网站的知识并喜欢重复对好的项目进行投票问题和答案.. 问问你自己,下周当你的链接消失时,这个问题对社区有什么价值?
  • 感谢您的评论,我希望我所做的编辑朝着正确的方向发展。

标签: c# 3dsmax


【解决方案1】:

Descriptor.Create() 应该从描述符中调用:

    public Descriptor(IGlobal global)
    {
        this.global = global;
        Create(true);
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-24
    • 2022-10-19
    • 2011-11-10
    • 2018-10-16
    • 2011-05-31
    • 2012-10-02
    • 1970-01-01
    • 2017-09-05
    相关资源
    最近更新 更多