"does not work" is not a really helping anyone.
You need to compare apples to apples: compare the actual "working" packet data on the wire with "not working" and find a difference. You can use a switch in port mirror mode or ETAP in Debug mode to trace that data and compare.
What I mean by doesn't work, is the printer ignores the message if sent by the PLC in TCP client mode, but responds fine to PuTTy. The eweb and all other server test apps all respond fine to both PLC and PuTTy.
If PuTTy is also using TCP even in RAW mode, then I'll try again to capture both packets and see what's different. BUT when I use PuTTy RAW mode, then wireshark does not see a single thing for that port number. I have no way to capture something it doesn't see. I know nothing else is using port 1024.
You said the previously captured packet from the PLC looked fine, that's all I'm doing with both devices but one of them is being ignored by the printer and the other isn't.
I need to find out somehow what is different with PuTTy RAW....but wireshark sees nothing when the filter is set to that IP address and port, or even just the port itself with no IP..