在DELPHI/BCB的INT型在98与NT下的MAX不一致,同样是含整型参数的函数,在95下超过33000就不行,NT65000都可以,怎么解决?(5分)

  • 主题发起人 主题发起人 cuiax
  • 开始时间 开始时间
重新定义一个统一的好了
#define MyMax 65535
 
有符号和无符号的关系吧? 一般是自己重新定义一下的啦.
 
有些API函数中的参数是整型,在NT中INT的范围比98要大,
而我的程序需要在98中运行,但是那些API受到98的INT型参数范围的限制?
总不见得在WIN NT中才能用吧!
谁能帮助我?
 
98 int 16位
nt int 32位
 
谢谢,但是怎么解决98下API函数中整型参数16BIT的限制呢?
 
这个问题大了,总不至于让MS把98的API改写一编吧。
一般来说2^16-1够用的,说说你面临问题的具体情况,
看有没有别的路子
 
但是实际上某些API的INT参数并不是2^16-1,而是Signed INT 2^15-1.
这个怎么办呢?
各位救我!@$%^&%$^@&^%*&
 
哪个 API??我怎么不太相信?
 
BCB中的Image1->Canvas->StretchDraw(Rect(0,0,Width,Height),SrcGraphic);
其中SRCGRAPHIC的长度是60000多,宽度是2000,
如此画出的结果是IMAGE1->CANVAS上是一块白板?
怎么解决呢?
 
cuiax:如果还想接着讨论请定期提前自己的帖子,如果不想继续讨论请结束帖子。
 
不要用integer类型,
使用longint类型和MaxLongInt常量,
无论98或NT都是32位的了
 
接受答案了.
 
后退
顶部