文字の入力時にusキーボード(?)として認識される

お世話になっております。

キーストロークでコマンドを実行する際に、想定している文字列が打てず、US配列として認識されているように感じます。
※具体的には*(アスタリスク)が左カッコ ( (Shift+8)として認識されるなど。

また、その不具合も毎回ではなく、半々くらいの確立です。
エラー発生後すぐにまた同じ処理をさせて成功する時もあるので、原因が特定できません。
当該の文字を変数にいれても同じ(成功と失敗が半々)で、困っています。

原因として考えられることがあれば、ご教示いただけますと幸いです。

@Moriya_akira
Windows10、7 Proでテストして見ましたが 特に問題は起こって無いのですが、テストbotは、これです、Test_keystroke.zip (595 Bytes)
テスト環境は、Windowsの言語指定は"日本語"で、入力方式は、"Microsoft IME"です、因みにRPA ExpressのVersionは2.3.1です。

萩原

1 Like

@s_hagiwara
ご確認いただいたようで、恐れ入ります。
私の環境でも"毎回同じ"とならず、原因特定ができていない状況です。
入力環境:Windows10 日本語(Microsoft IME)
因みにRPA ExpressのVersionは2.3.3ですが、2.3.1の時にも発生しておりました。
自分の環境でエラーが出たrpaeファイルはこちらです。
keystroke.zip (1.1 KB)
※環境再現のため、ファイルを削除する「del」コマンドを叩いています。

このコマンドでは、アスタリスクやアンダーバー、ダブルクオーテーションが
それぞれ左カッコ ( (Shift+8)、= (イコール)、~ (チルダ)として認識されます。

よく考えるとアスタリスクとアンダーバーはわかりますが、ダブルクオーテーションはUS配列で認識していてもチルダにはならない気がします…
一般的なUSキーボードとも違うキー配列で認識されているのでしょうか

ユーザープロファイルの環境変数が反応しないこともあり、コマンドプロントはあまり望ましい操作ではないのでしょうか
ファイル名のリネームがFileアクションで実行可能になれば、今回の要件的にはコマンドプロンプトを使用する必要もないのですが…

1 Like

Mroriya_akira様
返信有難うこざいます、送って頂いたbotで確認して見ます、何か解りましたら返信します、File名のリネームはもうご存知かと思いますが、Fileアクションでは、新しい名前のFileにコピーして元のFileを消す方法しか無いかと思われます。

萩原

1 Like

Moriya_akira様
ファイル名のリネーム用のCustom Scriptを入手しました。

import java.io.File;

@CustomScriptAction(
        input = ['file1', 'file2']
    )

def customeScript() {
 
def original_file = new File (file1.toString())
def new_file = new File (file2.toString())
original_file.renameTo(new_file);
}

オリジナルファイル名 file1とリネーム後のファイル名 file2は下記の様にvariableで与えます

テストしたbotをここに貼り付けますFile_Rename.zip (1.2 KB)

何かお役に立てれば幸いです。
萩原

3 Likes

@s_hagiwara
ありがとうございます。
カスタムスクリプトの利用も検討してみます。

2 Likes

Moriya_akira様
私はあまり詳しい人間では無いのですがKeyboardと言うより文字コードに起因していないでしょうか、Botが認識できる文字コードはUTF-8の様です、何か参考になれば良いのですが。

萩原

2 Likes

なんともそれっぽいですね。。。
発生環境がコマンドプロンプトである以上、規定の文字コードがShift-JISであることが悪さをしていそうです。

なぜ「たまにダメ」なのかはやはりわかりませんが、UTF-8に設定してコマンドを実施してみます。
ありがとうございました。

2 Likes