








|
|
 |

PERFORCEのコマンドライン・クライアントとWindowsにおけるP4EDITOR または P4DIFFの設定について
Windowsでは、P4EDITOR と P4DIFFで起動されるアプリケーションは、フォアグランド・プロセスとして実行しなければなりません。PERFORCEクライアントは、エディタまたはdiffアプリケーションに渡される一時ファイルを作成します。その後、一時ファイルの内容を取得するまで、エディタまたはdiffアプリケーションが終了するのを待ちます。
しかしながら、エディタやdiffアプリケーションによっては、自分自身をスポーンし、その処理が終了するのを待たずにPERFORCEクライアントへ復帰するものがあるかもしれません。これにより、「一時ファイルが見つからない」という内容のエラーが発生するかもしれません。
これを回避するためには、二つの方法があります。:
- 環境変数SHELLを設定しないでください。SHELLが設定されているとき、PERFORCEはコマンドプロンプトcmd.exeを使用します。設定されていなければ、WindowsのAPI関数spawn() を呼び出します。
参考:spawn() によってPERFORCEクライアントは、呼び出した別のプログラムが終了するのを待ってから、PERFORCEクライアントへ復帰します。
- DOSのバッチファイルをP4EDITOR や P4DIFFに設定してください。DOSのバッチファイルでは、コマンドライン・オプションによって、P4EDITOR や P4DIFFのプログラムが独立したプロセスをスポーンしないようにすることができます。
注意:P4EDITOR または P4DIFF環境変数が明示的に設定されていない場合、使用中のオペレーティング・システムに応じたデフォルトの動きが取られます。このデフォルトの動きに関する情報については、PERFORCEコマンド・リファレンスの環境変数のページをご覧ください。混乱を避けるためには、P4EDITOR および P4DIFF環境変数を明示的に指定することをお勧めします。
|
|