如何通过网络访问在远程计算机上运行的API

时间:2018-02-05 05:45:37

标签: c# cnc okuma

我想从外部PC(即OKUMA控制器以外)连接到基于OKUMA Windows的控件,并在该机器上使用OKUMA Open API。可能吗? (如果是,那么如何?)

下面是我想从我的笔记本电脑运行以检查机器运行模式的代码。我收到错误是因为Okuma.CLDATAPI无法在我的本地PC上运行:

using Okuma.CLDATAPI.Enumerations; // Part of the API on the machine
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace OKUMA_TRIAL
{
    public partial class Form1 : Form
    {
        Okuma.CLDATAPI.DataAPI.CMachine objCMachine;
        public Form1()
        {
            InitializeComponent();

            objCMachine = new Okuma.CLDATAPI.DataAPI.CMachine();
            objCMachine.Init();
        }

        private ExecutionModeEnum fnGetRunMode()
        {
            return objCMachine.GetExecutionMode();
        }

        private void btnRead_Click(object sender, EventArgs e)
        {
            txtRunMode.Text = fnGetRunMode().ToString();
        }
    }
}

如果这不可能,是否有另一种与机器通信的方式?

1 个答案:

答案 0 :(得分:0)

使用Windows Communication Foundation包装API。

由于需求旺盛,Open API SDK现在包括一个WCF客户端/服务示例。

WCF Example Service and Client

需要注意的重要一点是,我们不太愿意发布具有API访问权限的公开服务的代码,因此此示例仅配置为本地主机。当然,更改配置是微不足道的,但是无论这样做的人都需要承担所有责任。

Microsoft实际上在记录WCF功能方面做得很好,请参见下文。


.NET Framework 4的Windows Communication Foundation(WCF)和Windows Workflow Foundation(WF)示例