Could someone explain to me the advantages or disadvantages of 'pushing' an Exe down from the server to the local machine at each restart ?

Actually I have 'startup' programs that do this now, but I only did it for program updating purposes. For a program that I change that has a lot of users, I can't recompile the Exe on the server while a user is running the application.
So I push it down to their C:\TEMP directory and run the Exe from there.

I'm just curious if I should be doing this for ALL of my programs, or for the ones that aren't used or changed a lot, it won't really matter ?