HOUSTON -- When C.J. Wilson wasn't ducking for cover on the mound, he was helping the Texas Rangers at the plate.
Wilson hit a leadoff triple, and Josh Hamilton homered in a three-run third inning as the Rangers beat the Astros 7-3 on Tuesday night for their seventh straight victory at Houston.
Wilson was hit in the foot in the second inning and on the tip of his pitching hand in the fourth. The second shot forced him to change his pitching plan before he shut down the slumping Astros.
Houston has lost four in a row overall and seven of eight.
"I utilized the awesomeness of the defense," Wilson said. "I couldn't throw a sinker after I got hit in the finger. I had to adjust. I couldn't throw a sinker the rest of the game.
|More on Rangers ar Astros|
"That's a huge pitch for me, and to take that out of the equation really puts me behind. When it hits you in the fingertip it goes numb. There's not much meat there."
Wilson, 0 for 5 as a hitter in five-plus American League seasons, tripled to deep center to start the Rangers' rally in the third. He scored on Ian Kinsler's grounder for a 1-1 tie.
Hamilton's eighth homer of the season, hit over the center field fence, put Texas ahead 2-1. Adrian Beltre singled and Michael Young extended his hitting streak to 13 games with a single before a hit by Nelson Cruz gave the Rangers another run.
Texas also got homers from Mitch Moreland in the eighth and Kinsler in the ninth, both off Aneury Rodriguez. Kinsler went 3 for 5 and drove in three runs.
Wilson (8-3) gave up two runs and seven hits in seven innings to win his fourth straight decision. Neftali Feliz got the final out for his 15th save in 19 chances.
Astros rookie Jordan Lyles (0-3) allowed five runs and 10 hits in six innings.
"We stayed in the big part of the field off Lyles," Rangers manager Ron Washington said. "That's where you've got to take him. If you try to pull him, you're going to be in trouble. The guy spins the ball well. He keeps it down and hits his spots."
Lyles is still seeking his first major league victory.
"It just didn't fall my way tonight, everything, from the first inning," Lyles said. "I walked the first batter of the game. I don't know if I can recall ever doing that.
"I didn't really bounce my curveball. Guys weren't biting on it. If they were balls down in the zone where they could have put the bat on the ball, they did that."
Houston manager Brad Mills was ejected in the sixth inning after the third double play of the game against the Astros. He argued a close call at first base by umpire Bob Davidson.
Rangers shortstop Andres Blanco made a throw -- while sitting -- to second baseman Kinsler, who threw to first baseman Michael Young to complete the double play.
"We had a chance to come back and do something good about this game," Astros bench coach Al Pedrique said. "Lyles threw the ball well except for the two innings with two outs. He felt short of making a quality pitch and we were one or two hits away from having big innings. We feel short."
Texas scored two runs in the sixth on a double by Yorvit Torrealba and a triple by Kinsler.
Houston took a 1-0 lead in the first inning. Michael Bourn reached on a bunt single, stole second, went to third on a wild pitch, and scored on Carlos Lee's sacrifice fly. Bourn tripled in the sixth and scored on a single by Hunter Pence.
Pinch-hitter Brett Wallace added an RBI single for Houston in the ninth.
Wilson, who improved to 3-1 against the Astros, hit the first triple by a Rangers pitcher since Kenny Rogers had one against Florida on June 11, 2005. ... Houston reliever Brandon Lyon will undergo shoulder surgery on Thursday. His return won't be determined until after the surgery. The Rangers are 6-6 in interleague play this season. Injured Texas pitcher Scott Feldman will start Friday for Triple-A Round Rock. The Rangers are 35-15 in Wilson's last 50 starts.