我通过Matlab访问.NET API。我使用的是具有公开方法的类,但签名似乎与文档不符(或者我不理解文档!)。
当我在Matlab中执行调用时,我得到:
K>> Surface.ChangeType(ZOSAPI.Editors.LDE.SurfaceType.CoordinateBreak)
No method 'ChangeType' with matching signature found for class 'ZemaxUI.ZOSAPI.Editors.ZOSAPI_LDERow'.
我可以使用以下方法告诉该类存在的方法:
methods(Surface)
但是,我无法理解我违反的签名的哪个方面。
Matlab中是否有命令(或用Visual Studio探测DLL的方法)来显示方法的签名?
答案 0 :(得分:0)
您可以使用反编译器查看BillId LineReference
100 1,2
100 1,2
100 1
100 1
文件的内容,并了解如何调用它。一些免费的反编译器:
https://www.jetbrains.com/decompiler/
http://www.devextras.com/decompiler/
更新
我已经忘记你也可以使用.dll
功能显示一个包含更多信息的窗口。
答案 1 :(得分:0)
http://uk.mathworks.com/help/matlab/ref/methods.html?s_tid=gn_loc_drop
我认为(方法)是正确的但你可能需要重载(方法,' - full')。你知道那个类的完整命名空间吗?
如果您只是需要这些信息,那么我将使用上面提到的免费解码器:)