I think they were wary of a roster slot and guaranteed salary to a rookie they couldn't entirely count on being good. It's easy to say they should have picked McCain or Knecht when there were a lot of players available there and it could have just as easily have been Williams or Buzelis. We don't get to pick players in retrospect. If they passed on Dillingham, they were likely going to pass on McCain as well. Both small no-defense guards.
As far as using the pick, the cap space they had was pretty much exactly enough to absorb Chris Paul's salary from Golden State. Maybe throw a couple second round picks or whatever. IMO this was their #1 goal, to get veterans, and taking the pick would mean doing so was impossible as far as CP goes. It turns out not only did they get CP but they still got another veteran out of that cap space.
So... the calculus is this... [a swing at one of a number of rookies, many of whom are not great] vs. Chris Paul, Harrison Barnes + future pick, future swap, future swap.
Personally, I think the long-term boost CP and HB will provide this team even with one or two years with them will be more valuable than even Knecht or McCain would be. If you factor in the likelihood that the pick would have been someone else, this is a no-brainer.