First thing's first -- you mentioned that you haven't gained any weight. As simple as it sounds, you need more calories. Once you're eating enough calories you will gain weight. As for whether it's fat or muscle depends on a lot of things.
You asked about protein shakes. I'll just say that there's nothing wrong with drinking them. Their biggest advantage is the convenience. That, and whey protein is a high quality protein. Then again, so are eggs. But if you're having trouble getting enough protein with regular food then a protein drink/shake is a good convenient way to supplement your diet.
A few more tips...
Eat 6 times a day, with protein in every meal.
By eating smaller meals more frequently this will allow you to absorb more nutrients from your food. More than that, as you get used to it, this may even allow you to eat more calories throughout the day because each meal doesn't have to be so big.
Aim for a 30% protein / 40% carbohydrate / 30% fat split with your diet.
This is actually a lot of protein, but your body needs lots of protein when you're weight training. I'd suggest using this simple calorie calculator.
Lift weights 3 days a week.
It doesn't sound like much. And in fact modern bodybuilders will workout more often than this. But then again they also take steroids which reduces recovery time. Before the days of steroids, Steve Reeves was one of the more impressive bodybuilders around. He wrote a book called, "Building the Classic Physique," and in the book even he suggested a 3 day-a-week routine. In fact, the book is a good training guide even today.
Diet is a huge part of this, of course. When I first started my weight training routine and 6 meal-per-day diet in 2005 I was 6'5" and 140 pounds @ 7% bodyfat. Yeah, pretty skinny. I was a real gym rat for years before this but had very limited success. I simply hadn't figured out my diet, and I was working out way too much and not allowing sufficient recovery time.
So anyway in 2005 I began my new approach. Now, I have a ridiculously fast metabolism. This I know. But I hadn't really counted calories to determine what it would actually take to gain weight. Well I found that I needed around 3,500 to 4,000 calories a day to gain weight while working out 3 days a week. So as it turned out, a big part of my training was simply building my appetite to handle that much food. I was consistent and managed to put on 20 pounds of muscle and 10 pounds of fat in the first 10 months. I gained a bit more fat than I would've liked since I ate a little too much fast food, but nevertheless those results were by far the best I ever had.