well first of all how are you applying your textures?
is it a projection/plainer or is it a cylindrical map?
because, here is the method I normally use for applying textures to cylindrical surfaces is. Its not that hard so I will try to explain it to you.
first you do the UVW maping modifier, go into the parameters rollout then change the check box to cylindrical. Then it will show orange barrs around the object in a cylindrical shape.
Then you put a new modifier on called 'unwrapUVW' go under the parameters role out and click edit. what you see is all of the verticies of the cylinder over your texture maping, exept... Unwraped. Now you select all verticied and shrink them to fit within the texture that you have designated for your building, and if you keep the verticies of the building straight, and the texture map is straight, then every thing should be STRAIGHT!
Note that sence you are now wraping the texture map around the building the textures may look enlarged, so you might need to 'tile' the texture of the building on your textures.
hope this helpes you a little
if you have any questions just ask