var
hostName : array [0..255] of char;
begin
gethostname(hostName, sizeof (hostName));
end; 产生原因:D2009的Char为宽字符WideChar,而gethostname第一个参数是PAnsiChar。
解决方法:将hostName的声明改成array [0..255] of AnsiChar;即可。
本文介绍了在使用D2009编译器时遇到的gethostname函数参数类型不匹配的问题及其解决方案。gethostname函数期望的是PAnsiChar类型的参数,而在D2009中Char被定义为WideChar。解决这一问题的方法是将变量的类型从array of char更改为array of AnsiChar。
var
hostName : array [0..255] of char;
begin
gethostname(hostName, sizeof (hostName));
end; 
被折叠的 条评论
为什么被折叠?