『 @ 』が入力出来ない、SHIFT+2を押すと『 @ 』が入力される場合は、ドライバが101キーボードになっていると思われます。

Windows XP で PS/2 接続の Microsoft 日本語キーボードを使用すると、デバイス マネージャの一覧に 101/102 配列の英語キーボードとして表示される場合がある
2569052

コンピューターに USB キーボードを接続したときに Windows Vista で正しいキーボード レイアウトが使用されないことがある
927824

対処法

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\i8042prt\Parameters

上記のレジストリ値が101キーになっている場合106キーにレジストリを修正するファイルです。
ダウンロードしたファイルを解凍後、実行して下さい。
レジストリに正常に追加されたら、パソコンを再起動してください。
設定後ダウンロードしたファイルは、削除して結構です。

レジストリ修正パッチダウンロード

※ XP・Win7 動作確認済み、Vistaも対応すると思います。お約束ですが自己責任でお願いします。

レジストリをバックアップして使用してください、このファイルによるいかなる不具合も責任は負いません。

この修正を行っても直らない場合は、レジストリファイルの破損の可能性があります。

ハードディスクのチェックをおすすめします。HD Tune 日本語化