none
Windows7でのSendKeysによる半角カタカナ入力 RRS feed

  • 質問

  • 下記の現象について、原因と対策を調査しています。

    IMEの問題のようにも思いますが、
    Windows7になってから、SendKeysの動作が変わってしまったのでしょうか。

    1.現象
      SendKeysを使って、メモ帳等の別のアプリに文字列を送っています。
     WindowsXPでは問題なく動いていたのですが、Windows7で同プログラムを動かすと、
     半角カタカナの文字列がSendKeys繰り返し実行するうちに全角に変わってしまう現象
     が発生します。半角のアルファベットは問題ありません。

    2.環境
      言語:VB6
      OS:Windows7
     ※Windows7でも、VB6をサポートしているようです。

    よろしくお願いします。

    2012年5月16日 2:57

回答

  • 1.現象
      SendKeysを使って、メモ帳等の別のアプリに文字列を送っています。
     WindowsXPでは問題なく動いていたのですが、Windows7で同プログラムを動かすと、
     半角カタカナの文字列がSendKeys繰り返し実行するうちに全角に変わってしまう現象
     が発生します。半角のアルファベットは問題ありません。

    動作が変わったと言うか、IMEの状態を調べずに単純にSendKeysを使用しているのでしょうか?
    SendKeysはキーストロークを実現するだけなので、実際にはIMEの設定に影響されると思いますが。
    PCによってIMEの設定が違っていたりするはずだし。。
    半角カナを強制的に送りたいのであれば、IMEの入力モードを切り替える必要があると思います。

    IMEStatus Function (Visual Studio 6)
    http://msdn.microsoft.com/en-us/library/aa445026%28v=vs.60%29.aspx

    すでに設定してるということであれば、すみません。

    ※Windows7でも、VB6をサポートしているようです。

    いや、動作を保証してるだけで、VB6の開発環境自体のサポートは切れているんじゃなかったっけ?

    2012年5月26日 12:48

すべての返信

  • 1.現象
      SendKeysを使って、メモ帳等の別のアプリに文字列を送っています。
     WindowsXPでは問題なく動いていたのですが、Windows7で同プログラムを動かすと、
     半角カタカナの文字列がSendKeys繰り返し実行するうちに全角に変わってしまう現象
     が発生します。半角のアルファベットは問題ありません。

    動作が変わったと言うか、IMEの状態を調べずに単純にSendKeysを使用しているのでしょうか?
    SendKeysはキーストロークを実現するだけなので、実際にはIMEの設定に影響されると思いますが。
    PCによってIMEの設定が違っていたりするはずだし。。
    半角カナを強制的に送りたいのであれば、IMEの入力モードを切り替える必要があると思います。

    IMEStatus Function (Visual Studio 6)
    http://msdn.microsoft.com/en-us/library/aa445026%28v=vs.60%29.aspx

    すでに設定してるということであれば、すみません。

    ※Windows7でも、VB6をサポートしているようです。

    いや、動作を保証してるだけで、VB6の開発環境自体のサポートは切れているんじゃなかったっけ?

    2012年5月26日 12:48
  • こんにちは、oyashijimi さん。

    MSDN フォーラムのご利用ありがとうございます。オペレーターの山本です。
    しばらく経ちましたが、phoenix343 さんからの返信は確認されましたでしょうか。
    参考になる情報をいただいているように思われましたので、勝手ながら私の方で一旦回答としてマークさせていただきました。
    phoenix343 さん、情報ありがとうございます。

    oyashijimi さん、一旦回答としてマークさせていただきましたが、確認された結果などその後の状況を情報更新していただけるとうれしいです。
    今後とも、MSDN フォーラムのご利用をよろしくお願いいたします。
    ____________                                                 
    日本マイクロソフト株式会社 フォーラム オペレーター 山本 春海

    2012年6月1日 7:19
  •  Office IME 2010 を半角カタカナモードにして文字を入力し、「スペース」を打つと、全角が変換候補に挙がってきました。
    『半角カタカナの文字列がSendKeys繰り返し実行するうちに全角に変わってしまう』
    という表現が微妙で、「あいうえおかきくけこ」と入力しようとしたときに、「アイウエオカキクケコ」のように、途中から全角に変わるのか、「アイウエオカキクケコ」のようにすべて全角に変わるか、どちらにでも解釈できます。後者であれば、スペースを送信していないか、確認してはいかがでしょうか。


    Jitta@わんくま同盟

    2012年6月1日 13:29