いいじまです。

> if (XLookupString(&e, string, 10, &key, NULL) == 1); //←このセミコロン
> switch(key)
> {

ここですが、if 文の括弧を閉じた後のセミコロンは削るのが正しいはずですよ!
gcc -Wall とか書いて、警告は出ませんか?

========================================================================
飯嶋 浩光 / でるもんた・いいじま   http://www.ht.sakura.ne.jp/~delmonta/
IIJIMA Hiromitsu, aka Delmonta           mailto:delmonta@ht.sakura.ne.jp

───【宣伝/ADVERTISEMENT】──────────────────────
fj.os.ms-windows.* 配下の一部を整理する提案をしています。
審議終了間近。異議のある方は fj.news.group.comp へ。
────────────────────────────────────