آقای کشاورز . من اونارو خوندم . هم Mastering Delphi 7 وهم developers guide d7 مطالبی دارن . من هم تونستم باهاشون کد بنویسم . الان دارم یه training برای این قضیه upload می کنم و لینکش رو می ذارم اینجا . که توش برای ساخت یه chat server توضیح می ده . من اغلبشو می فهمم . اما وقتی کدش رو خودم نوشتم error گرفتم که از یه خطی error می گیره . برنامه خودمم می ذارم اینجا . خیلی ساده است و کوتاه . لطفا اگه ممکنه کمک بفرمایید
unit ServerController;
interface
uses
SysUtils, Classes, IWServerControllerBase, IWBaseForm, HTTPApp,
// For OnNewSession Event
UserSessionUnit, IWApplication, IWAppForm,SyncObjs;
type
TIWServerController = class(TIWServerControllerBase)
procedure IWServerControllerBaseNewSession(ASession: TIWApplication;
var VMainForm: TIWBaseForm);
procedure iwservercontrollerbasecreate(sender:TObject) ;
procedure iwservercontrollerbaseDestroy(sender:TObject);
private
fmessages:TStringList;
fmessagelock:TCriticalSection;
public
function getmessage: string;
procedure addmessage(str:string);
end;
function UserSession: TIWUserSession;
function IWServerController: TIWServerController;
implementation
{$R *.dfm}
uses
IWInit, IWGlobal;
function IWServerController: TIWServerController;
begin
Result := TIWServerController(GServerController);
end;
function UserSession: TIWUserSession;
begin
Result := TIWUserSession(WebApplication.Data);
end;
procedure TIWServerController.IWServerControllerBaseNewSessi on(
ASession: TIWApplication; var VMainForm: TIWBaseForm);
begin
ASession.Data := TIWUserSession.Create(nil);
end;
function TIWServerController.getmessage: string;
begin
fmessagelock.Enter;
try
result:=fmessages.Text;
finally
fmessagelock.Leave;
end;
end;
procedure TIWServerController.addmessage(str:string);
begin
//
fmessagelock.Enter;
try
fmessages.Add(str);
finally
fmessagelock.Leave;
end;
end;
procedure TIWServerController.iwservercontrollerbasecreate(s ender:TObject) ;
begin
//
fmessages:=TStringList.Create;
fmessagelock:=TCriticalSection.Create;
end;
procedure TIWServerController.iwservercontrollerbasedestroy( sender:TObject) ;
begin
//
end;
initialization
TIWServerController.SetServerControllerClass;
end.
تو این unit من یه تابع getmessage نوشتم و از تو unit اصلی برنامه اونو از تو onasyncclick یه دکمه صدا می زنم . در واقع getmessage باید یه رشته رو به شکل global واسه همه بفرسته تا فضای چت رو بسازه . می شه راجع به این توضیح بدین . تو asp یه object به اسم application بود که متغیرایی که توش تعریف می کردیم global بود . تو اینتراوب چطور ازش می شه استفاده کرد . ظاهرا این object ها رو اینتراوب هم داره . اما استفاده اش چطوریه ؟
لینک training
http://rapidshare.com/files/27711543...en_IW.zip.html
اینم لینک برنامه خودم که تو rad studio 2010 نوشته شده
http://rapidshare.com/files/27711624...ttest.rar.html
لطفا راهنمایی بفرمایید