Converter objeto String ou Char em Keys

Se eu usar o seguinte código:

for (int i = 0; i < text.Length; i++)
    {
        char c = text[i];
        Keys k = (Keys)(byte)c;
        MessageBox.Show(c.ToString() + "|" + k.ToString());
    }

Posso obter uma conversão correta apenas para letras maiúsculas. O problema é que também preciso replicar caracteres minúsculos e estou recebendo erros de conversão neles. Por exemplo, 'e' converte para 'NumPad5', onde 'E' converte corretamente para 'E'. Como ataque isso? Vou pegar seqüências de caracteres de entrada e criar pressionamentos de tecla virtuais para um macro player que estou tentando desenvolver.

questionAnswers(3)

yourAnswerToTheQuestion