我使用Rational Doors 9.6作为客户端。我尝试在我的C#程序中集成一个功能,例如使用Doors C API,打开一个视图并在内存中获取一些数据以供进一步使用。这包括使用Windows凭据登录Doors服务器。
实际上,我必须启动Doors Client,打开该视图,执行excel导出,然后执行C#import,这不是很优雅的方式。
我不是门专家,所以我需要的是一个意见,因为API在C中,我不确定这是方法,还是只使用DXL服务器(或两者兼而有之?)
过去我在C#中使用过非托管的C dll,所以如果适当声明,应该没问题。
提前致谢,
答案 0 :(得分:2)
DOORS C API是一个非常古老的工件,无法用于您的目的。
您必须使用DXL脚本在DOORS中执行所需的操作(导出)。要启动脚本,您有三个选择:
最稳定的方法。您应该将信息写入DXL中的文件并从c#中读回。所有"专业" DOORS接口(如MDWorkbench)使用此方法。
见下文。如果要自动化现有的GUI DXL脚本,则需要使用此选项。请看这里的例子:
为此,您需要以交互模式启动客户端,然后通过COM连接到它。有关这方面的讨论,请参见此处:
对于导出本身,理性论坛上有很多脚本。最快的方法是自己执行CSV导出。见这里: