The deal is worth $1.75 million, an NHL source confirmed with ESPN.com.
The 36-year-old Horcoff played the past two seasons with the Dallas Stars, scoring 11 goals in 76 games last season. He gives the Ducks insurance at center following news earlier this month that Nate Thompson would be out five to six months after having surgery to repair two tears in his left shoulder.
Horcoff is closing in on 1,000 career regular-season games played in the NHL with the Stars and Edmonton Oilers. He has 180 goals and 316 assists in 949 games.