none
RemoteAppでアプリを使用する場合、フォルダ選択ダイアログ(::SHBrowseForFolder)の新しいフォルダの作成ボタンに関する不具合について RRS feed

  • 質問

  • Windows Server TechCenterのフォーラムに同じ質問を投稿しましたが、

    フォーラムオペレーターの三沢健二さんに内容的にこちらに投稿をしてはどうかと紹介されましたので、よろしくお願いします。

    Windows Server TechCenterのフォーラムの該当質問へのリンク:

    http://social.technet.microsoft.com/Forums/ja-JP/windowsserver2008r2ja/thread/e5958466-20ba-4b58-9b96-988e89905d89?prof=required

     

    質問の詳細

    テスト環境

    サーバー:2008server r2

    クライアント:WindowsXPSP3(32bit), Windows7(32bit)共に再現

    ネットワーク:LAN,WAN共に再現

    クライアントPCからRDPファイルにてRemoteAppでアプリを起動し、フォルダ選択ダイアログ(::SHBrowseForFolder)をテスト

     

    新しいフォルダの作成ボタンで作成したフォルダをリネームするとフォルダ名が正常に変更されません。

    新しいフォルダの作成ボタンで作成したフォルダは通常リネーム可能な状態になっています。

    新しいフォルダの作成ボタン押下し、そのままリネームし、エンターキーなどで確定すると「新しいフォルダ」という名前に戻ってしまいます。

    新しいフォルダの作成ボタンを連続で実行すると、次々ツリーの下の階層にフォルダができてきますが、その場合再現しやすいように思います。

    同じアプリでも、RemoteAppではなくローカルで実行する場合再現しません。リモートデスクトップ接続でアプリを実行しても再現しません。

    関数はWindowsAPIの

    ::SHBrowseForFolder

    を使用しています。自作アプリでテストしてこの挙動に気づきました。

    WinMergeなど別のアプリでテストしても同様の現象が再現しました。

    RemoteApp特有のシェルがこの現象の原因なのではないかと疑っています。

    原因・対処・回避策を探しています。(プログラムの修正方法でもサーバーの設定でも有りです。VC++2005でお願いします。)

    「フォルダ選択ダイアログ」の左下に新規フォルダ作成ボタンがあります。

     

    フリーソフトのWinMergeでの再現方法を書きます。

    ①WinMerge Version 2.12.4.18+jp-18をインストールしRemoteAppで実行する。

    ②メニューの編集→設定を実行。

    ③オプション(システム)パネルのシステムカテゴリを選択。

    ④フィルタフォルダの参照(R)ボタンをクリック。

    ⑤リダイレクトしている、ローカルドライブ上で新しいフォルダ作成を連続でクリック

    ⑥新しいフォルダがリネーム可能(一時的なエディットボックス)状態になっているので、何か別の名前「abc」を入力。

    ⑦エンターで確定

    ⑧フォルダ名が「abc」に変更されるはずが、「新しいフォルダ」のままになっていることを確認。

     

    以上、ご教示頂けますと幸いです。

    2010年12月3日 2:46

回答

  • 確認です。

    1.CreateDirectory/SHCreateDirectory及びMoveFile/SHFileOperationの組み合わせで、現象が発生しそうなPathを指定した場合、現象が確認できるのでしょうか?(再現性が不確実とのことですので、いろいろなcaseで試したほうが良いかもしれません。)

    2.BrowseCallbackProcを指定して、現象が発生するタイミングで何かしらhintめいた情報は得られないのでしょうか?

    環境がないため私から詳しいことは言えないのですが、しばらく他の方からの回答を待ってみて回答がつかなければ、ServerやClientの設定及び確実な再現手順とともにConnectに投稿するか、Microsoftに問い合わせた方が良いかもしれません。

    2010年12月7日 22:23

すべての返信

  • 確認です。

    1.CreateDirectory/SHCreateDirectory及びMoveFile/SHFileOperationの組み合わせで、現象が発生しそうなPathを指定した場合、現象が確認できるのでしょうか?(再現性が不確実とのことですので、いろいろなcaseで試したほうが良いかもしれません。)

    2.BrowseCallbackProcを指定して、現象が発生するタイミングで何かしらhintめいた情報は得られないのでしょうか?

    環境がないため私から詳しいことは言えないのですが、しばらく他の方からの回答を待ってみて回答がつかなければ、ServerやClientの設定及び確実な再現手順とともにConnectに投稿するか、Microsoftに問い合わせた方が良いかもしれません。

    2010年12月7日 22:23
  • こんにちは、macaron0 さん。

    MSDN フォーラムのご利用ありがとうございます。オペレーターの山本です。

    しばらく時間があいてしまいましたが、その後いかがでしょうか。
    kozz さんからの情報はご確認されましたか?

    kozz さんからの情報は、問題の切り分けに有効な情報であると思われましたので、勝手ながら私のほうで回答としてマークさせていただきました。
    kozz さん、アドバイスありがとうございます。
    今後このスレッドを参照されるかたにも、参考になる情報として有効活用いただくため、解決に役立った有効な情報や参考になる情報には回答としてマークすることをお願いしています。
    ご協力のほどよろしくお願いいたします。

    もし、現在もまだ原因特定が難しいようであれば、他の方からもアドバイスいただいているように、問題の再現に必要な情報とともに、製品サポートへのお問い合わせもご検討いただいたほうがいいかもしれませんね。
    今後とも、MSDN フォーラムをよろしくお願いいたします。
                                                               
    マイクロソフト株式会社 フォーラム オペレーター 山本 春海

    2010年12月24日 2:11
    モデレータ