There's two ways to do this, it's a bit tricky at first since each method thinks outside the box. But both methods are in the forum here somewhere too, try to search for 'chain'. I'll just do a real quick summary below because I'm sure to get some steps wrong without reviewing step by step.
Method #1 - the distorted circle:
In general, the idea is you make a model that's a perfect circle shape with the chain pieces arranged along the edge of the circle. You add two bones in the middle, one just for rotating, the other attached to all the CPs in the chain, one bone has to be a parent of the other, I forget which. Then you create an Action, and a distortion object, and you distort this circle into your chain shape. Now in the Chor you add the circle chain model, drop the Action on it to distort it into a chain shape, then just rotate the rotate bone, it will rotate like a simple circle but constrain itself to the distorted chain shape. This method is the easiest, but has the problem that your chain links will get slightly distorted as they go around corners, so it works better for belts than chains.
Method #2 - the double path:
Have each chain link follow a path in the shape of the chain. The trick here is you need to have the path twice as long as normal, so if your path is a circle, have the path wrap itself around the circle shape twice, I separate them by a pixel or two so you can zoom in and see each section of spline as needed. This way, each chain link you contrain to the path can complete the path using only 50% Ease in an Action instead of 100%. This gives you the room to add all the chain links without bunching up at the end (which is what happens when you have to use 100% Ease to get to the end of the chain).
Again, this is just an overview! Try digging into each discussion on the forum and if you are stuck, I'll try to help further.