Your real question is how to control a 12V 4A motor from a 0-5V logic output such as from a arduino.
Probably the simplest way is to use a relay. Use a relay with a 5V coil and a low side NPN to drive it:
This can support relays that take up to 100mA or so to drive, which should be more than enough for relay run from 5V that can switch what you want. The other side of the relay is just like a ordinary switch. You put it in series with the 12V supply and the motor.
There are fancier ways to drive the motor, but this is simple, robust, and meets all the specs you provided.
Added:
You now say you want to control a 12V 500mA solenoid in stead of a 12V 4A motor. That is just like driving a relay, except in this case the current is higher and it will be powered from the 12V supply instead of the 5V supply. For the different supply the only change is to connect the high side of the coil and diode to the new supply.
The higher current procludes the relay drive circuit shown above. If bipolar transistors are used, more current gain is required than you can reasonably expect from a single part. This can be dealt with by using two transistors. I would just use a single logic level FET:
However, there are lots of ways to implement a low side switch for 12V and 500mA that is driven from a logic output.
A USB port can only supply 5V at 500mA, which will not likely power more than two 1 watt LEDs (plus a resistor for current control.) It is hard to say without the datasheet for your LED.
This Question may answer part of your question however I saw no discussion of current limiting.
Also there are numerous tutorials on converting a ATX power supply to a bench top power supply and that may be the way to go depending on what you are trying to do. Just One Example He also discusses how to connect LEDs with current limiting resistors.
No matter what you choose for power, at some point you will need current limiting (resistor) to prevent your LEDs from attempting to pull too much current which leads to magic smoke.
Frankly, I would suggest a constant current LED driver, many can be found on eBay.
Best Answer
Yes, you can use a PC power supply as a general 12V supply, but there may be some extra requirements.
Some early PC supplies required a substantial minimum load on the 5V output to stabilise the supply. I believe this is less common now. If it was a requirement you could "waste" some 5V output energy by connecting a light bulb or resistor or other suitable load.
PC power supplies may often have coupled output inductors to increase switching noise filtering capability. Noise level and voltage accuracy may suffer using 12V only, but with motors as a load this should not be a major issue.
So - yes, it will probably work OK. Trying it is easy enough. You don't need a motor controller to start - just connect the motor to the 12V output wide open throttle mode ...). If the 12v supply does not sag appreciably you can probably make it work.
You need to know about PC power supply starting link, power good, ... bu this is all well covered on the internet.