(FAQ)この章ではフォーラムでよく訊かれる質問をとりあげます。ここであなたの探している回答が見つからない場合はまずフォーラムで尋ねてみてください。Examples下のヘルプファイルで画像が見つからないというメッセージがでるのですが。v2.64のスクリプトはv3で動作しないのでしょうか?v3はv2.64とは異なった言語構造を持っています。AutoItの以前のバージョンはソフトウェアのインストールを手助けするためのシンプルなスクリプトを書くためにデザインされていました。AutoItは時間がたつにつれて汎用的で複雑なスクリプト処理をおこなうために使われるようになりはじめました。そのような処理は過去の文法構造でも可能でしたが非常に難しくて面倒でした。その結果、汎用的な自動化処理をおこうなうのにより適していて、より標準的でBasicライクに作られたAutoItを作成することが決定されました。v3を使うことができるということも意味しています。v3は以前のバージョンより難しいのでしょうか?そんなことはありません。実際のところ、この言語では実現不可能なことをやろうとしない限りは多くの場合で以前のバージョンよりも簡単になっています。BASICライクな言語仕様が採用されており、BASICは...ベーシックなことで有名です:)古いAutoItスクリプトの大半はソフトウェアのインストールとダイアログボックス内の大量の"Next"ボタンをクリックすることに焦点が当てられていました。このようなスクリプトのほとんどはカッコを付け加えることで簡単にv3スクリプトに変換することが可能です。ボタンをもつ複数のダイアログによるソフトウェアのインストールのシミュレーション)。全ての"文字列"をコーテーションで囲むことで、テキスト内の前後のスペースによって引き起こされる問題と格闘する必要はもはやありません。v3スクリプトを書く際に多くのことを簡単にしてくれる構文の強調表示を使用することができます。すれば私のv2.64のスクリプトをv3用に変換できますか?最初に確認しなければならないのは"自分のスクリプトを変換する必要があるか?"ということです。v2.64は今後もダウンロード可能ですし、サポートも継続されます。従って理由がない限り(あなたがそうしたいのでない限り:))、あなたのスクリプト全てをアップデートする必要はありません。ヘルプファイルにv2とv3のコマンドの関係を示した章があります。こちらをクリックしてページを参照してください。v3作成者の1人がv2のスクリプトをv3のスクリプトに自動変換してくれるユーティリティを書いています。v3をインストールしたディレクトリ)内にあります。"goto"コマンドはどこへいってしまったのですか?消えました。質問は受け付けません-悪なのです。v3の大きな特徴は"ループ"を使用できるようになったことでもはやGotoを必要としなくなったことです。ヘルプファイルを読むときにループ文、条件文、関数についての章もチェックしてください。一度コツを覚えれば事実上どのような言語でも数分でスクリプトを書くことができるようになることを約束します。mylabelこの処理のシンプルv3バージョンは常に"true"のWhileループです。すればDOSプログラムをAutoItから実行できますか?DOSの"Dir"コマンドなどを実行したい場合、コマンドインタープリタ(command.comまたはcmd.exe。OSによって異なります)を使用する必要があります。@Comspecマクロにこのファイルの正しい位置が格納されています。DOSプログラムの終了を待ってからスクリプトの次の行を実行したい場合はRunWait()関数を使用する必要があります。.txtなど他のファイルはどうすればいいのでしょうか?通常、"実行可能"であることを示す拡張子はほんのわずかです。.exe、.bat、.com、.pifがそれにあたります。.txtや.msiなどのその他のファイルタイプは実際は他のプログラムを使って実行されています。myfile.msi"の実行です。従って、.msiファイルをAutoItから実行するには次のようにしなければなりません。myfile.msi")また同じくらいシンプルな方法としては"start"コマンドの実行があります。このコマンドは自動でファイルの実行方法を判別して実行します。myfile.msi")またはShellExecuteWait関数を使用します。このコマンドは自動でファイルの実行方法を判別して実行します。ダブルコーテーション(")使用時にエラーが起きるのはなぜでしょか?文字列内でダブルコーテーションを使用したい場合、それらを"2重にする"必要があります。コーテーションを1つ使いたい場所に2つ書くのです。it!を設定したい場合は次のようにします。it!"代わりにシングルコーテーションを使う方法もあります。ウィンドウの"title"、"text"パラメータは何を意味するのでしょうか?こちらに詳細な説明があります。$variable"としても変数が表示されないのはなぜでしょうか?$msgという変数があってそれをMsgBox内に表示したい場合、次の方法ではうまくいきません。$msgと表示されてしまいます。演算子を使ってAutoItに対して文字列と変数を連結するように教える必要があります。$msg)応用:たくさんの変数を文字列内で使用したい場合、StringFormat()関数が便利です。文字列内に$var1から$var5を挿入したい場合、次のようにすると簡単です。{SPACE}などの特殊な送信文字が含まれていないかどうかということです。これらはめったに必要にならないような特殊なキーストロークに変換されます。RAWモードを使用して特殊キーの変換をおこなわないようにします。値のreturnと@errorの違いはなんでしょうか?一般的には値のreturnは関数が成功したかどうかを表すために使われます。)既になにか返している場合、関数が成功したかどうかを判別する方法が必要になります。その際、代わりに@errorを設定します。ホットキーを使用してスクリプトを終了するにはどうすればいいでしょうか?実に簡単です。関数を使用して希望のキーが押された際に実行されるユーザー関数を作成します。このユーザー関数にはExitキーワードのみを書いておきます。下記にCTRL+ALT+xが押された場合にスクリプトが終了するコードを示します。スクリプトのコンパイル時にカスタムアイコンを使用するにはどうすればいいでしょうか?(単にスクリプトを右クリックしてコンパイルを選ぶのではなく)完全なコンパイラプログラムを実行する必要があります。コンパイラの詳細について述べています。スクリプトのコピーが多重実行されていないことを保証するにはどうすればいいでしょうか?_Singleton()関数を使用してください。Functionsドキュメントを参照してください。v3の技術的な限界は?下記に現在のAutoItの技術的な限界の詳細を示します。注意してもらいたいのはこれらの限界のいくつかは理論的なものであって、実際の限界に到達する前にパフォーマンス面、メモリー面で問題が起きることがあるということです。Examples下のヘルプファイルで画像が見つからないというメッセージがでるのですが。ヘルプファイル内の例を開くためのOpenボタンのことでしょう。この問題はhhctrl.ocxが適切に登録されていないか、壊れていることで起きます。hhctrl.ocx"をおこなって登録を試みるか、ファイルが壊れていないかどうか確認してみてください。