1>添加Interop.RTXServerApi.dll的引用
2>RTXServerApi.RTXObjectClass和RTXServerApi.RTXObject实现一样,建议使用RTXServerApi.RTXObject
在winform和类库中.net4.0 提示“无法嵌入互操作类型‘RTXServerApi.RTXObjectClass’,请改用适用的接口”,.net2.0则无此问题
但是在werform的.net4.0中RTXServerApi.RTXObjectClass又可以使用
3>SDKServerPort的端口是6000,AppServerPort的端口是8006,该demo用6000端口
4>如果RTXServerApi.RTXObject无法实例化,则修改生成项目中,目标修改为“x86”
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using RTXServerApi; using System.Runtime.InteropServices; namespace OtherObj { public partial class ExportUserDatafrm : Form { public ExportUserDatafrm() { InitializeComponent(); } private void btnExportDataToRTX_Click(object sender, EventArgs e) {
//RTXServerApi.RTXObjectClass RTXObj = new RTXServerApi.RTXObjectClass(); //创建一个业务逻辑对象
//RTXServerApi.RTXCollectionClass RTXParams = new RTXServerApi.RTXCollectionClass();// 创建一个集合对象
RTXServerApi.RTXObject RTXObj = new RTXObject(); //创建一个业务逻辑对象 RTXServerApi.RTXCollection RTXParams = new RTXCollection();// 创建一个集合对象 RTXObj.ServerIP = "127.0.0.1"; RTXObj.ServerPort = 6000; RTXObj.Name = "USERSYNC"; //业务逻辑对象名称为用户数据同步 RTXParams.Add("MODIFYMODE", 1); //"<?xml version=""1.0"" encoding=""gb2312"" ?>" //<?xml version="1.0" encoding="gb2312" ?> RTXParams.Add("XMLENCODE", @"<?xml version=" + "\"" + "1.0" + "\"" + " encoding=" + "\"" + "gb2312" + "\"" + " ?>"); try { object rtxData = RTXObj.Call2(enumCommand_.PRO_SYNC_FROM_RTX, RTXParams); //object rtxData = RTXObj.Call2(enumCommand_.PRO_GETALLDPETINFO, RTXParams); richTextBox1.Text = rtxData.ToString(); MessageBox.Show("导出成功"); } catch (COMException ex) { MessageBox.Show(ex.Message); } } } }
程序员的基础教程:菜鸟程序员