1 件の投稿を表示中 (合計 5 個)
  • 作成者
    投稿
  • #28860
    japelin
    参加者

    特定の処理で
    「ファイルは他のプログラムによって変更されています。読み直しますか?」のダイアログが表示されないケースがありますので、ご確認をお願いできますでしょうか。
    以下のコマンドdir.batとcall.batの2つで再現することが出来ます。

    指定したフォルダを右クリック→ファイルリスト等を取得して、テキストに表示する、という単純な仕組みです。
    いずれも、C:\Tempにコマンドがあるとします。

    dir.bat:ここから6行
    @echo off
    dir /s /b %1 >C:\Temp\filelist.txt
    dir /s %1 >C:\Temp\fileinfo.txt
    tree /F %1 >C:\Temp\treefile.txt
    tree %1 >C:\Temp\tree.txt
    C:\Temp\call.bat
    dir.bat:ここまで

    %APPDATA%\Microsoft\Windows\SendTo
    に上記dir.batのショートカットを置きます。

    call.bat:ここから4行
    C:\Temp\fileinfo.txt
    C:\Temp\filelist.txt
    C:\Temp\treefile.txt
    C:\Temp\tree.txt
    call.bat:ここまで

    以下、画像と再現手順を記します。
    参考画像:
    https://imgur.com/a/PsVKAtv

    再現手順:
    1.特定のフォルダを右クリックし、「送る」→「dir.bat」のショートカットを選択
    2.call.batによって4つのファイルが開かれる
    3.再度、特定のフォルダを右クリックし、「送る」→「dir.bat」のショートカットを選択
    (同じフォルダでも、別のフォルダでもどちらでもよい)
    4-6.3つのファイルだけダイアログが表示される。
    7.2つ目のファイルについては、タブでファイルをアクティブにすると、ダイアログが表示される。
    call.batで3つ以上のテキストファイルを表示する場合、順番を変えても、必ず2番めだけが上記の7の状態になります。

    使用環境はWindows10 professional 64bit
    EmEditor Professional (64-bit) Version 19.3.2
    です。

    どうぞよろしくお願いいたします。

    #28893
    Yutaka Emura
    キーマスター

    KawakamiTakahiro 様

    こちらでも手順の通り実行して再現しました。しかし、すべてのファイルについて、どこかの時点でダイアログは表示しているわけで、タイミングの問題であって、不具合とは言えないと思います。

    もしこの動作に問題があるとしたら、どのような動作にしたらいいのでしょうか?

    よろしくお願い申し上げます。

    #28899
    japelin
    参加者

    江村様

    この後いろいろ試してみたのですが、Windows側のタイミングのような感じがします。(おそらくアプリケーション側でのキャッチアップは困難)
    ファイルをアクティブにすればダイアログは表示されるので、このままでいいと思います。

    申し訳ありません、お手数をおかけしました。

    #28900
    Yutaka Emura
    キーマスター

    KawakamiTakahiro 様

    わかりました。ご報告ありがとうございます。

    EmEditor でファイルを開く際、

    C:\Temp\fileinfo.txt
    C:\Temp\filelist.txt
    C:\Temp\treefile.txt
    C:\Temp\tree.txt

    と書くと、別々のプロセスで起動されるため、タイミングが不定となります。これに代わり、

    emeditor.exe C:\Temp\fileinfo.txt C:\Temp\filelist.txt C:\Temp\treefile.txt C:\Temp\tree.txt

    というように 1 つのプロセスで起動するように書いていただければ安定すると思います。

    よろしくお願い申し上げます。

    #28904
    japelin
    参加者

    江村様

    ありがとうございます。
    txtはEmEditorに関連付けしていたためエディタを指定せずに別々のプロセスで呼んでいたのですが、
    ご提案のように
    emeditor.exe C:\Temp\fileinfo.txt C:\Temp\filelist.txt C:\Temp\treefile.txt C:\Temp\tree.txt
    としたところアクティブファイルのみのダイアログだけが表示されました。
    (開かれている非アクティブタブについてはアクティブにした時点でダイアログが表示される)

    これはファイルの読み直し(=アクティブファイルでの操作)、と考えればこの動作で期待どおりかと思います。

    だだ、もし将来的にチャンスがあれば、一気にファイル更新の確認ダイアログを表示するような動作もオプション等で選択可能にしていただけると嬉しいです。
    (上記のようにEmEditorでオープンした瞬間のみ。例えば、非アクティブのファイルに対して、他人の更新でいちいちダイアログが表示されるのは煩わしい)

    どうぞよろしくお願いいたします。

1 件の投稿を表示中 (合計 5 個)
  • このトピックに返信するにはログインしてください。