Alright, this is rather complicated so bear with me.
First, you need your wc3 ft installation to be patched to 1.18a and have the nocd war3.exe in place.
You also need the orginal uncracked war3.exe that was patched to 1.18a but won't obviously work because it wants a valid cd before it will launch.
Name the uncracked 1.18a war3.exe fez.exe, then put it in the warcraft 3 ft folder with all the other files.
Now you make two batch files.
Name the first batch file wc3.bat
the following text needs to be inside it:
cd\
cd "C:\Program Files\Warcraft III"
start war3.exe
rename war3.exe pie.exe
rename fez.exe war3.exe
exit
Make sure to change the target directory to wherever you have your warcraft installed at so it finds it if it is not in your c drive or whatever.
Now the second batch file needs to be named wc3reset.bat
Put the following text inside it:
cd\
cd "C:\Program Files\Warcraft III"
rename war3.exe fez.exe
rename pie.exe war3.exe
exit
Once again change the target directory to wherever you have your wc3 installed at.
Now run the first batch, it should pop you into game, then logon to b.net, dl the 1.19 patch, and boom it will install it without giving you any errors :P
Then all you have to do is run the wc3reset batch, the run the wc3 batch to pop into 1.19 and play.
Just remember after exiting the game to run the wc3reset batch to reset the file names and there you have it.
Enjoy.
-Edit and addendum:
Make sure the two .bat files are also in the warcraft 3 folder.