For inputs you have 2 options:
- Listen for WM_KEYDOWN and WM_KEYUP events.
- Use Direct Input. (my recommendation). it is keyboard agnostic so WASD will be mapped to the same keys even on AZERTY keyboards.
Google around for Direct Input tutorials.
If you need text input, don't use neither of those. use the WM_CHAR event.