as long as you leave it there... otherwise it will probibly last up to 48 hours depending on what you are doing... it will come off if you wash your hands once or twice...
That will depend on the type of gun (revolver versus rifle, etc) how many times it was fired, and what the hands were exposed to after the firing. It is typically measured in days.