Here's your problem:
The desktop has an IP address 192.168.1.2, the only way to reach that address is over a bit of wire from the laptop.
The bit of wire in the laptop has IP address 192.168.1.1, however it also has a wireless interface with address 192.168.1.64 and the network routing is configured to send all traffic to 192.168.*.* over the wired interface, but then there's another lower level route to sent all traffic to 192.168.1.* over the wireless. So anything trying to get to 192.168.1.2 will go out of the wireless interface and never reach the desktop.
I think you have a couple of options.
1. Choose a different subnet for BOTH of the wired interfaces, e.g. set them up as 192.168.2.1 and 192.168.2.2 that way the 192.168.2.* routes will be over the wired interfaces and 192.168.1.* will stay over the wireless interface.
2. Add a static route on the laptop to route 192.168.1.2 out of the wired interface on the laptop, something like:
route add 192.168.1.2 dev eth0
note this will add the route dynamically and it won't persist over a reboot or network restart, but if this works we can deal with that problem next.
I have been touched by his noodly appendage.