求助:用VC做的OCX返回值是BOOL,在Delphi中就定义为WordBool了,而且返回总是True 是不是要把WordBool转换成Boolean,怎么转换,(Boolean()强制转换也不行)。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 WordBool和Boolean是兼容的,可以直接使用。 vc:typedef int BOOL;#ifndef FALSE#define FALSE 0#endif#ifndef TRUE#define TRUE 1#endifBOOL 只能返回 0/1 在C++ 中 bool行可以跟int型进行隐形转换即 int n;if (n) // 只有当 n == 0 时 ,if条件为false 否则都为true{}在Delphi中就定义为WordBool了,而且返回总是True 你应该定义为BYTE或者integer型即可如此比较var n: Integer;if (n == 0) // 为相当于返回falseelse // 相当于返回true 我用属性可以解决了,但是方法还是不行。而且即使vc的方法返回long类型,delphi也不能接收到,无论返回值是多少delphi现实的值都是124....,vc:long CIRObjectCtrl::UpLoad(long port, LPCTSTR outfile) { m_InitPort = port; m_InitFileName = outfile ; bool m_ret = OnUpload(); if (m_ret) { return 0; } else { return -1; }}dephi:ShowMessage(IntToStr(IRObject1.UpLoad(1,'c:\1.txt'));//显示结果都是一个值如果在vc中使用这个控件返回值就是正确的. 年前,心情好,散分 如果判斷sql的insert語句是否成功?:-) UDP广域网传输速度问题 如何是窗体,始终居于前段? 兄弟们来接分啊?本来说今天给第二节的?但被她打断 希望斑竹体谅这是我的家啊 向各位求救!!! 如何判断两个ACCESS数据库中表的结构完全相同? 如何产生34-456之间的随机数 哪里有RSA加密的delphi源代码下载呀? 一个关于时间的小问题??? 从datetime类型的数据库中以date过滤得出数据怎样实现? StringList 中怎样把String 和object都销毁
typedef int BOOL;#ifndef FALSE
#define FALSE 0
#endif#ifndef TRUE
#define TRUE 1
#endifBOOL 只能返回 0/1 在C++ 中 bool行可以跟int型进行隐形转换
即 int n;
if (n) // 只有当 n == 0 时 ,if条件为false 否则都为true
{}
在Delphi中就定义为WordBool了,而且返回总是True 你应该定义为BYTE或者integer型即可
如此比较var
n: Integer;
if (n == 0) // 为相当于返回falseelse // 相当于返回true
而且即使vc的方法返回long类型,delphi也不能接收到,无论返回值是多少delphi现实的值都是124....,
vc:
long CIRObjectCtrl::UpLoad(long port, LPCTSTR outfile)
{
m_InitPort = port;
m_InitFileName = outfile ; bool m_ret = OnUpload();
if (m_ret)
{
return 0;
}
else
{
return -1;
}
}dephi:
ShowMessage(IntToStr(IRObject1.UpLoad(1,'c:\1.txt'));//显示结果都是一个值如果在vc中使用这个控件返回值就是正确的.