Minitab帮助文件在有限的范围内提供了对此主题的支持,所有示例都是用VB编写的。我是.NET的新手,但我很快就会学会的。这是命令语法中的一些东西。
它们在VB中提供了以下示例:
Dim MtbApp As New mtb.Application
Dim MtbProj As mtb.Project
Dim MtbCom As mtb.Command
Dim i, j As Integer
MtbApp.UserInterface.Visible = True
Set MtbProj = MtbApp.ActiveProject
MtbProj.ExecuteCommand "RANDOM 30 C1 - C2"
MtbProj.ExecuteCommand "REGRESS C1 1 C2"在C#中,我的代码如下所示
var MtbApp = new Mtb.Application();
var MtbProj = new Mtb.Project();
MtbProj = MtbApp.ActiveProject;
MtbApp.UserInterface.Visible = true;
MtbProj.ExecuteCommand(<command>);我期望发生的是Minitab应该打开,并且命令应该执行。然而,发生的事情是,两个Minitab实例正在打开,并且都没有显示用户界面,我必须在进程中找到它们。
发布于 2010-07-02 03:22:32
假设您已经添加了对Minitab COM的引用,这应该可以让您开始:
Mtb.Application MtbApp = null;
Mtb.Project MtbProj = null;
Mtb.UserInterface MtbUI = null;
MtbApp = new Mtb.Application();
MtbProj = MtbApp.ActiveProject;
MtbUI = MtbApp.UserInterface;
MtbUI.Visible = true;
MtbProj.ExecuteCommand("RANDOM 30 C1-C2", Type.Missing); //with C# optional params required
MtbApp.Quit();
Marshal.ReleaseComObject(MtbUI); MtbUI = null;
Marshal.ReleaseComObject(MtbProj); MtbProj = null;
Marshal.ReleaseComObject(MtbApp); MtbApp = null;在C#中使用COM对象可能很棘手。尤其是当你完成的时候释放它们。
请记住,作为一般规则,永远不要重复。不要这样做:
MtbApp.UserInterface.Visible = true;而是:
Mtb.UserInterface MtbUI = null;
MtbUI = MtbApp.UserInterface;
MtbUI.Visible = true;因此,可以稍后释放MtbUI对象。
https://stackoverflow.com/questions/3160767
复制相似问题