SharePort also allows (trusted) friends on my network to fire off files to a printer connected to my router via USB. The beauty of SharePort is that it knows when a print job is finished and automatically disconnects users from the USB-attached printer.
The pins on the Arduino can be configured as either inputs or outputs. This document explains the functioning of the pins in those modes. While the title of this document refers to digital pins, it is important to note that vast majority of Arduino (Atmega) analog pins, may be configured, and used, in exactly the same manner as digital pins.
The voltage level output of a digital output pin is the same voltage that is powering the chip on the board. Most arduino boards use a +5vdc for the Vcc value, so output pins go from 0 to just short of +5vdc, however if the chip is powered from a 3.3vdc Vcc value then the output pin will go up to just short of 3.3vdc.