求,该怎么处理


本菜鸟学了些vc++,现在这边想问个问题,
vc中的消息循环不是是个死循环吗,直到有WM_QUIT消息的出现才会出现退出循环的条件,那么这边当有消息出现的时候,是谁来将消息加入到消息队列,这边应该是系统吧?而且也是系统来调用窗口过程函数wndproc吧?假如说不是系统来调用的话,程序应该是要有两个线程吧,一个来进行消息循环,一个来响应消息?是这样吗?

还有一个于技术无关的问题,发现身边学习vc的人很少,java大行其道,vc没用了么?或者说vc现在能干些什么,能用来做些什么软件?能找着工作么?

------解决方案--------------------
用心坚持~
TranslateMessage (&msg) ; 
DispatchMessage (&msg) ;
一个是将消息转化,另外一个就是消息分发以进行消息的处理。 
当出现消息是应该是系统添加到消息队列的。然后你一直在GetMessage();
Am i right?