tmln
新手上路
贴子数量 : 2
注册日期 : 8/13/2002 在线情况 : 离线
|
发表于: 8/19/2002 - 09:02 |
按书上介绍的微软自带的midl应该也可以的但是提示如下:
Processing .\time.idl
time.idl
.\time.idl(8) : error MIDL2025 : syntax error : expecting a type specification n
ear "TimeOfDay"
.\time.idl(8) : error MIDL2026 : cannot recover from earlier syntax errors; abor
ting compilation
后来安装了orbix e2a,用它的idl编译提示如下:
abnormal program termination
idl: Preprocessor returned exit status 3
从vc6的向导建立是输入idl文件也提示如上
我的idl很简单,是《基于c++ 的corba高级编程》的第一个例子,如下:
struct TimeOfDay {
short hour;
short minute;
short second;
};
interface Time{
TimeOfDay get_gmt();
}; |
|
mep
|
发表于: 8/20/2002 - 02:25 |
这里有一个区别:
VC所能理解的IDL文件与CORBA中的IDL都是接口定义语言,但是MS的IDL指的是DCE RPC的IDL,不是CORBA的IDL。他们有类似的功能,但是语法和用法都是不兼容的。
所以使用midl编译CORBA的IDL文件会报错。
解决办法:
你可以使用手工编译CORBA的IDL文件(在命令行中进行),然后将编译后的C++源文件添加到工程中。
或在project的setting中,填写custom build
|
|
tmln
新手上路
贴子数量 : 2
注册日期 : 8/13/2002 在线情况 : 离线
|
发表于: 8/21/2002 - 01:03 |
问题解决了
原来vc6要加pack 3以上才可以的,我下载sp5安装后问题消失,
不过要注意的是,安装sp5后要重装一下orbix e2a。 |
|