use
WinSock;procedure ...;
var
WSAData: TWSAData;
begin
if WSAStartup($101, WSAData) = 0 then
begin
//Do actual operations here
WSACleanup;
end;
end;
WinSock;procedure ...;
var
WSAData: TWSAData;
begin
if WSAStartup($101, WSAData) = 0 then
begin
//Do actual operations here
WSACleanup;
end;
end;
解决方案 »
- 问一下Delphi中如何实现类似.Net中线程睡眠Thread.Sleep(1000)功能?
- 求票打的最快方法,直接对“LPT1”端口进行输出
- 新装delphi,新建一个工程,运行出现CPU窗口,如何解决,谢谢。
- 如何在FORM一启动SHOW的时候,就触发FORM上的一个控件的执行?
- 怎么区分编译状态还是运行状态。
- 如何获取一台电脑上多个网卡的ip地址?
- 大家帮我看看,这个三层结构的数据库访问为什么会出先这等怪事(这是李维书上的例子哦)
- 很初级问题(关于数据库),请各位帮忙!
- 求助:如何做“WINDOW优化大师”式窗口?
- 对于学习Delphi热的一点困惑.(以下论点均为据说)
- 用SpeedButton 控件 Flat属性设置成true 移上去它凸起来,但移走时它不凹下去,是怎么回事
- 为什么我的模块都不通,用表打是好的,接水晶头也是好的?
wVersionRequested:Word;
WSAData:TWSAData;
nSockErr:integer;
begin
wVersionRequested:=MakeWord(1,1);
nSockErr:=WSAStartup(wVersionRequested,WSAData);
if (nSockErr!=0) then
begin
ShowMessage('不能用1.1版');
halt;
end;
end;
另外,可以直接用
if WSAStartup(2,WSAData)=0 then
begin
// add your code here
end;
上面的是判断能不能启动dll文件
ShowMessage('不能调用dll');
if ((LOBYTE(WSAData,wVersion)<>1) or ((HIBYTE(WSAData.wVersion)<>1) then
begin
//加上出错提示
end;