It's not as simple and straight forward as you might think or wish. And of course the users would have to first have the proper arduino USB driver installed to recognize their board when plugged in. And not every user will have the same com port number assigned to their arduino board. And if users have different arduino board types (say Uno Vs Mega) you will have to be sure you send each user the proper unique .hex file.
Many posters here have asked for a method like this and usually are told they will have to find and send the .hex file of the compiled sketch and have the users install the arduino IDE so they will have a copy of AVRDUDE and it's support files and some kind of batch file to run make scripts, etc. At least that is how I recall all the messy details.
I don't recall ever seeing a complete procedure here listed out step by step and I don't even know if the same exact procedure would be identical for all possible PC OS systems, Windows, Apple, and Linux.
Good luck;
Lefty