-
May 18th, 2011, 09:24 AM
#1
Thread Starter
New Member
Converting source from Delphi to VB
Hello,
It's been a while (10+ years) when I last coded anything small in Delphi and most of last 5-6 years I have been doing just VB6.
So I am looking for some help of anyone to convert the following source code from Delphi into VB.
Actually the source code of Delphi is sending and receiving come commands over LAN using TCP and in binary/decimal format. Although there are plenty of comments in code, I am still unable to get it into right point as the Delphi is working and my VB code is not working as I am not getting the right values.
Code:
-------------------------------------
We use TrtcTCPserver from http://www.realthinclient.com/
to listen in 2666 port like the above.
a:= TrtcTCPserver.create(Nil)
a.serverport := 2666;
a.listen;
this is the code for ongetdata event from TrtcTCPServer
// *****************************************
procedure TNovo.DoOnGetData(Sender: TRtcConnection);
var
S: AnsiString;
nId,nAmount,nBet:Integer;
isStartPressed:Boolean;
begin
if not Sender.inMainThread
then Sender.Sync( DoOnGetData )
else begin
s := Sender.Read; <== here get the connection data
BinaryToValues( s , nId , nAmount ); <== and convert it to integer
// right after the client connect to server
// send to sender ( in binary ) decimal 1
// a use a function like this Sender.Write( ValuesToAnsi(1,0)
// after that client reply with the following..
Case FSendFlag of
ssConnected: // sends 1<2 ,0<1, 5<6 , 6<7
begin
Case nId of
2: begin <== if we receive 2 send 0 and wait for 1
Sender.Write( ValuesToAnsi(0,0) ); // waits for 1
end;
1: begin <== if we receive 1 send 6 and wait for 6
// here the var nAmmount = current credits
GM.Credits := nAmount;
Sender.Write( ValuesToAnsi(5,0) ); // waits for 6
end;
6: begin <== if we receive 6 send 6 and wait for 7
// here the var nAmmount = Total IN
GM.LocalIn := nAmount;
Sender.Write( ValuesToAnsi(6,0) ); // waits for 7
end;
7: begin <== if we receive 7 send nothing and terminate the chat
// here the var nAmmount = Total OUT
GM.LocalOUT := nAmount;
FCheckTimer.Enabled := True;
FSendFlag := ssIdle;
end;
end;
end;
// if you send 0 like this Sender.Write( ValuesToAnsi( 0 , 0 ) )
// you get result like this nid =1 nAmount = current credits
ssCheck: // sends 0 < 1
begin
if nID=1 then begin
OldCredits := 0;
GM.Credits := nAmount;
FSendFlag := ssIdle;
end;
end;
// to insert credits to send 2 and the credits to be inserted
// like this Sender.Write( ValuesToAnsi( 2 , 2000 ) )
// this insert 2000 credits and if everything is ok returns 3
ssIN: // sends 2, nAmount < 3 , 0<1
begin
Case nId of
3: begin <== then i resend 0 in order to recheck the credits
Sender.Write( ValuesToAnsi( 0 , 0 ) ); // waits for 1
end;
1: begin
OldCredits := nAmount;
GM.Credits := nAmount;
FSendFlag := ssIdle;
end;
end;
end;
// to remove credits you must send 4 and you get reply 5
ssOUT: // sends 4< 5 , 0<1
begin
Case nId of
5: begin <== if deleted check egain the current credits
Sender.Write( ValuesToAnsi( 0 , 0 ) );
end;
1: begin
OldCredits := nAmount;
GM.Credits := nAmount;
FSendFlag := ssIdle;
end;
end;
end;
end;
end;
end;
**************
Thanks in advance for all who take time to read this and to help me!
-
May 21st, 2011, 10:33 AM
#2
Thread Starter
New Member
Re: Converting source from Delphi to VB
nobody available for some help ? Please ?
Tags for this Thread
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|