socket问题 为什么别人的socket控件 ClientSocket 和 ServerSocket里面有 ClientSocket.socket.send这样的而我写到 ClientSocket.的时候就会报错,错误如下[Pascal Error] pay.pas(1): Unable to invoke Code Completion due to errors in source code 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 pay.pas这个文件中别的地方代码有点问题或者复合工程的设置查询的路径不对 請先檢查你的pay.pas檔的版本,如果有缺少,請拜google大神,謝謝,再沒有我再寄給你吧。 unit pay;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, RzPanel, RzSndMsg, RzBorder, RzPopups, RzBHints, RzStatus, StdCtrls, RzLabel, Menus, Sockets;type TForm1 = class(TForm) RzStatusBar1: TRzStatusBar; RzStatusPane1: TRzStatusPane; RzClockStatus1: TRzClockStatus; RzLabel1: TRzLabel; MainMenu1: TMainMenu; N1: TMenuItem; ListenItem: TMenuItem; ConnectItem: TMenuItem; Disconnect: TMenuItem; Exit: TMenuItem; ClientSocket: TTcpClient; ServerSocket: TTcpServer; Memo1: TMemo; Memo2: TMemo; procedure ListenItemClick(Sender: TObject); procedure ConnectItemClick(Sender: TObject); procedure Memo1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ListenItemClick(Sender: TObject);begin ListenItem.Checked := not ListenItem.Checked; if ListenItem.Checked then begin ClientSocket.Active := False; ServerSocket.Active := True; end else begin if ServerSocket.Active then ServerSocket.Active := False; end;end;procedure TForm1.ConnectItemClick(Sender: TObject);varserver:string;beginif ClientSocket.Active then ClientSocket.Active := False;if InputQuery('计算机将连接到', '服务器地址:', Server) thenif Length(Server) > 0 thenwith ClientSocket dobeginRemoteHost := Server;Active := True;ListenItem.Checked := False;end;end;procedure TForm1.Memo1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);begin if Key = VK_Return then if IsServer then //这里报错 ServerSocket.Socket.Connections[0].SendText(Memo1.Lines[Memo1.Lines.Count - 1]); //这里报错 else ClientSocket.Socket.SendText(Memo1.Lines[Memo1.Lines.Count - 1]); //这里报错end;end. Sockets 是叫 winsocket2.pas 吧 你的IsServes在哪??问题估计在这玩意上边吧 isservers是什么东西,我不知道,我以为默认的有这个属性呢.. 不是说了问题在IsServers上了么???这应当在某个地方有声明啊, 这个声明以后还是不行我刚网上查了一下,我的代码中是TTcpClient控件ClientSocket: TTcpClient;ServerSocket: TTcpServer;而他们的是ClientSocket: TTcpClientsocket;ServerSocket: TTcpServersocket;这是为什么?我按照网上说的方法,在compoent---install packages---dclsocket70.dpl安装了以后Inter里面还是没有多出来TTcpClientsocket控件 也就是说,我的delphi7没有TTcpClientsocket控件只有TTcpClient,这个东西 问题解决了,是因为我装过一个Jsocket的控件,所以导致D7本身的socket控件不在原来的位置了。 同时选取多个相同标签的问题。 付费求助:PDF阅读器 光盘 加密狗 帮忙看下这个程序的错误。。。。。 datagrid或datagrideh能否实现分也显示数据呢 初学者,问几个关于TreeView和ListView的简单的问题,请进! procedure TForm1.Button1Click(Sender: TObject); 求助斗地主算法,急急急 treeview 大家是怎么做进度条的 再次提问,如何取本地的IP地址 C/S模式的客户端被攻击,各位有什么看法 CheckListBox实现全选
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, RzPanel, RzSndMsg, RzBorder, RzPopups, RzBHints,
RzStatus, StdCtrls, RzLabel, Menus, Sockets;type
TForm1 = class(TForm)
RzStatusBar1: TRzStatusBar;
RzStatusPane1: TRzStatusPane;
RzClockStatus1: TRzClockStatus;
RzLabel1: TRzLabel;
MainMenu1: TMainMenu;
N1: TMenuItem;
ListenItem: TMenuItem;
ConnectItem: TMenuItem;
Disconnect: TMenuItem;
Exit: TMenuItem;
ClientSocket: TTcpClient;
ServerSocket: TTcpServer;
Memo1: TMemo;
Memo2: TMemo;
procedure ListenItemClick(Sender: TObject);
procedure ConnectItemClick(Sender: TObject);
procedure Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ListenItemClick(Sender: TObject);
begin
ListenItem.Checked := not ListenItem.Checked;
if ListenItem.Checked then
begin
ClientSocket.Active := False;
ServerSocket.Active := True;
end
else
begin
if ServerSocket.Active then
ServerSocket.Active := False;
end;
end;procedure TForm1.ConnectItemClick(Sender: TObject);
var
server:string;
begin
if ClientSocket.Active then ClientSocket.Active := False;
if InputQuery('计算机将连接到', '服务器地址:', Server) then
if Length(Server) > 0 then
with ClientSocket do
begin
RemoteHost := Server;
Active := True;
ListenItem.Checked := False;
end;
end;procedure TForm1.Memo1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if Key = VK_Return then if IsServer then //这里报错
ServerSocket.Socket.Connections[0].SendText(Memo1.Lines[Memo1.Lines.Count - 1]); //这里报错
else
ClientSocket.Socket.SendText(Memo1.Lines[Memo1.Lines.Count - 1]); //这里报错end;end.
问题估计在这玩意上边吧
IsServers上了么???
这应当在某个地方有声明啊,
ClientSocket: TTcpClient;
ServerSocket: TTcpServer;而他们的是
ClientSocket: TTcpClientsocket;
ServerSocket: TTcpServersocket;
这是为什么?我按照网上说的方法,在compoent---install packages---dclsocket70.dpl安装了以后Inter里面还是没有多出来TTcpClientsocket控件