NetTalk Central

Author Topic: Error while moving NTWS from 8.59 to 11.53  (Read 3023 times)

hectorp

  • Newbie
  • *
  • Posts: 47
    • View Profile
    • Email
Error while moving NTWS from 8.59 to 11.53
« on: November 19, 2021, 07:01:54 AM »
Hello,

The compiler is throwing some errors while compiling NTWS app from 8.59 to 11.53 in Clarion 11.
With jfile 2.22 and StringTheory 3.38

Any idea on how to solve them?

Written code is "MyServer.WholePacketUseLengthField = 1" and "MyClient.WholePacketSend(SendData, len(clip(SendData)))"

Errors are;
"Field not found: WHOLEPACKETUSELENGTHFIELD"
Unknown procedure label
"Field not found: WholePacketSend"


Alberto

  • Hero Member
  • *****
  • Posts: 1873
    • MSN Messenger - alberto-michelis@hotmail.com
    • View Profile
    • ARMi software solutions
    • Email
Re: Error while moving NTWS from 8.59 to 11.53
« Reply #1 on: November 19, 2021, 11:31:25 AM »
Take a look at the dosc...

https://www.capesoft.com/docs/NetTalk11/NetTalk10Upgrade.htm

NetWholePacket
The WholePacket functionality has been refactored to make it easier to use, and more consistent with the other classes. If you are using WholePacket functionality in your program then you will need to tweak your code as described below. The changes have been carefully engineered to generate compile errors, so once your program compiles error free then all the necessary changes should have been made.
The WholePacket functionality has been removed from the Netsimple class and moved to its own class, NetWholePacket. If you have an object, using NetWholePacket then change the class it uses from NetSimple to NetWholePacket.
Whole packets used to flow through the Process method, with a packet type set to NET:SimpleWholeDataPacket. The code in here should be moved to the PacketReceived method. This method is only called when a complete packet arrives.
The use of WholePacketQueue.WholeBinData and WholePacketQueue.WholeBinDataLen in PacketReceived has changed. You should now use self.WholePacket.GetValue() and self.WholePacket.Length()
The WholePacketSend method has been renamed to Send.
The WholePacketUseLengthField has been renamed to UseWholePacket. Instead of setting this to 1, or true, it should be set to netWPP:LengthPrefix.
WholePacketUseBigEndian property renamed to UseBigEndian
WholePacketLengthInclusive property renamed to LengthInclusive
-----------
Regards
Alberto