It took me a while to determine the cause of the problem and to find a solution and I post it here for the benefit of others who find the same problem.
The solution is in the configuration of the wireless card driver. In Windows XP go to the Device Manager, right-click the wireless device, click properties, advanced, channel planand in the drop-down menu select a country like France which allows the upper channels. That's it. The card should now be able to connect to access points on those channels.
The interface you see will depend on the particular driver and wireless card and may be different than the one shown in the illustration but you should look for something like "channel plan" or "country" or something similar.
In other Windows versions I suppose the procedure is similar in concept but I cannot provide the details as to how to do it.
Linux
My laptop has an internal Intel-3945 wifi card and I have not been able to get it to work in the upper channels in Linux. Again, it depends on the drivers and I do not know enough about Linux to mess about too much with drivers. There's plenty of discussion about this problem in Linux to be found on the Internet but it is all quite esoteric and every adapter seems to be a different case. On the other hand my RTL8187 external USB wireless adapter works fine in the upper channels with no tweaking needed. I always carry an external adapter anyway because internal adapters are not very good when confronted with weak signals and an external adapter will perform many times better.