wsprintf函数使用时,delphi中有问题,帮帮我 api中声明3个参数,delphi中却成了两个,怎么用拉 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Delphi中的这个函数声明是错误的。正确声明应该是:function wsprintf(Output: PChar; Format: PChar): Integer;varargs; cdecl; external user32 name 'wsprintfA';原因:1.wsprintfA/wsprintfW是WindowsAPI中唯一一个使用cdecl调用方式的函数2.该函数使用可变参数,但是原来的wsprintf定义却只有两个参数,掉了varargs关键字。修改后测试程序:var Buffer:array[1..100] of char;beginwsprintf2(@Buffer,'Self=0x%X',Self);ShowMessage(StrPas(@Buffer));end; 不过在Delphi里面有wsprintf的替换函数。使用Format函数 关于自定义鼠标? 数据更新问题 这个怎么做:鼠标自动移动到IE浏览器的网址输入框,然后左键单击一下 急:如何做一个项目!! 请问如何控制com服务与HttpSrvr的启动与停止? 如何把进度条放入状态栏里? 寻找个人所得税的算法??? 请问:format函数怎么用? api函数 请问,怎样解决acess violation sql语句:如何将从表中查到的最大值付给一个变量??在线等==== 用delphi在繁体系统下将繁体big5字符存入sql server 2000中会自动被转换成GBK码?
function wsprintf(Output: PChar; Format: PChar): Integer;varargs; cdecl; external user32 name 'wsprintfA';
原因:
1.wsprintfA/wsprintfW是WindowsAPI中唯一一个使用cdecl调用方式的函数
2.该函数使用可变参数,但是原来的wsprintf定义却只有两个参数,掉了varargs关键字。修改后测试程序:var Buffer:array[1..100] of char;
begin
wsprintf2(@Buffer,'Self=0x%X',Self);
ShowMessage(StrPas(@Buffer));
end;