delphi7 在DLL中使用TIdTCPClient问题,连接不上服务器
来源:百度知道 编辑:UC知道 时间:2024/05/29 14:09:46
library Project2;
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdUDPServer, IdTCPServer, Sockets, IdUDPBase, IdUDPClient,
IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, ExtCtrls,
StdCtrls, Buttons, ComCtrls, IdThreadMgr, IdThreadMgrDefault, ScktComp,
IdIPWatch;
{$R *.res}
function linkserver():integer;stdcall;
var
IdTCPClient1.TIdTCPClient;
begin
IdTCPClient1.host:='127.0.0.1';
IdTCPClient1.port:=8000;
IdTCPClient1.connect(5000);
id IdTCPClient1.connected then
showmessage('已链接')
else
showmessage('未链接');
end;
exports
linkserver;
begin
end.
以上是源码,服务器程序没问题,我做了个应用程序,都能连上,并且能返回数据。。 做个DLL就不对了,请高手帮忙解决一下。。。
在线等。。盼。。。。。。。。。。
谢谢!!!!!!!!!!
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdUDPServer, IdTCPServer, Sockets, IdUDPBase, IdUDPClient,
IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, ExtCtrls,
StdCtrls, Buttons, ComCtrls, IdThreadMgr, IdThreadMgrDefault, ScktComp,
IdIPWatch;
{$R *.res}
function linkserver():integer;stdcall;
var
IdTCPClient1.TIdTCPClient;
begin
IdTCPClient1.host:='127.0.0.1';
IdTCPClient1.port:=8000;
IdTCPClient1.connect(5000);
id IdTCPClient1.connected then
showmessage('已链接')
else
showmessage('未链接');
end;
exports
linkserver;
begin
end.
以上是源码,服务器程序没问题,我做了个应用程序,都能连上,并且能返回数据。。 做个DLL就不对了,请高手帮忙解决一下。。。
在线等。。盼。。。。。。。。。。
谢谢!!!!!!!!!!
如果可以,希望能加我百度好友,共同学习。
DLL文件:
library DLLDPR;
uses
ShareMem,
IdTCPClient;
{$R *.res}
function linkserver(host: string; port: integer): boolean;
var
tcp: TIdTCPClient;
begin
tcp := tidtcpclient.Create(nil);
tcp.Host := host;
tcp.Port := port;
try
tcp.Connect(1000);
except
end;
result := tcp.Connected;
end;
exports
linkserver;
end.
EXE文件
function linkserver(host: string; port: integer): boolean;
external 'dlldpr.dll';
procedure TForm1.Button1Click(Sender: TObject);
const
ba: array[boolean] of string = (&